看到很多关于oid-->pgid-->osdid映射的文章。 但是 读写IO到-->oid的映射,却没有相关的文章。
我认为一个完整的映射关系应该是这样的:read write IO---->oid---->pgid---->osdid 。下面我们重点研究下read write IO---->oid的映射关系。
一, 读写IO的组成
读写IO,最基本的元素是:
1,offset #在磁盘上的偏移位置
2, length #需要读或者写的长度
3, data #需要读取的数据
二,对象名的组成
一个对象文件名有5部分组成
1, rbd\udata.102a2ae8944a
rbd镜像里块的前缀,可以用rbd info查看, 通过他可以查找出对象和镜像的从属关系
2,0000000000000000
对象的序号,每次通过读写IO的 offset 除以对象大小4M,然后取整数,生成。
比如:offset 假如为 4194035, 那么4194035/ 4194034 最后结果为1 ,那么这次IO就写在对象的序号为0000000000000001的对象上。<