這很重要
新專案不再支援適用於 PostgreSQL 的 Azure Cosmos DB。 請勿將此服務用於新專案。 請改用下列兩項服務之一:
使用 Azure Cosmos DB for NoSQL 作為專為高規模應用場景設計的分散式資料庫解決方案,其特色包括99.999% 的可用性服務等級協定(SLA)、即時自動調整,以及跨多個區域的自動容錯移轉。
針對使用開放原始碼超大規模 (Citus) 延伸模組的分區化 PostgreSQL 使用適用於 PostgreSQL 的 Azure 資料庫的彈性叢集功能。
若要利用新增的節點,請重新平衡分散式資料表分區。 重新平衡會將分區從現有的節點移至新的節點。 Azure Cosmos DB for PostgreSQL 提供零停機的重新平衡,這表示查詢會在分區重新平衡期間繼續執行,而不中斷。
判斷叢集是否平衡
Azure 入口網站會顯示資料是否平均分散至叢集的背景工作角色節點之間。 從 [叢集管理] 功能表中,選取 [分區重新平衡器]。
如果背景工作角色之間的資料傾斜,則您會看到 [建議重新平衡] 訊息以及每個節點的大小清單。
如果已平衡資料,則您會看到 [目前不建議重新平衡] 訊息。
執行分區重新平衡器
若要啟動分區重新平衡器,請連線至叢集的協調器節點,然後在分散式資料表上執行 rebalance_table_shards SQL 函式。
此函式會重新平衡其命名引數中共置群組中的所有資料表。 您不需要為每個分散式資料表呼叫函數。 請改為在每個共置群組的代表性資料表上進行呼叫。
SELECT rebalance_table_shards('distributed_table_name');
監視重新平衡進度
您可以從 Azure 入口網站檢視重新平衡進度。 從 [叢集管理] 功能表中,選取 [分區重新平衡器]。 即會顯示 [重新平衡訊息正在進行中] 訊息以及兩個資料表:
- 第一個資料表顯示移入或移出節點的分區數目。 例如,「已移入 6/24」。
- 第二個資料表顯示每個資料庫資料表的進度:名稱、受影響的分區計數、受影響的資料大小,以及重新平衡狀態。
選取 [重新整理] 以更新頁面。 重新平衡完成時,您會看到 [目前不建議重新平衡] 訊息。
後續步驟
- 深入了解叢集效能選項。
- 擴大或擴增叢集
- 請參閱 rebalance_table_shards 參考資料