在 Azure Cosmos DB for PostgreSQL 叢集中重新平衡分區

適用於: Azure Cosmos DB for PostgreSQL (由 Citus 資料庫延伸模組支援 PostgreSQL)

若要利用新增的節點,請重新平衡分散式資料表分區。 重新平衡會將分區從現有的節點移至新的節點。 Azure Cosmos DB for PostgreSQL 提供零停機的重新平衡,這表示查詢會在分區重新平衡期間繼續執行,而不中斷。

判斷叢集是否平衡

Azure 入口網站會顯示資料是否平均分散至叢集的背景工作角色節點之間。 從 [叢集管理] 功能表中,選取 [分區重新平衡器]

  • 如果背景工作角色之間的資料傾斜,則您會看到 [建議重新平衡] 訊息以及每個節點的大小清單。

  • 如果已平衡資料,則您會看到 [目前不建議重新平衡] 訊息。

執行分區重新平衡器

若要啟動分區重新平衡器,請連線至叢集的協調器節點,然後在分散式資料表上執行 rebalance_table_shards SQL 函式。

此函式會在其引數指名的資料表共置群組中重新平衡所有資料表。 您不必針對每個分散式資料表呼叫此函式。 相反地,在每個共置群組中的代表性資料表上呼叫它。

SELECT rebalance_table_shards('distributed_table_name');

監視重新平衡進度

您可以從 Azure 入口網站檢視重新平衡進度。 從 [叢集管理] 功能表中,選取 [分區重新平衡器]。 即會顯示 [重新平衡訊息正在進行中] 訊息以及兩個資料表:

  • 第一個資料表顯示移入或移出節點的分區數目。 例如,「已移入 6/24」。
  • 第二個資料表顯示每個資料庫資料表的進度:名稱、受影響的分區計數、受影響的資料大小,以及重新平衡狀態。

選取 [重新整理] 以更新頁面。 重新平衡完成時,您會看到 [目前不建議重新平衡] 訊息。

下一步