すべてのプロダクト
Search
ドキュメントセンター

Tablestore:テーブルの構成を更新する

最終更新日:Dec 28, 2024

このトピックでは、パラメーターとサンプルコードを使用して、Tablestore SDK for Java を使用してテーブルの構成を更新する方法について説明します。データテーブルの有効期限 (TTL)、最大バージョン数、最大バージョンオフセット、および Stream 構成を更新できます。また、ハイパフォーマンスインスタンスのデータテーブルの予約済み読み取りおよび書き込みスループットを更新することもできます。

前提条件

パラメーター

詳細については、パラメーター を参照してください。

サンプルコード

データテーブルの構成を更新する

次のサンプルコードは、データテーブルの構成を更新する方法の例を示しています。

private static void updateTable(SyncClient client) {
    // データテーブル内のデータの TTL を指定します。値 -1 は、データテーブル内のデータが期限切れにならないことを指定します。
    int timeToLive = -1;
    // データテーブルの各属性列に保持できる最大バージョン数を指定します。この例では、各属性列に最大 5 つのバージョンのデータを保持できます。
    int maxVersions = 5;
    // 現在のシステム時刻と書き込まれたデータのタイムスタンプの最大差を指定します。この例では、最大差は 86,400 秒(1 日)に設定されています。
    long maxTimeDeviation = 86400L;
    TableOptions tableOptions = new TableOptions(timeToLive, maxVersions, maxTimeDeviation);
    // データテーブルに対する UpdateRow 操作を許可することを指定します。
    tableOptions.setAllowUpdate(true);
    
    // Stream 機能を有効にし、ストリームの有効期間を 24 時間に設定します。
    //StreamSpecification streamSpecification = new StreamSpecification(true, 24);
    
    // データテーブルの名前を指定します。
    UpdateTableRequest request = new UpdateTableRequest("<TABLE_NAME>");
    request.setTableOptionsForUpdate(tableOptions);
    client.updateTable(request);
}

ハイパフォーマンスインスタンスのデータテーブルの予約済みスループットを更新する

ハイパフォーマンスインスタンスのデータテーブルの予約済みスループットを更新する方法の例を次のサンプルコードに示します。

private static void updateTable(SyncClient client) {
    // 新しい予約済み読み取りスループットを 1 に、新しい予約済み書き込みスループットを 1 に設定します。キャパシティインスタンスのデータテーブルの場合、予約済み読み取りおよび書き込みスループットは 0 のみに設定できます。
    ReservedThroughput reservedThroughput = new ReservedThroughput(new CapacityUnit(1, 1));
    
    // データテーブルの名前を指定します。
    UpdateTableRequest request = new UpdateTableRequest("<TABLE_NAME>");
    request.setReservedThroughputForUpdate(reservedThroughput);
    client.updateTable(request);
}

参照

  • API 操作の詳細については、UpdateTable を参照してください。

  • テーブルの構成を更新した後、次の操作を実行できます。