Ceph分布式存储系列(六):对象存储、块存储、文件存储的区别和优缺点

承接上文Ceph分布式存储系列(一):Ceph工作原理及架构浅析梳理

分布式存储总体分为对象、块、文件三种存储类型,且ceph同时支持这三种存储类型,那么这里再简单谈一下三种存储类型的差异点及各自优势和适用环境。

回顾存储史 之 三种传统的存储架构:

了解三种存储类型之前,先来回顾下传统以来的 三种存储架构:

  • DAS(Direct Attached Storage) 传统的直连式存储,硬盘等物理存储与设备直连的方式,如个人电脑,普通服务器等
    • 连接方式:客户端 - - 物理硬盘
  • SAN(Network Attached Storage): 网络附加存储,后端存放大量的硬盘,通过用FC_SAN协议或者IP_SAN协议连接服务器的一种方式,客户端挂载后端存储服务器共享的卷,用来当做裸盘,格式化使用,成本高
    • 连接方式:客户端 - - FC光纤交换机 - - 存储服务器(默认模式为FC_SAN)
    • 连接方式:客户端 - - 网络交换机 - - 存储服务器(基于iscsi协议的IP_SAN模式,成本较低)
  • NAS(Storage Area Network): 存储区域网络,通过nfs或smb等协议共享目录的方式,可以理解为Windows中的共享文件夹,不能当做裸设备来用,可直接挂载使用,成本较低
    • 连接方式:客户端 - - 网络交换机 - - 存储服务器

三种存储类型的原理 和 传统存储架构的关系

  • 块存储: 通俗来讲,单个硬盘或单个分区,可以支持单独格式化和挂载的块,即为块存储,例如lvm划分逻辑卷,ceph的创建rbd卷等,分区挂载等操作和本地硬盘设备没有什么区别,在传统存储架构中,DAS和SAN都算块存储的范畴
  • 文件存储: NAS就相同于文件存储,通过共享目录(文件夹)的方式,实现可以让多人操作的目的,大多数使用NFS、Samba等协议。因服务端共享的是文件夹,所以客户端就无需也不能再做格式化或者分区的操作,对客户端来说这只是一个远端的可存放数据的地方
  • 对象存储: 不同于传统架构的一种新型存储类型,扁平化结构,不需要去维护复杂的文件目录。用户数据存取方便,通过常用的S3协议,可通过URL来访问一个空间及其中的文件,适用于智能视频监控、web类应用等等

三种存储方式的各自优缺点:

块存储:

主要是将一个裸磁盘空间(没有格式化文件系统的盘)映射给主机适用

优点:

  1. 使用磁盘映射,如RAID/LVM的方式提供磁盘空间给主机使用,进一步维护了数据的安全性
  2. 因为是多块磁盘组合而成的逻辑盘空间,所以多块盘可以并行执行读写操作,提升IO效率
  3. 很多大型企业或数据中心使用SAN架构组网,数据传输速度和读写效率进一步得到提升

缺点:

  1. 如果采取FC_SAN的方式,需要HBA光纤通道卡和光纤交换机,成本较高
  2. 不利于不同操作系统主机间的数据共享,例如Linux主机把盘给格式化为ext4格式,那么在Windows中对这个盘的操作使用就不太友好了,或者无法操作
文件存储:

为了文件共享而诞生的存储类型,如FTP、NFS、Samba

优点:

  1. 成本低,随便一台服务器都可以来搭建
  2. 方便于公司内部的文件共享,内网云盘共享一些资料等等

缺点:

  1. 受网络带宽影响,读写效率慢,传输速率稍低
  2. 所有客户端的读写操作都汇总到一台服务器中,一块或多块硬盘承担IO,压力大,速率稍低
对象存储:

结合了块存储和文件存储的优点,读写效率快,还支持共享

优点:

  1. 后端使用大量硬盘组,且不受复杂目录系统影响,达到高水平的读写效率
  2. 集群可扩展性强,且支持多副本存储,保证数据安全性
  3. 通过URL直接访问存储文件,简单易管理

缺点:

  1. 不适合存放内容变动性大的文件,不然每次变动都要重新更新上传对象,适合放静态的图片镜像等非结构性的文件
  2. 不太适合作为数据库存储数据使用
  3. 操作系统无法像常规磁盘一样安装或挂载对象存储

三种存储类型的适用环境

  • 块存储:适用于存储量大,对读写效率要求高,且存储设备单独区域管理的企业,如银行等,多用来存放数据库数据信息
  • 文件存储:适用于需要访问和共享大量文件,且操作方便的企业环境
  • 对象存储:适用于搭建公有云或私有云盘,存放非结构化的大量静态文件

各有各的优势,无优劣之分,根据不同的场景选择不同的产品即可~

End……

你可能感兴趣的:(Ceph,服务器,分布式存储,ceph,运维)