对象存储,文件存储,块存储 - Go语言中文社区

对象存储,文件存储,块存储


存储产品按类型分主要有这三种:块存储,文件存储,对象存储

块存储是将裸磁盘直接映射给主机使用,性能好

文件存储通过在一台设备上部署NFSFTP服务,通过以太网对外提供存储服务,无需格式化,文件管理功能由文件存储自身负责

典型设备:块存储:磁盘阵列,硬盘,虚拟硬盘;文件存储:FTPNFS服务器,Samba;对象存储:内置大容量硬盘的分布式服务器,S3OSSKS3

块存储:性能好,不能共享

文件存储:支持共享,性能差

对象存储:支持共享,性能较好,低成本存储海量数据,实现难度大


我认为存储可以分为对象存储,走http协议,文件存储,在tcpip之上可以自选协议-ftp等,块存储,走scsi负责帮忙管理磁盘。

虽然老板把这三种存储的分层是 对象存储,块存储,文件存储,是根据数据模型划分的。我认为出现这种差异的原因,是因为,是使用者的角度还是开发者的角度,使用者的角度,我只需要给我提供块就行-scsi之上的东西我自己做-块存储,我需要提供块和之上的文件系统,我只需要使用现成的文件系统-文件存储,我只需要存储数据-http协议之上的东西我自己做-对象存储。

使用者认为,用户眼中,你提供的就是一个应用,你就是卖颗粒的,我只需要http协议,后面的都是黑盒,我不关心你使用的文件系统,和存储的硬盘;开发者需要做一个卖磁盘的系统。

你是卖磁盘的,用户眼中,你提供的就是一个磁盘,iscsi(tcp、ip之上的协议)后面的都是黑盒,不关心os和磁盘。

你是卖文件系统的,用户眼中,你提供的就是一个文件系统,不关心你有多少个磁盘。

开发者的角度,使用块存储-我可以通过内核之上的tcp、ip去帮你管理块,对象存储-我可以在内核加http协议之上,介入数据,帮你管理对象,文件存储-我可以通过修改内核的文件系统模块,去帮你管理之下的所有东西。也就是说,开发基于http还是os,都是应用层的,高度不同,而文件系统,则是内核层的改动。done~这段是我的认识。


后又问了组长,基本上是对象存储,之上是块存储,然后是文件存储。

版权声明:本文来源CSDN,感谢博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/u013755520/article/details/99726656
站方申明:本站部分内容来自社区用户分享,若涉及侵权,请联系站方删除。
  • 发表于 2019-08-27 16:35:44
  • 阅读 ( 1165 )
  • 分类:

0 条评论

请先 登录 后评论

官方社群

GO教程

推荐文章

猜你喜欢