カサンドラクラスターでは、すべてのノードがほぼ等しいデータを持つようにするにはどうしたらいいですか?カサンドラクラスター - ノード間で等しいデータを保存する
このシナリオが発生した場合は、ベストプラクティスは
おかげ
カサンドラクラスターでは、すべてのノードがほぼ等しいデータを持つようにするにはどうしたらいいですか?カサンドラクラスター - ノード間で等しいデータを保存する
このシナリオが発生した場合は、ベストプラクティスは
おかげ
何5〜10%のわずかな変化を期待しても大丈夫です。最も一般的な原因は、パーティションの分布が本当にランダムではなく(一部のノードではより多くのパーティション)、パーティションのサイズに大きなばらつきがあることです(最小パーティションは数キロバイトですが最大パーティションは2GB)。
考慮すべき他の2つのシナリオもあります。
SINGLE-TOKENのCLUSTER
トークンが正しく計算されない場合、一部のノードは、他のものに比べて、より大きなトークン範囲を有していてもよいです。 token generation toolを使用して、リングの周りに正しく配置されたトークンのリストを取得します。
クラスタがDataStax Enterpriseと共に配備されている場合、最も簡単な方法はrebalance your cluster with OpsCenterです。あなたはnum_tokens
ディレクティブでcassandra.yaml
にトークンの同じ番号を割り当てた
vノードのCLUSTER
ことを確認します。
クラスタでByteOrderedPartitionerを使用していない場合を除き、利用可能なパーティショナーと、それが(通常)起こらない理由については、DataStaxのマニュアルhereを参照してください。
'nodetool status'の出力を提供すると、あなたの質問に答える人々のコンテキストが追加されます。乾杯! – flightc
あなたのパーティションキーを見たいかもしれません。パーティションキーはあなたのデータがどこに行くのかを決定します。 –
主なことは、プライマリキーに十分なバラツキがあることを確認することです。主キーがハッシュされ、パーティションキーを使用してデータをノードに割り当てます。また、パーティションはノード間で分割されません。したがって、多くのデータに同じ主キーがある場合、そのデータはすべて同じノードに格納されます。これはホットスポットとも呼ばれます。 – LHWizard