知识卡片

块文件对象存储的接口权衡

专业/工作 · 549.a

内容

存储服务按接口可分三类:块存储直接对裸盘做逻辑地址读/写,速度快但难以在多个客户端间共享;文件存储提供层次化目录和POSIX接口,便于共享但因元数据频繁查找而读/写较慢;对象存储放弃目录层次,用put/get/delete操作扁平命名空间中的对象,兼顾了块存储的速度和文件存储的可共享性,因此天然适合分布式场景。发散:对象存储放弃随机读/写(改不了一个字节,只能整体重新put)本质是用”牺牲局部更新能力”换取”扁平寻址带来的水平扩展能力”,这个取舍思路和很多分布式KV设计是同源的。

参考来源

《Linux开源存储全栈详解从Ceph到容器存储》第1章《Linux开源存储》