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

Tablestore:テーブルオプションの更新

最終更新日:Aug 05, 2026

Tablestore SDK for Java を使用して、Wide Column モデルのテーブルのデータライフサイクル、最大バージョン数、最大バージョンオフセット、更新権限、ストリーム、および予約済みスループットの設定を更新します。

前提条件

Tablestore SDK for Java をインストールし、クライアントを初期化します。

機能の説明

updateTable を呼び出して、テーブルのテーブルオプション、ストリーム設定、または予約済みスループットを更新します。各リクエストでは、少なくとも 1 つの設定グループを指定する必要があります。TableOptions を更新する場合は、少なくとも 1 つのテーブルオプションを指定してください。

public UpdateTableResponse updateTable(UpdateTableRequest request) throws TableStoreException, ClientException

次のサンプルコードは、example_table テーブルのデータライフサイクル、最大バージョン数、最大バージョンオフセット、および更新権限を更新します。

UpdateTableRequest request = new UpdateTableRequest("example_table");

TableOptions tableOptions = new TableOptions();
tableOptions.setTimeToLive(86400);
tableOptions.setMaxVersions(3);
tableOptions.setMaxTimeDeviation(86400L);
tableOptions.setAllowUpdate(false);
request.setTableOptionsForUpdate(tableOptions);

client.updateTable(request);

パラメーター

UpdateTableRequest には、次のパラメーターが含まれます。

名前

タイプ

説明

tableName (必須)

String

テーブルの名前。

tableOptionsForUpdate (オプション)

TableOptions

更新するテーブルオプション。少なくとも 1 つのテーブルオプションを指定する必要があります。

streamSpecification (オプション)

StreamSpecification

ストリーム設定。

reservedThroughputForUpdate (オプション)

ReservedThroughput

予約済み読み取り/書き込みスループットの設定。ゼロ以外の値は、CU モードのコンピューティング最適化インスタンスに対してのみ指定できます。

tableOptionsForUpdatestreamSpecificationreservedThroughputForUpdate のうち、少なくとも 1 つを指定する必要があります。

テーブルオプション

tableOptionsForUpdateTableOptions 型で、次のパラメーターが含まれます。

名前

タイプ

説明

timeToLive (オプション)

Integer

データの有効期間 (TTL) を表します。単位は秒です。値 -1 は、データが期限切れにならないことを指定します。その他の値の場合、最小値は 86400 (1 日) です。TTL を超えたデータは自動的に削除されます。検索インデックスまたはセカンダリインデックスを使用するには、このパラメーターを -1 に設定するか、allowUpdatefalse に設定します。

maxVersions (オプション)

Integer

各属性列について保持するバージョンの最大数です。検索インデックスまたはセカンダリインデックスを使用するには、このパラメーターを 1 に設定します。

maxTimeDeviation (オプション)

Long

最大バージョンオフセット。単位は秒です。データのタイムスタンプと現在のシステム時刻の差は、最大バージョンオフセット以内でなければなりません。属性列データの有効なバージョン範囲は [max(Data write time - Maximum version offset, Data write time - TTL), Data write time + Maximum version offset) です。

allowUpdate (オプション)

Boolean

updateRow を呼び出してデータを更新できるかどうかを指定します。このパラメーターが false に設定されている場合、データは更新できません。

重要

updateFullRow は、テーブルを作成するときにのみ設定できます。updateTable を呼び出して変更することはできません。

ストリーム設定

streamSpecificationStreamSpecification 型で、次のパラメーターが含まれます。

名前

タイプ

説明

enableStream (必須)

Boolean

ストリームを有効にするかどうかを指定します。

expirationTime (オプション)

Integer

増分ログの保持期間。単位:時間。最大値: 168 (7 日間)。このパラメーターは enableStreamtrue に設定されている場合に必須です。

予約済み読み取り/書き込みスループット

reservedThroughputForUpdateReservedThroughput 型で、次のパラメーターが含まれます。

名前

タイプ

説明

capacityUnit (必須)

CapacityUnit

予約済み読み取り/書き込みスループットの設定。

キャパシティーユニット

reservedThroughputForUpdate.capacityUnitCapacityUnit 型で、次のパラメーターが含まれます。

名前

タイプ

説明

readCapacityUnit (必須)

Integer

予約済み読み取りスループット。単位:CU。

writeCapacityUnit (必須)

Integer

予約済み書き込みスループット。単位:CU。

シナリオ例

ストリーム設定の更新

次のサンプルコードは、example_table テーブルのストリームを有効にし、増分ログの保持期間を 168 時間に設定します。

UpdateTableRequest request = new UpdateTableRequest("example_table");
request.setStreamSpecification(new StreamSpecification(true, 168));

client.updateTable(request);

予約済みスループットの更新

予約済みスループットは、CU モードのコンピューティング最適化インスタンスでのみサポートされます。次のサンプルコードは、example_table テーブルの予約済み読み取りスループットと予約済み書き込みスループットの両方を 0 CU に設定します。

UpdateTableRequest request = new UpdateTableRequest("example_table");
ReservedThroughput reservedThroughput = new ReservedThroughput(0, 0);
request.setReservedThroughputForUpdate(reservedThroughput);

client.updateTable(request);