块存储、文件存储、对象存储的区别与联系.docx

上传人:王** 文档编号:1428823 上传时间:2024-07-08 格式:DOCX 页数:11 大小:143.69KB
下载 相关 举报
块存储、文件存储、对象存储的区别与联系.docx_第1页
第1页 / 共11页
块存储、文件存储、对象存储的区别与联系.docx_第2页
第2页 / 共11页
块存储、文件存储、对象存储的区别与联系.docx_第3页
第3页 / 共11页
块存储、文件存储、对象存储的区别与联系.docx_第4页
第4页 / 共11页
块存储、文件存储、对象存储的区别与联系.docx_第5页
第5页 / 共11页
块存储、文件存储、对象存储的区别与联系.docx_第6页
第6页 / 共11页
块存储、文件存储、对象存储的区别与联系.docx_第7页
第7页 / 共11页
块存储、文件存储、对象存储的区别与联系.docx_第8页
第8页 / 共11页
块存储、文件存储、对象存储的区别与联系.docx_第9页
第9页 / 共11页
块存储、文件存储、对象存储的区别与联系.docx_第10页
第10页 / 共11页
亲,该文档总共11页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《块存储、文件存储、对象存储的区别与联系.docx》由会员分享,可在线阅读,更多相关《块存储、文件存储、对象存储的区别与联系.docx(11页珍藏版)》请在优知文库上搜索。

1、为了克服上述文件无法共享的问题,所以有了文件存储.文件存储也有软硬一体化的设备,但是其实普通全一台服务器/笔记本,只要装上合适的操作系统与软件,就可以架设FTP与NFS服务了,架上该类服务之后的服务器,就是文件存储的一种了。主机A可以直接对文件存储进行文件的上传下载,与块存储不同,主机A是不需要再对文件存储进行格式化的,因为文件管理功能已经由文件存储自己搞定了。优点:1、造价较低:随便一台机器就可以了,另外普通以太网就可以,根本不需要专用的SAN网络,所以造价低.2、方便文件共享:例如主机A(WIN,NTFS文件系统),主机B(1.inux,EXT4文件系统),想互拷一部电影,本来不行.加了个

2、主机C(NFS服务器),然后可以先A拷到C,再C拷到B就OK了。(例子比较肤浅,请见谅)缺点:读写速率低,传输速率慢:以太网,上传下载速度较慢,另外所有读写都要1台服务器里面的硬盘来承担,相比起磁盘阵列动不动就几十上百块硬盘同时读写,速率慢了许多.3、对象存储典型设备:内置大容量硬盘的分布式服务器文件存储(NAS)相对来说就更能兼顾多个应用和更多用户访问,同时提供方便的数据共享手段.毕竟大部分的用户数据都是以文件的形式存放,在PC时代,数据共享也大多是用文件的形式,比如常见的的FTP服务,NFS服务,Samba共享这些都是属于典型的文件存储.几十个用户层至上百用户的文件存楮共享访问都可以用NA

3、S存储加以解决。在中小企业市场,一两台NAS存慵设备就能支撑整个IT部门了.CRM系统,SCM系统,OA系统,邮件系统都可以使用NAS存储统统搞定。甚至在公有云发展的早几年,用户规模没有上来时,云存储的底层硬件也有用几套NAS存储设备就解决的,甚至云主机的跪像也有放在NAS存储上的例子.文件存储的广泛兼容性和易用性,是这类存储的突出特点.但是从性能上来看,相对SAN就要低一些.NAS存储基本上是以太网访问模式,普通千兆网,走NFS/CIFS协议.(这方面的扫盲可以想想12306).归档类应用只是数据量大的冷数据,并发访问的需求倒是不太突出.另外基于移动端的一些新兴应用也是适合的,智能手机和移动

4、互联网普及的情况下,所谓UGD(用户产生的数据,手机的照片视频)总量和用户数都是很大挑战.毕竟直接使用HTTPget/put就能直接实现数据存取,对移动应用来说还是有一定吸引力的.对象存储的访问通常是在互联网,走HTTP协议,性能方面,单独看一个连接的是不高的(还要解决掉线断点续传之类的可靠性问题),主要强大的地方是支持的并发数量,聚合起来的性能带宽就非常可观了.从产品形态上来看,块存储和文件存储都是成熟产品,各种规格形态的硬件已经是琳琅满目了。但是对象存储通启你看到都是一堆服务器或者增强型服务器,毕克这东西现在还是互联网行业用得多点,DIY风格.关于性能容昆等方面,我做了个图,对三种存储做直

