Amazon DynamoDB
開発者ガイド (API バージョン 2012-08-10)

ステップ 1: サンプルテーブルの作成

このセクションでは、AWS マネジメントコンソール を使用して、DynamoDB で 2 つのシンプルなユースケース用のテーブルを作成します。

ユースケース 1: 製品カタログ

DynamoDB に製品情報を格納するとします。各製品には固有の属性があるため、これらの各製品について異なる情報を保存する必要があります。

ProductCatalog テーブルを作成できます。ここで、このテーブルでは、各項目が 1 つの数値属性 Id によって一意に特定されます。

テーブル名 プライマリキー
ProductCatalog

パーティションキー: Id (数値)

ユースケース 2: フォーラムアプリケーション

掲示板やフォーラム用のアプリケーションを構築するとします。AWS ディスカッションフォーラムは、そのようなアプリケーションの一例です。お客様は開発者コミュニティとやり取りし、質問をしたり、他のお客様の投稿に返信したりできます。各 AWS サービスには専用フォーラムがあります。だれでも、フォーラムでメッセージを投稿して新しいディスカッションスレッドを開始できます。各スレッドは、任意の数の返信を受け取ることができます。

3 つのテーブル (ForumThreadReply) を作成して、このアプリケーションをモデル化できます。

テーブル名 プライマリキー
Forum

パーティションキー: Name (文字列)

Thread

パーティションキー: ForumName (文字列)

ソートキー: Subject (文字列)

Reply

パーティションキー: Id (文字列)

ソートキー: ReplyDateTime (文字列)

Reply テーブルには、PostedBy-Message-Index という名前の グローバルセカンダリインデックス があります。このインデックスでは、Reply テーブルの 2 つの非キー属性でのクエリを容易にします。

インデックス名 プライマリキー
PostedBy-Message-Index

パーティションキー: PostedBy (文字列)

ソートキー: Message (文字列)

ProductCatalog テーブルを作成する

  1. https://console.aws.amazon.com/dynamodb/ にある DynamoDB コンソールを開きます。

  2. [Create Table (テーブルの作成)] を選択します。

  3. [Create DynamoDB table (DynamoDB テーブルの作成)] 画面で、次の操作を行います。

    1. [テーブル名] ボックスに、「ProductCatalog」と入力します

    2. [Primary key (プライマリキー)] の [Partition key (パーティションキー)] ボックスに「Id」と入力します。データ型を [数値] に設定します。

  4. すべての設定が正しいことを確認したら、[作成] を選択します。

Forum テーブルを作成する

  1. https://console.aws.amazon.com/dynamodb/ にある DynamoDB コンソールを開きます。

  2. [Create Table (テーブルの作成)] を選択します。

  3. [Create DynamoDB table (DynamoDB テーブルの作成)] 画面で、次の操作を行います。

    1. [テーブル名] ボックスに、「Forum」と入力します

    2. [Primary key (プライマリキー)] の [Partition key (パーティションキー)] ボックスに「Name」と入力します。データ型を [String (文字列)] に設定します。

  4. すべての設定が正しいことを確認したら、[作成] を選択します。

Thread テーブルを作成する

  1. https://console.aws.amazon.com/dynamodb/ にある DynamoDB コンソールを開きます。

  2. [Create Table (テーブルの作成)] を選択します。

  3. [Create DynamoDB table (DynamoDB テーブルの作成)] 画面で、次の操作を行います。

    1. [テーブル名] ボックスに、「Thread」と入力します

    2. [Primary key (プライマリキー)] ページで、以下の操作を行います。

      • [Partition key (パーティションキー)] ボックスに「ForumName」と入力します。データ型を [String (文字列)] に設定します。

      • [Add sort key (ソートキーの追加)] を選択します。

      • [Sort key (ソートキー)] ボックスに「Subject」と入力します。データ型を [String (文字列)] に設定します。

  4. すべての設定が正しいことを確認したら、[作成] を選択します。

Reply テーブルを作成する

  1. https://console.aws.amazon.com/dynamodb/ にある DynamoDB コンソールを開きます。

  2. [Create Table (テーブルの作成)] を選択します。

  3. [Create DynamoDB table (DynamoDB テーブルの作成)] 画面で、次の操作を行います。

    1. [テーブル名] ボックスに、「Reply」と入力します

    2. [Primary key (プライマリキー)] ページで、以下の操作を行います。

      • [Partition key (パーティションキー)] ボックスに「Id」と入力します。データ型を [String (文字列)] に設定します。

      • [Add sort key (ソートキーの追加)] を選択します。

      • [Sort key (ソートキー)] ボックスに「ReplyDateTime」と入力します。データ型を [String (文字列)] に設定します。

    3. [Table settings (テーブル設定)] セクションで、[Use default settings (デフォルト設定の使用)] をオフにします。

    4. [Secondary indexes (セカンダリインデックス)] セクションで、[Add index (インデックスの追加)] を選択します。

    5. [Add index (インデックスの追加)] ウィンドウで、以下の操作を行います。

      • [Primary key (プライマリキー)] ページで、以下の操作を行います。

        • [Partition key (パーティションキー)] ボックスに「PostedBy」と入力します。データ型を [String (文字列)] に設定します。

        • [Add sort key (ソートキーの追加)] を選択します。

        • [Sort key (ソートキー)] ボックスに「Message」と入力します。データ型を [String (文字列)] に設定します。

      • [Index name (インデックス名)] ボックスに「PostedBy-Message-Index」と入力します。

      • [Projected attributes (射影される属性)] を [All (すべて)] に設定します。

      • [Add index (インデックスの追加)] を選択します。

  4. すべての設定が正しいことを確認したら、[作成] を選択します。