知识卡片

RADOS对象的三段式结构

专业/工作 · 236.c.1

内容

RADOS 层的对象(区别于 S3/Swift 语义的对象)由三部分组成:唯一标识用的对象 ID、对应本地文件系统一个文件的实际数据、以及以 Key-Value 形式存储的元数据。元数据优先存在文件的扩展属性里,但扩展属性容量有限,超出时退化为用 Leveldb 等本地 KV 存储保存。这是一种分层兜底设计:优先用最轻量的机制(xattr)满足小容量元数据需求,只有超限才引入更重的组件(嵌入式 KV 存储),避免为所有场景都上重量级方案。

参考来源

《Ceph源码分析》第1章《Ceph整体架构》