5、观对比.块存储就像超跑,根本不在意能不能多载几个人,要的就是极限速度和高速下的稳定性和可定性,各大厂商出新产品都要去纽北赛道刷个单圈最快纪录,千方百计就为提高一两秒,跑不进7分以内都看不到前三名.(块存储容量也不大,TB这个数量级,支持的应用和适用的环境也比较专业(FC+0rade),在乎的都是IOPS的性能值,厂商出新产品也都想去刷个SPC-I,测得好的得意洋洋,测得不好自动忽略.)文件存储像集卡,普适各种场合,又能装数据(数百TB),而且兼容性好,只要你是文件,各种货物都能往里塞,在不超过性能载荷的前提下,能拉动常见的各种系统.标准POXIS接口,后车门打开就能装卸.卡车也不挑路,不像块存

6、储非要上赛道才能开,普通的千兆公路就能畅通无阻.速度虽然没有块存储超跑那么块,但跑个80/100码还是稳稳当当.而对象存储就像海运货轮,应对的是真海量”,几十上百PB的数据,以集装箱/container(桶/bucket)为单位码得整整齐齐,里面装满各种对象数据,十万客户发的货(数据),一条船就都处理得过来,按照键值(KeyVauIe)记得清清楚楚.海运速度慢是慢点,有时候遇到点网络风昼还不椅定,但支持断点续传,最终还是能安全送达的,对大宗货物尤其是非结构化数据,整体上来看是最快捷便利的.从访问方式来说,块存储通常都是通过光纤网络连接,服务器/小机上配置FC光纤HBA卡,通过光纤交换机连接存储

7、(IPSAN可以通过千兆以太网,以iSCSI客户端连接存储),主机端以逻辑卷(VOIUme)的方式访问.连接成功后,应用访问存储是按起始地址,偏移量OffSet的方法来访问的.而NAS文件存储通常只要是局域网内,千兆/百兆的以太网环境皆可.网线连上,服务器端通过操作系统内置的NAS客户端,如NFS/CIFS/FTP客户端挂载存储成为一个本地的文件夹后访问,只要符合PoXIS标准,应用就可以用标准的OPen.seek,writeread,close这些方法对其访问操作.对象存储不在乎网络,而且它的访问比较有特色,只能存取珊(put/get/delete).不能打开修改存盘.只能取下来改好后上传,

8、去覆盖原对釜.(因为中间是不可靠的互联网啊,不能保证你在修改时候不掉线啊。所谓你在这头,对象在那头,所爱对蕊隔山海,山海不可平.)另外再说一点分布式存储的问题,以上三种存储都可以和分布式概念结合,成为分布式文件系统,分布式块存慵,还有天生分布式的对象存储.对象存储的定义就把元数据管理和数据存储访问分开在不同的节点上,买个节点应对多并发的访问,这自然就是一个分布式的存储产品。而分布式文件系统就很多了,各种开源闭源的产品数得出几十个,在不同的领域各有应用.至于分布式的块存储产品就比较少,也很难做好。我个人认为这个产品形态有点违和,分布式的思想和块存储的设计追求其实是冲突的.前面讲过,块存储主要是图

