map_buckets_coefficient
sqrt および linear map_buckets_strategy で使用される係数です。
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
with_buckets シリアライゼーションを適用するために必要な、最小の平均マップサイズ (1行あたりのキー数) です。
平均マップサイズがこの値より小さい場合は、他のバケット設定に関係なく単一のバケットが使用されます。
値が 0 の場合、このしきい値は無効になり、常にバケット化戦略が適用されます。
この設定は、小さなマップでは効果がほとんどない場合に、バケット化シリアライゼーションのオーバーヘッドを避けるのに役立ちます。
map_buckets_strategy
with_buckets Map シリアライゼーションにおけるバケット数の選択戦略を制御します。
設定可能な値:
- constant — 平均マップサイズに関係なく、常に max_buckets_in_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]の範囲に制限します。