哪个参数可以确定Ceph的RADOS中的对象大小

时间:2015-03-05 06:47:57

标签: object size ceph

当存储文件时,Ceph会将文件剪切成多个对象,而大多数对象除了最后一个之外具有相同的大小(文件大小可能不是对象大小的倍数)。

我从Ceph的官方网站上知道,对象大小不是固定的,但可以通过某个参数确定,那么决定对象大小的参数是什么?

1 个答案:

答案 0 :(得分:2)

Ceph文件系统构建在RADOS对象存储系统之上。也就是说,文件中的字节存储在一个或多个对象中。文件映射到对象上的字节的方式称为条带化策略。例如,在具有固定1 MB对象的条带化策略中,偏移量[0, 2**20)中的文件中的字节可以存储在object.0中,而第二个兆字节[2**20, 2**21)中的字节可以存储在object.1中,因此上。还有其他方法可以将线性字节流映射到对象上。这里有更多信息:

http://ceph.com/docs/master/cephfs/file-layouts/

您可以在使用libcephfs时以编程方式更改条带化策略:

https://github.com/ceph/ceph/blob/master/src/include/cephfs/libcephfs.h#L738

请注意,此映射意味着固定的对象大小。但是,RADOS本身对对象大小没有限制(可配置的最大大小除外)。因此,如果您使用RADOS对象API来存储数据,则没有固定的大小。