ceph学习笔记之五 Pool与映射过程

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ceph学习笔记之五 Pool与映射过程相关的知识,希望对你有一定的参考价值。

Pool

  Pool是一个抽象的存储池,它规定了数据冗余的类型以及对应的副本分布策略。目前实现了两种Pool类型:

Replicated类型和Erasure Code类型。一个Pool由多个PG构成

对象映射过程

  对象映射过程指的是查找对象在集群中分布的位置信息,其过程分为两步:

A、对象到PG的映射。这个过程是静态HASH映射(加入PG Split后实际变成了动态HASH映射方式),通过Object_id计算出HASH值,

用该Pool的PG的总数量PG_Num对HASH值取模,就可以获得该对象所在的PG的ID号,其算法公式:

PG_id=Hash(Object_id)% PG_Num    
B、PG到OSD列表映射。指PG上对象的副本如何分布在OSD上。使用Ceph自己的CRUSH算法来实现。由PG映射到数据存储的实际单元OSD中,将PG_id作为算法的输入,获得包含N个OSD的集合,集合中第一个OSD被作为主OSD,其他的OSD则依次作为从OSD。N为该PG所在Pool下的副本数,在生产环境中N一般为3。

对象映射图:

技术分享

  通过HASH取模后计算,前3个对象分布在PG1上,后两个对象分布在PG2上;PG1通过CRUSH算法,计算出PG1分布在OSD1、OSD3上;PG2通过CRUSH算法分布在OSD2和OSD4上。

本文出自 “無詺IT小站” 博客,谢绝转载!

以上是关于ceph学习笔记之五 Pool与映射过程的主要内容,如果未能解决你的问题,请参考以下文章

ceph学习笔记之九 层级化的Cluster Map

ceph学习笔记之六 数据读写过程

机器学习笔记之五用ARIMA模型做需求预测用ARIMA模型做需求预测

ceph学习笔记之十 副本放置策略

构建之法读书笔记之五

05《软件构架实践第二版》阅读笔记之五