Python および DAX
この手順に従って、Amazon EC2 インスタンスで Python サンプルアプリケーションを実行します。
DAX の Python サンプルを実行するには
-
pip
ユーティリティを使用して DAX Python クライアントをインストールします。pip install amazon-dax-client
-
サンプルプログラムソースコード (
.zip
ファイル) をダウンロードします。wget http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/samples/TryDax.zip
ダウンロードが完了したら、ソースファイルを解凍します。
unzip TryDax.zip
-
以下の Python プログラムを実行します。最初のプログラムは、
TryDaxTable
という Amazon DynamoDB テーブルを作成します。2 番目のプログラムは、テーブルにデータを書き込みます。python 01-create-table.py python 02-write-data.py
-
以下の Python プログラムを実行します。
python 03-getitem-test.py python 04-query-test.py python 05-scan-test.py
タイミング情報を書き留めます。これは
GetItem
、Query
、Scan
テストに必要なミリ秒の数字です。 -
前のステップで、DynamoDB エンドポイントに対してプログラムを実行しました。ここでプログラムを再度実行しますが、今度は
GetItem
、Query
、Scan
オペレーションが DAX クラスターによって処理されます。DAX クラスターのエンドポイントを確認するには、次のいずれかを選択します。
-
DynamoDB コンソールの使用 — DAX クラスターを選択します。次の例のように、クラスターエンドポイントがコンソールに表示されます。
dax://my-cluster.l6fzcv.dax-clusters.us-east-1.amazonaws.com
-
AWS CLI の使用 — 次のコマンドを入力します。
aws dax describe-clusters --query "Clusters[*].ClusterDiscoveryEndpoint"
この例のように、クラスターエンドポイントが出力に表示されます。
{ "Address": "my-cluster.l6fzcv.dax-clusters.us-east-1.amazonaws.com", "Port": 8111, "URL": "dax://my-cluster.l6fzcv.dax-clusters.us-east-1.amazonaws.com" }
プログラムを再度実行しますが、今度はクラスターエンドポイントをコマンドラインパラメータとして指定します。
python 03-getitem-test.py dax://my-cluster.l6fzcv.dax-clusters.us-east-1.amazonaws.com python 04-query-test.py dax://my-cluster.l6fzcv.dax-clusters.us-east-1.amazonaws.com python 05-scan-test.py dax://my-cluster.l6fzcv.dax-clusters.us-east-1.amazonaws.com
出力の残りの部分を見て、タイミング情報を書き留めます。
GetItem
、Query
およびScan
の経過時間は、DynamoDB を使用した場合より DAX を使用した方が大幅に低いはずです。 -
-
次の Python プログラムを実行して
TryDaxTable
を削除します。python 06-delete-table.py
これらのプログラムの詳細については、以下のセクションを参照してください。