TryDax.java - Amazon DynamoDB

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

TryDax.java

TryDax.java ファイルには、main メソッドが含まれています。コマンドラインパラメータを指定しないでプログラムを実行すると、Amazon DynamoDB クライアントが作成され、すべての API オペレーションでそのクライアントが使用されます。コマンドラインで DynamoDB Accelerator (DAX) クラスターエンドポイントを指定すると、プログラムは DAX クライアントも作成し、GetItemQueryScan オペレーションでこれを使用します。

さまざまな方法でプログラムを変更できます。

  • DynamoDB クライアントではなく、DAX クライアントを使用します。詳細については、「Java および DAX」を参照してください。

  • テストテーブルに別の名前を付けます。

  • helper.writeData パラメータを変更して書き込まれる項目の数を変更する。2 番目のパラメータはパーティションキーの数、3 番目のパラメータはソートキーの数です。デフォルトでは、プログラムはパーティションキーの値に 1~10 を使用し、ソートキーの値に 1~10 を使用し、合計で 100 個の項目がテーブルに書き込まれます。詳細については、「TryDaxHelper.java」を参照してください。

  • GetItemQuery および Scan テストの数を変更し、そのパラメータを変更する。

  • helper.createTable および helper.deleteTable を含むラインをコメントアウトする (プログラムを実行するたびにテーブルを作成および削除しない場合)。

注記

このプログラムを実行するには、DAX SDK for Java のクライアント、および AWS SDK for Java を依存関係として使用するように Maven を設定できます。詳細については、「クライアントを Apache Maven 依存関係として使用する」を参照してください。

また、DAX Java クライアントと AWS SDK for Java の両方をダウンロードして、クラスパスに含めることもできます。CLASSPATH 変数の設定例については、「Java および DAX」を参照してください。

public class TryDax { public static void main(String[] args) throws Exception { TryDaxHelper helper = new TryDaxHelper(); TryDaxTests tests = new TryDaxTests(); DynamoDB ddbClient = helper.getDynamoDBClient(); DynamoDB daxClient = null; if (args.length >= 1) { daxClient = helper.getDaxClient(args[0]); } String tableName = "TryDaxTable"; System.out.println("Creating table..."); helper.createTable(tableName, ddbClient); System.out.println("Populating table..."); helper.writeData(tableName, ddbClient, 10, 10); DynamoDB testClient = null; if (daxClient != null) { testClient = daxClient; } else { testClient = ddbClient; } System.out.println("Running GetItem, Scan, and Query tests..."); System.out.println("First iteration of each test will result in cache misses"); System.out.println("Next iterations are cache hits\n"); // GetItem tests.getItemTest(tableName, testClient, 1, 10, 5); // Query tests.queryTest(tableName, testClient, 5, 2, 9, 5); // Scan tests.scanTest(tableName, testClient, 5); helper.deleteTable(tableName, ddbClient); } }