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

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

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

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



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

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

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

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

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

手順

  • 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キーワードを挿入し、その後にキーのカラム名を続けます。カラム名は丸かっこで囲みます。
    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) );