本文介绍如何通过 Java SDK 为全局表增加一个或多个分布位置。
注意事项
绑定操作返回成功后,系统会异步绑定新的副本并同步数据,可通过调用DescribeGlobalTable查看全局表的当前状态。当返回状态为active时,表示全局表新副本绑定成功。
前提条件
方法说明
public BindGlobalTableResponse bindGlobalTable(BindGlobalTableRequest request) throws TableStoreException, ClientException示例
private static void bindGlobalTableExample(SyncClient client) {
// 构造请求
BindGlobalTableRequest request = new BindGlobalTableRequest(
// 全局表 ID
"gt-ee1b54db-f5d9-43f3-ad36-ec44********",
// 全局表名称
"my-global-table"
);
// 构建 Placement 列表(至少有一个副本配置)
List<GlobalTableTypes.Placement> placements = new ArrayList<>();
// 示例:添加华东1(杭州)地域的副本
GlobalTableTypes.Placement hangzhouReplica = new GlobalTableTypes.Placement(
// 副本所在地域 ID
"cn-hangzhou",
// 副本所属实例名称
"instance-replica-hz",
//主备模式下副本表不可写(默认值 false)
false
);
// 示例:添加华东2(上海)地域的副本
GlobalTableTypes.Placement shanghaiReplica = new GlobalTableTypes.Placement(
// 副本所在地域 ID
"cn-shanghai",
// 副本所属实例名称
"instance-replica-sh",
// 主备模式下副本表不可写(默认值 false)
false
);
placements.add(hangzhouReplica);
placements.add(shanghaiReplica);
request.setPlacements(placements);
// 发起请求
BindGlobalTableResponse response = client.bindGlobalTable(request);
System.out.println("Bind succeeded. Request ID: " + response.getRequestId());
}该文章对您有帮助吗?