実際には、必要に応じてデータにアクセスできるように、「cassandra」でパーティションキーを「既知」にしたいと思っています。私はあなたがパーティション化キーに大きな基数を言うとき、あなたが何を意味するのか分かりません。クラスタには多くのパーティションがあります。これは通常o.kです。
クラスタの周りにデータを配布する場合。人工の列を使用することができます。そして、このアプローチはバケツと呼ばれることもあります。基本的に、100k +を維持したい場合、または100万+のバージョンを決して使用しない場合は、o.kです。このデータをパーティションに分割します。
一部の人々は単にトリックを使用し、データを挿入するときに人工バケット列をパーティションに追加します...ランダム(1-10)とし、データを読み込んだときに10個のクエリin演算子を使用し、データをフェッチしてクライアント側でマージします。このアプローチには、クラスタ内に「ホット・ロー」の出現を防止するという点で多くの利点があります。
すべてのキーの可能性は、1/NUM_NODESと同じノードで終了する可能性があります。だから私はこれがほとんどあなたがあまり心配するべきではないと言うでしょう。パーティションの数がクラスタのノード数より小さい場合を除きます。
基本的には、追加の列ランダム(既述)または入力データに基づいた何らかの関数の2つの選択肢があります。つまり、時系列データを使用する場合は、そのデータに基づいて月を計算することができますあなたが挿入しようとしているものをバケットに入れてください。あなたがデータを取得しているとき、あなたは知っています... o.k.私は2016年5月に何かを探しています。その後、適切なバケットを選択する方法を知っています。