TryDax.java - Amazon DynamoDB

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

TryDax.java

TryDax.java 檔案包含 main 方法。如果您在沒有命令列參數的情況下執行程式,它會建立 Amazon DynamoDB 用戶端,並將該用戶端用於所有API操作。如果您在命令列上指定 DynamoDB Accelerator (DAX) 叢集端點,程式也會建立DAX用戶端,並將其用於 GetItemQueryScan操作。

您可以使用幾種方法修改程式:

  • 使用DAX用戶端而非 DynamoDB 用戶端。如需詳細資訊,請參閱Java 和 DAX

  • 為測試資料表選擇不同的名稱。

  • 變更 helper.writeData 參數,修改寫入的項目數目。第二個參數是分割區索引鍵的數字,第三個參數則為排序索引鍵的數字。根據預設,程式會使用 1-10 作為分割區索引鍵的值,使用 1-10 作為排序索引鍵的值,總共會將 100 個項目寫入資料表。如需詳細資訊,請參閱 TryDaxHelper.java

  • 修改 GetItemQueryScan 測試的數字,並修改其參數。

  • 將包含 helper.createTablehelper.deleteTable 的行變更為註解 (若您不希望每次執行程式時都建立和刪除資料表的話)。

注意

若要執行此程式,您可以將 Maven 設定為使用DAXSDK適用於 Java 的 用戶端,並將 AWS SDK for Java 作為相依性。如需詳細資訊,請參閱使用用戶端做為 Apache Maven 依存項目

或者,您可以下載 DAX Java 用戶端和 ,並將其同時包含在 classpath AWS SDK for Java 中。請參閱 Java 和 DAX 以取得設定您 CLASSPATH 變數的範例。

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); } }