ヘーゼルキャストのドキュメントを読みました。
これは、データがすべてのノードに分割されていることを示しています。
デフォルトでクラスタに作成されるパーティションの数は 271 です。
適切なパーティション カウント値の選択を制御するパラメーターは何ですか。そして、なぜデフォルトのパーティション数が 271 なのですか?
ヘーゼルキャストのドキュメントを読みました。
これは、データがすべてのノードに分割されていることを示しています。
デフォルトでクラスタに作成されるパーティションの数は 271 です。
適切なパーティション カウント値の選択を制御するパラメーターは何ですか。そして、なぜデフォルトのパーティション数が 271 なのですか?
271は素数です。そして、任意のキーを指定すると、Hazelcast はキーをハッシュし、パーティション カウントで変更します。このコンテキストでは、素数はより疑似乱数の結果を生成すると考えられています。実際、ユーザーの観点からは、それをプライムにすることはそれほど重要ではありません。
次に、なぜ 271 で他の素数ではないのかと尋ねるかもしれません。
単純に、ノードが 100 未満の場合に 271 がほぼ均等に分散される適切な数だからです。ノードが 100 を超える場合は、分散を均等にするためにノードを増やす必要があります。
パーティション数を増やすもう 1 つの理由は、大量のデータがある場合です。データ グリッドに格納するデータが 300 GB あるとします。そうすると、各パーティションが 1GB を超え、移行に時間がかかりすぎます。移行中は、そのパーティションへのすべての更新がブロックされることに注意してください。待ち時間のために、パーティションごとのデータを小さくしたいと考えています。そのため、パーティションを移動する際の待ち時間に満足できる数まで増やしてください。
パーティションは、新しいノードを追加した場合にのみ移行されることに注意してください。