分布式存储Ceph技术

  • Ceph简介

 

  • Ceph架构

  • Ceph的基本组件

  • Ceph结构

  • Ceph存储种类及其应用场景

块存储

文件存储

对象存储

  • Ceph工作原理

无论采用哪种存储方式(对象,块,挂载),存储的数据都会被分成对象(Object),Object size大小可以由管理员调整,通常为2M或4M,每个对象都有一个唯一的oid,由ino与non组成,ino是文件的file id,用于在全局唯一标识每一个文件,non是分片的编号,比如:一个文件fileId为A,他被切成了两个对象,一个对象编号0,一个编号1,那么这两个文件的oid则为A0与A1。

oid的好处是可以唯一标示每个不同的对象,并且存储了对象与文件的从属关系,由于Ceph的所有数据都虚拟成了整齐划一的对象,所以在读写时效率都会比较高。

但是对象并不会直接存储在OSD中,因为对象的size很小,在一个大规模的集群中可能有几百到几千万个对象,为了解决对对象遍历寻址慢以及减轻对于osd的依赖,ceph引入了归置组的概念,即PG。

PG是一个逻辑概念,在linux系统中可以直接看到对象,但是无法直接看到PG,他在数据寻址时类似于数据库中的索引,每个对象都会固定映射进一个PG中,所以当我们要寻找一个对象时,只需要先找到对象所属的PG,然后遍历这个PG就可以了,无需遍历所有对象,而且在数据迁移时,也是以PG作为基本单位进行迁移,ceph不会直接操作对象。

对象映射进PG:首先使用静态hash函数对oid做hash取出特征码,用特征码与PG的数量取模,得到的序号即为PGID,(由于这种设计方式,PG的数量多少直接决定了数据分布的均匀性,所以设置合理的PG数量可以很好的提升ceph集群的性能并使数据均匀分布)

最后PG会根据管理员设置的副本数量进行复制,然后通过crush算法存储到不同的OSD节点上,(其实是把PG中的所有对象存储到节点上),第一个osd节点即为主节点,其余均为从节点。

  • ceph名词介绍

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值