クラスター化カラムのあるパーティション・キーの定義

複合プライマリ・キーは、データを格納するノードを決定するパーティション・キーと、パーティション上のデータの順序を決定するクラスター化カラムで構成されます。

複合プライマリ・キーを持つテーブルに対して、DataStax Enterpriseでは単純パーティション・キーまたは複合パーティション・キーのいずれかを使用します。さらに、クラスター化カラムが定義されます。クラスター化とは、各パーティション内でクラスター化カラムの定義に基づきデータをソートするストレージ・エンジンのプロセスです。通常、カラムはアルファベットの昇順でソートされます。一般的に、この単純な方法よりも、データを異なるグループに分ける方が読み込みと書き込みには効率的です。

データはクラスター全体に分散していることに留意してください。少量のデータを収集するためにパーティション全体を読み込む必要がある場合、大きいパーティションからのデータの取得中にアプリケーションでレイテンシーが高くなる可能性があります。物理ノードでは、パーティション・キーの行がクラスター化カラムの順番に基づいて格納されているときに行の取得が非常に効率的になります。クラスター化カラムを使用したテーブルでのデータのグループ分けは、リレーショナル・データベースでのJOINと同等ですが、アクセスするテーブルは1つのみであるため、パフォーマンスははるかに高くなります。このテーブルは、パーティション・キーにcategoryを使用し、クラスター化カラムにpointsを使用します。各categorypointsが降順になっていることに注意してください。



データベースは、データの行全体をパーティション・キーに従ってノードに格納し、クラスター化カラムを使用して取得するデータを順序付けることができます。パーティションからのデータの取得は、クラスター化カラムを使用すると汎用性が高くなります。この例では、クエリーOne-day-racesについて200より大きいポイント値をすべて取得することができます。クエリーの要件がより複雑な場合は、複合プライマリ・キーを使用してください。