基本的なプライマリ・キーの定義

単純なプライマリ・キーは、どのノードがデータを格納するのかを指定するパーティション・キーだけで構成されます。

単純なプライマリ・キーを持つテーブルの場合、DataStax Enterpriseはパーティション・キーとして1つのカラム名を使用します。この場合、プライマリ・キーは、パーティション・キーだけで構成されます。カラムに多くの値があり、そのパーティションをたくさんのノードに分散できる場合、単純なプライマリ・キー付きで格納されるデータの挿入と取得に要する時間は短縮されます。

よくあるのは、DSE を初めて使うときに、単純なプライマリ・キーを持つテーブルを必要とするケースです。セカンダリ・インデックスを使用しない限り、テーブルからデータを取得するときに、プライマリ・キー以外は指定できないことを念頭に置いてください。アプリケーションで、1つの一意識別子を使用した単純なルックアップ・テーブルが必要な場合は、単純なプライマリ・キーが最も適しています。ここに示したテーブルでは、プライマリ・キーとしてidを使用しています。

取得の要件が単純な場合は、単純なプライマリ・キーを使用します

単純なプライマリ・キーの使用

単純なプライマリ・キーを使って、ソートされた結果を返すクエリーを実行できるカラムを作成します。

単純なプライマリ・キーを使って、クエリーを実行して結果を取得するために使用できるカラムを1つ作成します。この例では、ID番号とサイクリストの姓と名をカラムに格納するcyclist_nameテーブルを作成します。このテーブルはPrimary_keyとしてUUIDを使用しています。このテーブルにクエリーして、サイクリストのID番号が分かれば、その名前を特定することができます。

単純なプライマリ・キー・テーブルは、以下の例のように複数の方法で作成することができます。

手順

  • cyclist_nameテーブルをcyclingキースペースに作成します。その際、idをプライマリ・キーにします。CREATE TABLE定義で、カラム名の後にPRIMARY KEYキーワードを挿入します。テーブルを作成する前にUSE文を使用してキースペースを設定します。
    USE cycling;
    CREATE TABLE cyclist_name ( id UUID PRIMARY KEY, lastname text, firstname text );
  • この例は、テーブル定義の最後にプライマリ・キーを指定して記述することもできます。CREATE TABLE定義で、最後のカラム定義の後にPRIMARY KEYキーワードを挿入し、その後にキーのカラム名を続けます。プライマリ・キーのカラム名は丸かっこで囲みます。以下の例ではidがカラム名です。
    USE cycling;
    CREATE TABLE cyclist_name ( id UUID, lastname text, firstname text, PRIMARY KEY (id) );
  • USE文の代わりに、CREATE TABLE文でキースペース名を使用してキースペースを指定できます。
    CREATE TABLE cycling.cyclist_name ( id UUID, lastname text, firstname text, PRIMARY KEY (id) );