对象存储、块存储、文件存储到底是什么
分布式存储的应用场景相对于其存储接口,现在流行分为三种:
-
对象存储: 也就是通常意义的键值存储,其接口就是简单的GET、PUT、DEL和其他扩展,如七牛、又拍、Swift、S3
-
块存储: 这种接口通常以QEMU Driver或者Kernel Module的方式存在,这种接口需要实现Linux的Block Device的接口或者QEMU提供的Block Driver接口,如Sheepdog,AWS的EBS,青云的云硬盘和阿里云的盘古系统,还有Ceph的RBD(RBD是Ceph面向块存储的接口)
-
文件存储: 通常意义是支持POSIX接口,它跟传统的文件系统如Ext4是一个类型的,但区别在于分布式存储提供了并行化的能力,如Ceph的CephFS(CephFS是Ceph面向文件存储的接口),但是有时候又会把GFS,HDFS这种非POSIX接口的类文件存储接口归入此类。
翻译一下:
块存储给你就是一块未格式化的硬盘分区。文件存储就是给你一个格式化过的硬盘分区(可能是本地也可以是网络上的)。 对象存储给你的是一个存非结构化数据键值数据库。
引用https://www.infoq.cn/article/virtual-forum-three-basic-issues-about-distributed-storage/