Изменения

Перейти к: навигация, поиск

Производительность Ceph

12 байтов добавлено, 12:26, 8 августа 2020
Нет описания правки
Так в чём же дело и как это победить? А дело в том, что с выбором раздела для очередного файла БД (RocksDB организована в виде набора файлов) «есть небольшой нюанс», точнее, даже два.
'''Нюанс № 1: ''' RocksDB кладёт файл на быстрый диск только когда считает, что на быстром диске хватит места под все файлы этого же уровня (для тех, кто ещё не в курсе — RocksDB это [https://github.com/facebook/rocksdb/wiki/Leveled-Compaction LSM база]).
Дефолтные настройки цефа:
При этом 4 ГБ — слишком мало, 286 ГБ — слишком много. Так что, по сути, правильно делать block.db размером хотя бы 30 ГБ для всех OSD.
'''Нюанс № 2: ''' Бывает, что в момент compaction-а RocksDB требуется целиком переписать уровень целиком (не всегда, но бывает). Если при этом на SSD нет запаса места в размере этого уровня, то он, опять-таки, утечёт на HDD и так там и останется, ибо перемещать после compaction-а его обратно она не умеет. При этом одновременно могут компактиться как минимум первый и последний уровни.
Из этого следует, что в идеале на разделе БД нужен ещё и запас в размере первого + последнего уровня БД. То есть примерно 30 ГБ превращаются в примерно 60.

Навигация