知识卡片
四种本地存储引擎的取舍
内容
RADOS 在单机层面把对象最终落到磁盘的方式并不唯一,同时存在四种实现:FileStore 基于本地文件系统(默认 XFS),是当时生产环境的主流稳定选择;BlueStore 干脆放弃本地文件系统、自研一个专用的用户态存储层,绕开文件系统这层通用抽象带来的开销;KStore 直接用本地 KV 存储系统承载对象数据;Memstore 把一切都放内存,只用于测试。这种并存反映了一个取舍:借助成熟文件系统(FileStore)能最快达到生产可用,但文件系统的通用设计(如日志、元数据管理)和对象存储的专用需求并不完全贴合,长期看自研专用存储层(BlueStore)能榨出更多性能,只是要为此重新造一遍文件系统级别的轮子。
参考来源
《Ceph源码分析》第7章《本地对象存储》