全部產品
Search
文件中心

PolarDB:全球資料庫網路(GDN)

更新時間:Dec 17, 2025

全球資料庫網路(Global Database Network,簡稱GDN)是由分佈於多個地區的多個PolarDB叢集構成的網路。在該網路中,所有叢集的資料保持同步,且每個叢集均可提供讀服務(寫請求將被轉寄至主叢集進行處理)。

功能簡介

全球資料庫網路(GDN)採用一個主叢集(Primary Cluster)和多個從叢集(Secondary Cluster)的架構。主叢集負責處理寫請求,從叢集分布在不同地區,負責處理本地的讀請求。所有叢集之間的資料通過低延遲鏈路保持同步,從而構成一個邏輯統一的資料庫。

image

資料同步機制

GDN通過非同步物理複製機制實現跨地區資料同步。藉助物理日誌並行回放等技術,主從叢集間的資料複寫延遲可控制在2秒以內。這種同步方式不會影響主叢集的效能和穩定性,從而確保了資料在全域範圍內的最終一致性。同時,GDN中的每個叢集均提供讀寫服務,並具備異地災備能力。

讀寫分離與請求路由

GDN中的叢集(主叢集和從叢集)讀寫請求路由,是由每個叢集的資料庫代理配置所決定。您的應用程式無需修改代碼,只需串連到相應叢集的地址,讀寫請求便會按以下邏輯自行路由:

  • 寫請求(如INSERTUPDATEDELETE等)、其他廣播文法(如SET語句)和事務中的所有請求,會被自動轉寄到主叢集的主節點處理。

  • 讀請求預設會路由到本地從叢集的唯讀節點,實現就近訪問。如果開啟了會話一致性,部分讀請求也可能被路由到主叢集的主節點以保證資料一致性。

此外,GDN還提供了一個統一的串連地址,這不僅能夠實現就近訪問,還能在主叢集切換後保持網域名稱不變。

單擊展開查看詳細轉寄邏輯

目標節點

轉寄的請求

只發往主叢集的主節點

  • 所有DML操作(INSERTUPDATEDELETESELECT FOR UPDATE等)。

  • 所有DDL操作(建表或庫、刪表或庫、變更表結構、許可權等)。

  • 所有事務中的請求。

  • 使用者自訂函數。

  • 預存程序。

  • EXECUTE語句。

  • Multi Statements

  • 使用到暫存資料表的請求。

  • SELECT last_insert_id()

  • 所有對使用者變數的查詢和更改。

  • SHOW PROCESSLIST

  • KILL(SQL語句中的KILL,非命令KILL)。

發往唯讀節點或主節點

說明

僅當資料庫代理配置中主庫是否接受讀時會發往主節點。

  • 非事務中的讀請求。

  • COM_STMT_EXECUTE命令。

總是發往所有節點

  • 所有系統變數的更改。

  • USE命令。

  • COM_STMT_PREPARE命令。

  • COM_CHANGE_USERCOM_QUITCOM_SET_OPTION等命令。

說明

從叢集中的主節點主要用於非同步複製主叢集資料,不處理任何讀寫請求。因此,表中的主節點指的是主叢集中的主節點,而唯讀節點則指的是從叢集中的唯讀節點。

應用情境

異地多活(多地部署)

將業務部署在多個地區,通過GDN的跨地區低延遲同步、跨地區讀寫分離以及就近讀取等特性,可確保各地區的應用程式在訪問資料庫時延遲小於2秒。

  • 典型行業:遊戲、跨境電商、本地生活(外賣)、新零售(門店)等。

  • 業務架構

    • 各地區的應用程式均直接就近讀寫本地區的資料庫(寫請求將被轉寄至主叢集進行處理),效能最佳。

    • 在GDN中,每個子叢集(包括主叢集和從叢集)均提供獨立的叢集地址。您可以根據應用所處地區,串連就近的叢集地址以實現訪問。

    • 北京和深圳的從叢集規格需大於或等於杭州的主叢集規格,建議保持一致。

image

異地災備

通過GDN實現跨地區高可用性,提高資料安全性和系統可用性。當主叢集所在的機房或資料中心發生故障時,您只需手動將業務切換至從叢集,即可快速恢複業務。可以支援兩地三中心、兩地四中心、三地六中心等多種架構。

  • 典型行業:銀行、證券、保險等。

  • 業務架構(以兩地三中心架構為例):

    • 北京地區為主地區,採用雙可用性區域部署形態,覆蓋AZ1與AZ2。

    • 上海地區為災備地區,採用單可用性區域部署形態。

    • 應用程式預設對北京地區的AZ1中的資料庫進行本地讀寫,當AZ1發生故障時,優先切換至北京AZ2。若AZ1與AZ2均發生故障時,切換至上海AZ3。