9、快,一上分布式肯定严点拖后腿,既然都分布开了,节点之间的通信必然增加额外负担,再加上CAP,为了保持一致性牺牲响应速度,得到的好处就是扩展性.这就像把超跑弄个铁索连环,哪里还可能跑出高速?链条比车都蚕了,穿起来当火车开吗?而文件存储原来也就是柒装箱货乍,大家连起来扮火车.还是有可行性的。三、块存储、文件存储、对象存储的层次关系应用的角度聊过了,我们再看看这三种存储的一些技术细节,首先看看在系统层级的分布.APP应用系统应用ObjectStorageDevice%撼FxRle1.V(logicVOlUne)培,VG(VolmeGroup)将组PV(PhySiCalVOlUme用!用5DG(Dis

10、kGrouo)RAID我们从底层往上看,最底层就是硬盘,多个硬盘可以做成RAID组,无论是单个硬盘还是RAID组,都可以做成PV,多个PV物理卷捏在一起构成VG卷组,这就做成一块大蛋糕了。接下来,可以从蛋糕上切下很多块1.V逻辑卷,这就到了存储用户最熟悉的卷这展.到这一层为止,数据一直都是以Bl。Ck块的形式存在的,这时候提供出来的服务就是块存储服务。你可以通过FC协议或者iSCSI协议对卷访问,映射到主机端本地,成为一个裸设备.在主机端可以直接在上面安装数据库,也可以格式化成文件系统后交给应用程序使用,这时候就是一个标准的SAN存储设备的访问模式,网络间传送的是块,如果不急若访问,也可以在本

11、地做文件系统,之后以NFS/CIFS协议挂载,映射到本地目录,直接以文件形式访问,这就成了NAS访问的模式,在网络间传送的是文件.如果不走NAS在本地文件系统上面部署OSD服务端把整个设备做成一个OSDr这样的节点多来几个,再加上必要的MDS节点,互联网另一端的应用程序再通过HTTP协议亘接进行访问,这就变成了对象存储的访问模式。当然对象存储通常不需要专业的存储设备,前面那些1.V/VG/PV层也可以统统不要,直接在硬盘上做本地文件系统,之后再做成OSD,这种才是对象存储的标准模式,对象存储的硬件设备通常就用大盘位的服务器.从系统展级上来说,这三种存储是按照块-文件-对演逐级向上的.文件一定是

12、基于块上面去做,不管是远端还是本地。而对象存储的底层或者说后端存储通常是基于一个本地文件系统(XFSExt4.).这样做是比较合理联畅的架构.但是大家想法很多,还有各种特异的产品出现,我们逐个来看看:对象存储除了基于文件,可以直接基于块,但是做这个实现的很少,毕竟你还是得把文件系统的活给干了,自己实现一套元数据管理,也挺麻烦的.另外对象存储还能基于对象存储,这就有点尴尬了,就是转一下,何必呢?但是这都不凭最奇怪的,最奇怪的是把对象存储放在最底展,那就是这两年大红的Ceph.系统应用DB本地F3应用ClientRAWdev.Etk八MGW1.ibRADOSRBD块RADOSCePh是个开源的分布

13、式存储,相信类似的架构图大家都见过,我把底层细节也画出来,方便分析.底层是RADOS,这是个标准的对象存储。以RADOS为基础,Ceph能够提供文件,块和对象三种存储服务.其中通过RBD提供出来的块存储是比较有价俏的地方,毕竟因为市面上开源的分布式块存储少见嘛(以前倒是有个sheepdog,但是现在不当红了).当然它也通过CephFS模块和相应的私有Client提供了文件服务,这也是很多人认为CePh是个文件系统的原因.另外它自己原生的对象存储可以通过RadosGW存储网关模块向外提供对象存储服务,并且和对象存储的事实标准AmazonS3以及Swift兼容.所以能看出来这其实是个大一统解决方案

14、,啥都齐全。上面讲的大家或多或少都有所了解但底层的RADOS的细节可能会忽略,RADOS也是个标准对象存储,里面也有MDS的元数据管理和OSD的数据存储,而OSD本身是可以基于一个本地文件系统的,比如XFSEXT4Brtfs,在早期版本,你在部署Ceph的时候,是不是要给OSD创建数据目录啊?这一步其实就已经在本地文件系统上做麋作了(现在的版本Ceph可以直接使用硬盘).现在我们来看数据访问路径,如果看Ceph的文件接口,自底层向上,经过了硬盘(块)文件-对象-文件的路径;如果看RBD的块存储服务,则经过了理盘(块)-文件-对象-块,也可能是硬盘(块)-对釜-块的路径;再看看对象接口(虽然用的

15、不多),则是经过了硬盘(块)-文件-对象或者硬盘(块)对象的路径.虽说现在大冢都这么随便结合,但是这三种存储本质上还是有不同的,我们回到计凭机的基础课程,从数据结构来看,这三种存储有着根本不同.块存储的数据结构是数组,而文件存储是二叉树(B,B-,B+,B*各种树),对象存催基本上都是哈希表.数组和二叉树都是老生常谈,没有太多值得说的,而对象存储使用的哈希表也就是常听说的椎值(KeyVauIe型)存储的核心数据结构,每个对象找一个UlD(所谓的键KEY),凭哈希值(所谓的“值VaUle)以后和目标对应.找了一个哈希表例子如下:关键字内部编诗内部第码的不方ISH(Ic)关位字的哈语她址KEYA110502011221577783551778KYAB11250102126564795010404795AKEY01110525001233265775625265BKEY02110525004454315775625315键值对应关系简单粗履,毕竟算个hash值是很快的,这种璐平化组织形式可以做得非常大,避免了二叉树的深度,对于真海员的数据存储和大规模访问都能给力支持.所以不仅是对蕊存储,很多N。SQ1.的分布式数据库都会使用它.眼便说一句,这类NoSQ1.的出现有点打破了数据库和文件存储的天然屏障,原本关系数据库里面是不会存放太大的数据的,但

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > IT计算机 > 存储

copyright@ 2008-2023 yzwku网站版权所有

经营许可证编号:宁ICP备2022001189号-2

本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!