Java SDK を使用して、グローバルテーブルから 1 つ以上のディストリビューションロケーションを削除します。
注意事項
ディストリビューションロケーションのデタッチは、レプリカテーブルとグローバルテーブル間の関連付けを削除するのみです。レプリカテーブルとそのデータは保持されます。レプリカテーブルを削除するには、別途 DeleteTable 操作を呼び出してください。
この操作は非同期でデタッチリクエストを開始します。デタッチが完了したかどうかを確認するには、グローバルテーブル情報のクエリ 操作を呼び出し、グローバルテーブルのステータスを確認してください。ステータスが
activeに変更されると、デタッチが完了しています。
前提条件
作業を開始する前に、クライアントの初期化 を完了していることを確認してください。
メソッドの説明
public UnbindGlobalTableResponse unbindGlobalTable(UnbindGlobalTableRequest request) throws TableStoreException, ClientException
コード例
private static void unbindGlobalTableExample(SyncClient client) {
// リクエストを構築します。
UnbindGlobalTableRequest request = new UnbindGlobalTableRequest(
// グローバルテーブル ID。
"gt-ee1b54db-f5d9-43f3-ad36-ec44********",
// グローバルテーブル名。
"my-global-table"
);
// 削除するレプリカのリスト (Removals) を構築します。
List<GlobalTableTypes.Removal> removals = new ArrayList<>();
// 中国 (杭州) リージョンのレプリカを削除します。
GlobalTableTypes.Removal hangzhouRemoval = new GlobalTableTypes.Removal(
// レプリカが配置されているリージョン ID。
"cn-hangzhou",
// レプリカが属するインスタンス名。
"instance-replica-hz"
);
// 中国 (上海) リージョンのレプリカを削除します。
GlobalTableTypes.Removal shanghaiRemoval = new GlobalTableTypes.Removal(
// レプリカが配置されているリージョン ID。
"cn-shanghai",
// レプリカが属するインスタンス名。
"instance-replica-sh"
);
removals.add(hangzhouRemoval);
removals.add(shanghaiRemoval);
request.setRemovals(removals);
// リクエストを送信します。
UnbindGlobalTableResponse response = client.unbindGlobalTable(request);
System.out.println("Unbind start. Request ID: " + response.getRequestId());
}