首页 > 其他 > 详细

BlueStore的意义

时间:2020-06-28 09:46:58      阅读:78      评论:0      收藏:0      [点我收藏+]

1. 解决了本地文件系统的依赖

  FileStore为了解决本地文件系统本身不支持数据或元数据的事务操作接口,实现了FileJournal功能,所有的事务都需要先写到FileJournal中,之后才会写入对应的文件中,以此来保证事务的原子性,但是这导致了数据“双写”的问题,造成至少一半磁盘带宽的浪费,导致了IO写放大问题;

  ceph的数据被划分为object存放,object以32位的hash值进行标识,ceph在进行scrubbing、backfill或者recovery时都需要根据hash值遍历这些object;POSIX文件系统不提供有序的文件遍历接口,为此FileStore根据文件的数量和hash的前缀将object划分到不同的子目录;(当目录下的文件个数>100个时,拆分子目录,当所有子目录下的文件个数<50个时,将合并到上级目录)。

2. 同一个OSD下所有对象都共享一个扁平的寻址空间,解决了扩容时PG分裂导致的OSD中的对象在新老文件夹之间的迁移

3. 解决了本地文件系统无法使用spdk技术读写NVMe盘问题

4. 数据和元数据无法在FileStore中彻底分离问题

5.由于FileStore自身无法控制本地文件系统的刷盘行为,导致的流控机制不完整导致IOPS和带宽抖动

6.FileStore频繁syncfs系统调用导致CPU利用率居高不下

 

BlueStore的意义

原文:https://www.cnblogs.com/daobang/p/13201096.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!