从产品形态上来看,块存储和文件存储都是成熟产品,各种规格形态的硬件已经是琳琅满目了 。但是对象存储通常你看到都是一堆服务器或者增强型服务器,毕竟这东西现在还是互联网行业用得多点,DIY风格 。
关于性能容量等方面,我做了个图,对三种存储做直观对比 。
块存储就像超跑,根本不在意能不能多载几个人,要的就是极限速度和高速下的稳定性和可靠性,各大厂商出新产品都要去纽北赛道刷个单圈最快纪录,千方百计就为提高一两秒,跑不进7分以内都看不到前三名 。(块存储容量也不大,TB这个数量级,支持的应用和适用的环境也比较专业(FC+Oracle),在乎的都是IOPS的性能值,厂商出新产品也都想去刷个SPC-1,测得好的得意洋洋,测得不好自动忽略 。)
文件存储像集卡,普适各种场合,又能装数据(数百TB),而且兼容性好,只要你是文件,各种货物都能往里塞,在不超过性能载荷的前提下,能拉动常见的各种系统 。标准POXIS接口,后车门打开就能装卸 。卡车也不挑路,不像块存储非要上赛道才能开,普通的千兆公路就能畅通无阻 。速度虽然没有块存储超跑那么块,但跑个80/100码还是稳稳当当.
而对象存储就像海运货轮,应对的是”真·海量”,几十上百PB的数据,以集装箱/container(桶/bucket)为单位码得整整齐齐,里面装满各种对象数据,十万客户发的货(数据),一条船就都处理得过来,按照键值(KeyVaule)记得清清楚楚 。海运速度慢是慢点,有时候遇到点网络风暴还不稳定,但支持断点续传,最终还是能安全送达的,对大宗货物尤其是非结构化数据,整体上来看是最快捷便利的 。
从访问方式来说,块存储通常都是通过光纤网络连接,服务器/小机上配置FC光纤HBA卡,通过光纤交换机连接存储(IP SAN可以通过千兆以太网,以iSCSI客户端连接存储),主机端以逻辑卷(Volume)的方式访问 。连接成功后,应用访问存储是按起始地址,偏移量Offset的方法来访问的 。
而NAS文件存储通常只要是局域网内,千兆/百兆的以太网环境皆可 。网线连上,服务器端通过操作系统内置的NAS客户端,如NFS/CIFS/FTP客户端挂载存储成为一个本地的文件夹后访问,只要符合POXIS标准,应用就可以用标准的open,seek, write/read,close这些方法对其访问操作 。
对象存储不在乎网络,而且它的访问比较有特色,只能存取删(put/get/delete),不能打开修改存盘 。只能取下来改好后上传,去覆盖原对象 。(因为中间是不可靠的互联网啊,不能保证你在修改时候不掉线啊 。所谓你在这头,对象在那头,所爱对象隔山海,山海不可平 。)
另外再说一点分布式存储的问题,以上三种存储都可以和分布式概念结合,成为分布式文件系统,分布式块存储,还有天生分布式的对象存储 。
对象存储的定义就把元数据管理和数据存储访问分开在不同的节点上,多个节点应对多并发的访问,这自然就是一个分布式的存储产品 。而分布式文件系统就很多了,各种开源闭源的产品数得出几十个,在不同的领域各有应用 。至于分布式的块存储产品就比较少,也很难做好 。我个人认为这个产品形态有点违和,分布式的思想和块存储的设计追求其实是冲突的 。前面讲过,块存储主要是图快,一上分布式肯定严重拖后腿,既然都分布开了,节点之间的通信必然增加额外负担,再加上CAP,为了保持一致性牺牲响应速度,得到的好处就是扩展性 。这就像把超跑弄个铁索连环,哪里还可能跑出高速?链条比车都重了,穿起来当火车开吗?
推荐阅读
- 在存储器的层次结构里谁最快,谁最贵,谁最大?
- 防火墙是被动还是主动
- 社工行业有前景 市场前景
- idc,premier
- 苹果电脑怎么开机?
- #2019新品发布会#与坚果的四年
- iPhone4怎么刷机?
- itunes怎么设置备份?
- ipad功能介绍。
- 苹果6s现在多少钱