这些常见的分布式存储系统,你是否都了解?
来源 | 清平の乐
来源 | CSDN博客,责编 | Carol
头图 | CSDN 下载自视觉中国
一、数据存储类型
一般情况下,我们将存储分成了4种类型,基于本机的DAS和网络的NAS存储、SAN存储、对象存储。对象存储是SAN存储和NAS存储结合后的产物,汲取了SAN存储和NAS存储的优点。
1.DAS
DAS将计算、存储能力一把抓,封装在一个服务器里。大家日常用的电脑,就是一个DAS系统。
2.NAS
如果将计算和存储分离了,存储成为一个独立的设备,并且存储有自己的文件系统,可以自己管理数据,就是NAS。所以NAS存储可以被不同的主机共享。服务器只要提需求,不需要进行大量的计算,将很多工作交给了存储完成,省下的CPU资源可以干更多服务器想干的事情,即计算密集型适合使用NAS。
3.NAS
计算和存储分离了,存储成为一个独立的设备,存储只是接受命令不再做复杂的计算,只干读取或者写入文件2件事情,叫SAN。
因为不带文件系统,所以也叫“裸存储”,有些应用就需要裸设备,如数据库。存储只接受简单明了的命令,其他复杂的事情,有服务器端干了。再配合FC网络,这种存储数据读取/写入的速度很高。
但是每个服务器都有自己的文件系统进行管理,对于存储来说是不挑食的只要来数据我就存,不需要知道来的是什么,不管是英语还是法语,都忠实记录下来的。但是只有懂英语的才能看懂英语的数据,懂法语的看懂法语的数据。所以,一般服务器和SAN存储区域是一夫一妻制的,SAN的共享性不好。当然,有些装了集群文件系统的主机是可以共享同一个存储区域的。
4.对象存储
对象存储大量使用在互联网上,大家使用的网盘就是典型的对象存储。对象存储有很好的扩展性,可以线性扩容。并可以通过接口封装,还可以提供NAS存储服务和SAN存储服务。
VMware的vSAN本质就是一个对象存储。
二、分布式存储系统
普通存储方案:Rsync、DAS(IDE/SATA/SAS/SCSI等块)、NAS(NFS、CIFS、SAMBA等文件系统)、SAN(FibreChannel, iSCSI, FoE存储网络块),Openfiler、FreeNas(ZFS快照复制)由于生产环境中往往由于对存储数据量很大,而SAN存储价格又比较昂贵,因此大多会选择分布式存储
GFS、HDFS、Lustre 、Ceph 、GridFS 、mogileFS、TFS、FastDFS等。各自适用于不同的领域。它们都不是系统级的分布式文件系统,而是应用级的分布式文件存储服务。
TFS
TFS(Taobao File System)是由淘宝开发的一个分布式文件系统,其内部经过特殊的优化处理,适用于海量的小文件存储,主要针对海量的非结构化数据,它构筑在普通的Linux机器 集群上,可为外部提供高可靠和高并发的存储访问。目前已经对外开源;
TFS采用自有的文件系统格式存储,因此需要专用的API接口去访问,目前官方提供的客户端版本有:C++/JAVA/PHP。
FastDFS
FastDFS是国人开发的一款分布式文件系统,目前社区比较活跃。如上图所示系统中存在三种节点:Client、Tracker、Storage,在底层存储上通过逻辑的分组概念,使得通过在同组内配置多个Storage,从而实现软RAID10,提升并发IO的性能、简单负载均衡及数据的冗余备份;同时通过线性的添加新的逻辑存储组,从容实现存储容量的线性扩容。
文件下载上,除了支持通过API方式,目前还提供了apache和nginx的插件支持,同时也可以不使用对应的插件,直接以Web静态资源方式对外提供下载。
目前FastDFS(V4.x)代码量大概6w多行,内部的网络模型使用比较成熟的libevent三方库,具备高并发的处理能力。
操作和部署过程:https://www.jianshu.com/p/b7c330a87855
HDFS
Hadoop 实现了一个分布式文件系统(Hadoop Distributed File System),简称HDFS。Hadoop是Apache Lucene创始人Doug Cutting开发的使用广泛的文本搜索库。它起源于Apache Nutch,
后者是一个开源的网络搜索引擎,本身也是Luene项目的一部分。Aapche Hadoop架构是MapReduce算法的一种开源应用,是Google开创其帝国的重要基石。
GFS(Google File System)
Google公司为了满足本公司需求而开发的基于Linux的专有分布式文件系统。尽管Google公布了该系统的一些技术细节,但Google并没有将该系统的软件部分作为开源软件发布。
原文:https://blog.csdn.net/ZZQHELLO2018/article/details/105660628
推荐阅读
一文带你认识keepalived,再带你通关LVS+Keepalived!
那个分分钟处理 10 亿节点图计算的 Plato,现在怎么样了?
“谷歌杀手”发明者,科学天才 Wolfram
数据库激荡 40 年,深入解析 PostgreSQL、NewSQL 演进历程
超详细!一文告诉你 SparkStreaming 如何整合 Kafka !附代码可实践
5分钟!就能学会以太坊 JSON API 基础知识!
真香,朕在看了!
这些常见的分布式存储系统,你是否都了解?相关推荐
- 常见开源分布式存储系统
对比说明 /文件系统 TFS FastDFS MogileFS MooseFS GlusterFS Ceph 开发语言 C++ C Perl C C C++ 开源协议 GPL V2 GPL V3 GP ...
- 浅谈分布式存储系统数据分布算法
目录 前言 指标 演进 应用案例 前言 分布式存储系统面临着的首要问题,就是如何将大量的数据分布在不同的存储节点上.无论上层接口是 KV存储.对象存储.块存储.亦或是列存储,在这个问题上大体是一致的. ...
- 浅谈分布式存储系统的数据分布算法
前言 分布式存储系统 面临着的首要问题,就是如何将 大量的数据 分布在 不同的存储节点 上.无论上层接口是 KV 存储.对象存储.块存储.亦或是 列存储,在这个问题上大体是一致的.本文将介绍如何 分布 ...
- 大规模分布式存储系统 - 读书笔记
文章目录 大规模分布式存储系统(原理解析与架构实战OceanBase) 第1章 概述 1.1 分布式存储概述 1.2 分布式存储分类 第一篇 基础篇 第2章 单机存储系统 2.1 硬件基础 2.1.1 ...
- 腾讯CKV海量分布式存储系统
摘要:腾讯CKV,是腾讯自主研发的高性能.低延时.持久化.分布式KV存储服务.在腾讯的微信平台.开放平台.腾讯云.腾讯游戏和电商平台广泛使用,日访问量超过万亿次.本文将全面剖析CKV的实现原理和技术挑 ...
- 性能 1.84 倍于 Ceph!网易数帆开源分布式存储系统 Curve
作者 | 陈利鑫 头图 | CSDN 下载自东方 IC 出品 | CSDN(ID:CSDNnews) 也许是厂家+"云"的后缀会让人产生这些厂商都是竞争关系的错觉,网易云最近宣布品 ...
- GlusterFS分布式存储系统
GlusterFS分布式存储系统 一,分布式文件系统理论基础 1.1 分布式文件系统出现 计算机通过文件系统管理,存储数据,而现在数据信息爆炸的时代中人们可以获取的数据成指数倍的增长,单纯通过增加硬盘 ...
- Ceph-deploy 搭建Ceph分布式存储系统
Ceph-deploy 搭建Ceph分布式存储系统 Ceph版本为mimic Ceph-deploy版本为2.0.1 环境准备 安装Ceph-deploy管理节点 (在管理节点上)添加Ceph仓库到C ...
- 常见的分布式文件系统介绍
常见的分布式文件系统有GFS.HDFS.Lustre .Ceph .GridFS .mogileFS.TFS.FastDFS等.各自适用于不同的领域.它们都不是系统级的分布式文件系统,而是应用级的分布 ...
最新文章
- python语言能做什么软件-python语言能做什么?
- Linux 分析工具--性能
- 4、提高插入数据的速度
- 大数据WEB阶段(八)Tomcat服务器安装与详解、HTTP协议详解
- idea中修改jsp文件不用再重启tomcat的方法
- HDOJ 4876 ZCC loves cards
- php把数字倒着展示,jQuery+PHP实现动态数字展示特效
- Html5结合JS实现浏览器全屏功能
- android 进程管理机制,Android的进程管理机制
- android外置sd大小,android 读取外置和内置存储卡路径和大小
- Android 编程下将 Bitmap 转为 InputStream
- android api (82) —— InputConnection [输入法]
- 谷歌助手现可预测航班延误情况并推送建议
- 基于单片机的HC-SR04超声波模块测距仪设计(数码管显示)
- word制作多个单位联合发文的文件头
- Java8的其它 新特性(笔记二十四)
- 《Effective Java》读书笔记五(枚举和注解)
- ftp、sftp利用bat脚本自动下载以及上传文件
- 面向对象以及三大特性
- 聚苯乙烯微球为成孔模板制备多孔PI/HMSNs复合膜/交联氨基聚苯乙烯微球/羧基聚苯乙烯微球
热门文章
- 计算机网络 --- 网络层IP数据报
- php添加填空,PHP之preg_replace_callback(),将填空题的[[]]替换成______
- php抓取页面生成html,PHP smiple html dom抓取页面内容
- java 堆 是用_Java8元空间和堆使用
- mysql崩溃_mysql崩溃原因分析
- 苹果双系统运行oracle失败,oracle 11gR2 RAC for linux x86_64 grid运行root.sh 失败问题处理...
- 啊这,C++现在学还来的及吗?
- 这么多两院院士竟然来自同一个家族!
- 配置过程中的一些问题
- 利用Mybatis写第一个数据库操作的程序