全部產品
Search
文件中心

Tablestore:查詢全域表資訊

更新時間:Jan 09, 2026

本文介紹如何通過Java SDK查詢全域表的詳細資料。

前提條件

初始化用戶端

方法說明

public DescribeGlobalTableResponse describeGlobalTable(DescribeGlobalTableRequest request) throws TableStoreException, ClientException

DescribeGlobalTableRequest參數說明

  • globalTableId(必選)String:全域表ID。

    說明

    如果未記錄全域表ID,可通過調用DescribeTable操作查詢表副本的詳細資料。當表副本屬於全域表時,DescribeTable操作的返回結果中會包含對應全域表ID。

  • globalTableName(必選String:全域表名稱,必須與基礎資料表名稱相同。

  • returnRpo(可選)boolean:是否同時返回RPO。預設值為false,表示不返回。返回RPO耗時較長,非必要時不建議使用。

  • phyTable(可選)GlobalTableTypes.PhyTable:篩選物理表的條件,包含以下參數:

    名稱

    類型

    說明

    regionId(可選)

    String

    物理表所在地區ID。

    instanceName(可選)

    String

    物理表所在執行個體名稱。

DescribeGlobalTableResponse傳回值說明

  • globalTableId(必選)String:全域表ID。

  • status(必選)GlobalTableTypes.GlobalTableStatus:全域表狀態。取值如下:

    狀態

    說明

    INIT

    初始化中。全域表第一次建立後進入初始化狀態。

    RE_CONF

    重新設定中。全域表的所有的副本或者部分複本在配置中。配置中可能是建表、同步歷史資料或綁定解除綁定全域表的成員導致。

    ACTIVE

    已啟用。

  • phyTables(必選)List<PhyTable>:物理表資訊,包含以下參數:

    名稱

    類型

    說明

    regionId(必選)

    String

    物理表所在地區ID。

    instanceName(必選)

    String

    物理表所在執行個體名稱。

    tableName(必選)

    String

    物理表名稱。

    status(必選)

    PhyTableStatus

    物理表狀態。取值如下:

    • PENDING:排隊中。等待其他副本表配置完成後繼續處理。

    • INIT:初始化中。建立或配置副本表中。

    • SYNCDATA:同步中。同步存量資料,並開啟增量資料同步。

    • READY:準備完成。副本表存量資料同步完成且增量通道開啟完成,不可寫。

    • ACTIVE:已啟用,同步中。副本表可正常讀寫。

    • UNBINDING:解除綁定中。正在從當前全域表上解除綁定。解除綁定時未刪除當前副本表和表資料。

    • UNBOUND:已解除綁定。當前副本表已從全域表中解除綁定。解除綁定時未刪除當前副本表和表資料。

    statusTimestamp(可選)

    long

    狀態更新時間戳記。單位為毫秒。

    writable(必選)

    boolean

    是否可寫。

    role(可選)

    String

    物理表在服務模式中的角色。

    rpo(可選)

    Instant

    物理表當前資料的RPO。

    tableId(可選)

    String

    物理表ID。

    stage(可選)

    SyncStage

    資料同步階段。

    isFailed(必選)

    boolean

    是否處於失敗狀態。

    message(可選)

    String

    物理表狀態附加資訊(例如失敗原因)。在建立全域表或綁定解除綁定同步關係時,如果處理過程出現失敗IsFailed,則會顯示相應原因。

樣本

private static void describeGlobalTableExample(SyncClient client) {
    // 構造請求
    DescribeGlobalTableRequest req = new DescribeGlobalTableRequest(
        // 全域表 ID。
        "gt-ee1b54db-f5d9-43f3-ad36-ec44********",
        // 全域表名稱
        "t-gt-test-1"
    );

    // 發起請求
    DescribeGlobalTableResponse descResp = client.describeGlobalTable(req);

    // 輸出全域表基本資料
    System.out.println("Status: " + descResp.getStatus());
    System.out.println("Global Table ID: " + descResp.getGlobalTableId());

    // 輸出副本部署資訊(Placement)
    List<GlobalTableTypes.PhyTable> placements = descResp.getPhyTables();
    for (GlobalTableTypes.PhyTable p : placements) {
        System.out.println("Replica in " + p.getRegionId() +
                ", Instance: " + p.getInstanceName() +
                ", Writable: " + p.isWritable());
    }
}