image
說明

GDN中的主從叢集切換可在10分鐘內完成(實際測試結果為5分鐘以內)。在切換過程中,可能會出現不超過160秒的串連閃斷。建議您在業務低穀期進行切換操作,並確保應用具備重連機制。

產品優勢

  • 跨地區部署:無需修改業務代碼,即可直接從同城部署擴充到多地部署。

  • 跨地區讀寫分離及就近讀取:GDN內的讀請求被直接發送至當前地區下的從叢集,寫請求被轉寄至主叢集。

  • 配置靈活:主從叢集擁有相互獨立的配置,包括叢集規格、白名單及參數值等。

  • 跨地區低延時同步:通過非同步物理複製(基於Redo Log)和並行回放等技術,降低主從叢集之間的跨地區複寫延遲。所有叢集間的資料均能保持同步,且網路延遲控制在2秒以內,從而顯著減少了非中心地區應用訪問時的讀取延遲。

適用範圍

叢集配置

  • 產品版本:企業版,且系列為叢集版。

  • 核心版本需為以下版本之一:

    • MySQL 8.0.2

    • MySQL 8.0.1,且核心小版本需為8.0.1.1.17及以上。

    • MySQL 5.7,且核心小版本需為5.7.1.0.21及以上。

    • MySQL 5.6,且核心小版本需為5.6.1.0.32及以上。

  • 節點:需至少包含一個唯讀節點。

支援地區

中國內地所有地區、中國(香港)、日本(東京)、韓國(首爾)、新加坡、馬來西亞(吉隆坡)、印尼(雅加達)、菲律賓(馬尼拉)、泰國(曼穀)、德國(法蘭克福)、美國(矽谷)、美國(維吉尼亞)、英國(倫敦)。

說明

支援跨境部署從叢集,但需提交相關申請,詳細請參見添加從叢集

功能限制

  • 全球資料庫網路(GDN)中的叢集支援使用列存索引(IMCI)功能,但需開啟loose_polar_enable_imci_with_standby叢集參數後,且叢集版本需滿足以下條件之一,才可添加唯讀列存節點。

    • MySQL 8.0.1,且修訂版本為8.0.1.1.48及以上。

    • MySQL 8.0.2,且修訂版本為8.0.2.2.27及以上。

  • GDN中的叢集支援Serverless叢集或在固定規格叢集上開啟Serverless功能。然而,當主叢集的核心版本滿足以下條件時,GDN中的所有叢集至少需要有一個唯讀節點。

    • MySQL 8.0.1,且核心小版本為8.0.1.1.42以下版本。

    • MySQL 8.0.2,且核心小版本為8.0.2.2.23以下版本。

  • GDN中的叢集不支援庫表恢複功能。

其他限制

  • 一個GDN包含一個主叢集和最多四個從叢集。

    說明

    若您需要添加更多從叢集,請前往配額中心,根據配額ID polardb_mysql_gdn_region找到相應的配額項,在對應的操作列上單擊申請,以添加更多從叢集。

  • 一個叢集只能屬於一個GDN。

  • 從叢集只能建立,不支援將已有叢集添加為從叢集。

  • 主叢集和從叢集的資料庫引擎版本需保持一致,即都為MySQL 8.0、MySQL 5.7或MySQL 5.6。

  • GDN中的從叢集(非Serverless叢集)計算節點的規格要求至少為4核及以上。

  • GDN中的每個叢集都預設包含2個節點,最多可增加至16個節點。

費用說明

使用全球資料庫網路(GDN)時,您需要支付的費用包含叢集自身費用和可能產生的跨地區資料轉送費用。其中,資料轉送費用根據傳輸是否跨境進行區分:

  • 非跨境資料轉送(免費)

    • 情境:您的主叢集與從叢集均部署在新加坡等地區,或均部署在中國內地地區。

    • 計費規則:免費。

  • 跨境資料轉送:暫不收費。

說明

若您使用全域網域名稱功能,將會額外產生內網DNS解析費用跨地區流量費用,詳細說明請參見全域網域名稱費用說明

開始使用

  1. 建立與管理全球資料庫網路:選擇適用條件一個的叢集作為全球資料庫網路(GDN)的主叢集。

  2. 添加從叢集:前往PolarDB購買頁,為上述建立的全球資料庫網路(GDN)添加相應的從叢集。

  3. 串連全球資料庫網路:在GDN中,每個子叢集(主叢集和從叢集)均提供獨立的叢集地址。您可以根據應用所在的地區,串連就近的叢集地址以實現訪問。此外,GDN還提供了一個統一的串連地址,這不僅能夠實現就近訪問,還能在主叢集切換後保持網域名稱不變。