Почему LevelDB делает свой нижний уровень в 10 раз больше верхнего?

Согласно официальному документу, нет никаких сомнений в том, что нижний уровень в 10 раз больше верхнего уровня в LevelDB.

Вопрос в том, почему 10? не 2? не 20? Это связано с какими-то строгими математическими вычислениями или это просто работает?

Я прочитал оригинальную статью LSMT. Я могу понять многокомпонентную часть, потому что будет слишком сложно объединить дерево c0 с очень большим деревом c1. Но в статье ничего не говорится о том, что является лучшим параметром.

Я прав? На самом деле это вопрос интервью. Как я могу ответить правильно, если нет лучшего параметра?

1 ответ

10x - разумное значение, может не быть строгим.

Значение этого коэффициента не может быть слишком маленьким, потому что создаст слишком много уровней, что не удобно для чтения, и приведет к большему пространственному усилению.

Он не может быть слишком большим, как вы упомянули, стоимость компакта будет увеличиваться с увеличением среднего числа участников.

Другие вопросы по тегам