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

Python および DAX

Amazon EC2 インスタンスで Python サンプルアプリケーションを実行するには、次の手順に従います。

  1. pip ユーティリティを使用して DAX Python クライアントをインストールします。

    pip install amazon-dax-client
  2. サンプルプログラムソースコード (.zip ファイル) をダウンロードします。

    wget http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/samples/TryDax.zip

    ダウンロードが完了したら、ソースファイルを解凍します。

    unzip TryDax.zip
  3. 以下の Python プログラムを実行します。

    python 01-create-table.py python 02-write-data.py

    最初のプログラムは、TryDaxTable という DynamoDB テーブルを作成します。2 番目のプログラムは、テーブルにデータを書き込みます。

  4. 以下の Python プログラムを実行します。

    python 03-getitem-test.py python 04-query-test.py python 05-scan-test.py

    タイミング情報を書き留めます。これは GetItemQueryScan テストに必要なミリ秒の数字です。

  5. 前のステップで、Amazon DynamoDB エンドポイントに対してプログラムを実行しました。ここでプログラムを再度実行しますが、今度は GetItemQueryScan オペレーションが DAX クラスターによって処理されます。

    DAX クラスターのエンドポイントを確認するには、次のいずれかを選択します。

    • [DynamoDB コンソールの使用]—DAX クラスターを選択します。次の例のように、クラスターエンドポイントが console;に表示されます。

      mycluster.frfx8h.clustercfg.dax.usw2.amazonaws.com:8111
    • [AWS CLI の使用]—次のコマンドを入力します。

      aws dax describe-clusters --query "Clusters[*].ClusterDiscoveryEndpoint"

      クラスターエンドポイントポートとアドレスが出力に表示されます。その例を次に示します。

      { "Port": 8111, "Address":"mycluster.frfx8h.clustercfg.dax.usw2.amazonaws.com" }

    ここでプログラムを再度実行しますが、今度はクラスターエンドポイントをコマンドラインパラメータとして指定します。

    python 03-getitem-test.py mycluster.frfx8h.clustercfg.dax.usw2.amazonaws.com:8111 python 04-query-test.py mycluster.frfx8h.clustercfg.dax.usw2.amazonaws.com:8111 python 05-scan-test.py mycluster.frfx8h.clustercfg.dax.usw2.amazonaws.com:8111

    出力の残りの部分を見て、タイミング情報を書き留めます。GetItemQueryScan の経過時間は、DynamoDB を使用した場合より DAX を使用した方が大幅に低いはずです。

  6. 次の Python プログラムを実行して TryDaxTable を削除します。

    python 06-delete-table.py

これらのプログラムの詳細については、以下のセクションを参照してください。