map_buckets_coefficient
sqrt и linear настройки map_buckets_strategy для вычисления количества бакетов на основе среднего размера map.
Для стратегии sqrt: round(map_buckets_coefficient * sqrt(avg_map_size)).
Для стратегии linear: round(map_buckets_coefficient * avg_map_size).
Игнорируется, если map_buckets_strategy имеет значение constant.
map_buckets_min_avg_size
Map with_buckets.
Если средний размер Map меньше этого значения, используется один бакет независимо от других настроек бакетов.
Значение 0 отключает этот порог и всегда применяет стратегию разбиения по бакетам.
Эта настройка позволяет избежать накладных расходов сериализации Map по бакетам для небольших Map, где выигрыш незначителен.
map_buckets_strategy
with_buckets типа Map на основе среднего размера map.
Возможные значения:
- constant — Всегда использовать max_buckets_in_map как количество бакетов, независимо от среднего размера map.
- sqrt — Использовать
round(map_buckets_coefficient * sqrt(avg_map_size))как количество бакетов, ограниченное диапазоном[1, max_buckets_in_map]. - linear — Использовать
round(map_buckets_coefficient * avg_map_size)как количество бакетов, ограниченное диапазоном[1, max_buckets_in_map].