關於讀取集區

Cloud SQL 讀取集區支援大型讀取工作負載的負載平衡。

什麼是讀取集區?

讀取集區是一組唯讀副本執行個體,用於分配大量讀取工作負載。這些工作負載可以從主要執行個體重新導向至讀取集區,以減輕主要執行個體的負擔。

讀取集區中的每個唯讀副本都稱為「讀取集區節點」

您可以透過多種方式擴充讀取集區:

  • 擴大或縮減:修改讀取集區中的讀取集區節點數量,即可水平調整負載平衡容量。每個讀取集區支援 1 到 20 個讀取集區節點。
  • 向上或向下擴充:修改與讀取集區節點相關聯的機型,即可垂直擴充負載平衡容量。定義完成後,系統會將設定統一套用至讀取集區中的每個讀取集區節點。

修改讀取集區節點設定 (例如儲存空間、連線或資料庫設定標記) 時,系統會自動將變更內容套用至讀取集區中的每個讀取集區節點。

讀取集區可透過單一讀取端點存取,且 IP 位址不可變更。透過端點建立的連線會自動重新導向至其中一個唯讀集區節點。當您希望讀取集區擴大或縮小時,先前連線至這個單一讀取端點的應用程式不需要重新設定,即使您可以在讀取集區中建立新的讀取集區節點或刪除先前的節點也一樣。

每個讀取集區節點也都有自己的 IP 位址。雖然不建議使用這些 IP 位址做為存取資料的有效方法,但您可以用來排解個別讀取集區節點的效能問題。

如要進一步瞭解如何擷取讀取集區或讀取集區節點的連線資訊 (IP 位址或連線字串),請參閱「查看讀取集區資訊」。

須符合下列特徵:

  • 讀取集區的讀取集區節點一律位於同一區域,如使用者所指定。 Google Cloud 會在該區域的所有可用區之間,輪流指派讀取集區節點。
  • 主要執行個體可有一或多個讀取集區。
  • 下列作業會導致停機時間不到一秒:
    • 擴大或縮減規模 (新增或移除讀取集區節點)。
    • 向上或向下調整 (變更集區中節點的機器類型)。
    • 將現有的區域唯讀副本轉換為唯讀集區。
  • 讀取集區的維護作業會在主要執行個體之前執行,與唯讀副本類似。與唯讀副本一樣,讀取集區會在主要執行個體的維護期間進行維護。
  • 每個讀取集區節點都有與 Cloud SQL 唯讀備用資源相同的可用指標。
  • 使用 gcloud 或 Google Cloud 控制台說明專案詳細資料時,系統會列出讀取集區名稱,但不會列出個別讀取集區節點名稱。

限制

限制如下:

  • 讀取集區僅適用於新版網路架構上的 Cloud SQL Enterprise Plus 版本執行個體。與讀取集區相關聯的主要執行個體也必須是 Cloud SQL Enterprise Plus 版本執行個體。
  • 系統會根據資料庫是否正常運作,從讀取集區節點提供流量,但不會考量該讀取集區節點的複製延遲時間。即使有其他未延遲的讀取集區節點可用,系統仍可能從延遲的讀取集區節點提供流量。如果資料庫程序已啟動且可回應查詢,即視為健康狀態,但系統不會要求服務的資料必須是最新狀態。
  • 無法保證單一邏輯工作階段會連線至讀取集區中的多個讀取集區節點。工作階段中稍後的要求可能會連線至複製位置 (LSN) 低於服務先前要求的唯讀集區節點,這可能會導致資料庫狀態回溯。
  • 系統不支援下列類型的更新:
    • 雖然讀取集區仍會收到 Cloud SQL 維護更新,但您無法將讀取集區更新為新的主要資料庫版本。
    • 啟動或停止讀取集區的節點
  • 除了唯讀備用資源不支援的作業外,唯讀集區也不支援下列作業:
    • 升級備用資源
    • 重新啟動
    • import
    • 匯出
    • 容錯移轉
    • 重新加密
    • clone
  • 下列功能無法與讀取集區搭配使用:
    • Private Service Connect
    • 使用共用 CA 或客戶管理的 CA 取得 SSL/TLS 憑證
  • 讀取集區無法複製到其他執行個體,例如連鎖備用資源或其他讀取集區。
  • 讀取集區必須直接從主要執行個體複製資料。不能是串聯式備用資源。
  • 如要將區域唯讀備用資源轉換為唯讀集區,請先將區域唯讀備用資源轉換為區域唯讀備用資源。
  • 建立或擴充讀取集區時,您必須等待與讀取集區相關聯的先前建立集區、縮減或擴充作業完成。這項限制適用於與相同主要執行個體相關聯的任何其他讀取集區。如要擴充與相同主要執行個體相關聯的多個讀取集區,請先等待與第一個讀取集區相關聯的擴充作業完成,再開始擴充下一個讀取集區。如果您發出並行要求,可能會收到下列錯誤:Operation failed because another operation was already in progress.
  • 只有與主要執行個體位於相同區域的區域備用資源,才能轉換為讀取集區使用。
  • 同時變更讀取集區節點的機器類型時,您無法新增或移除讀取集區節點。
  • 如果應用程式必須連線至專屬唯讀備用資源 (例如,因為特定唯讀備用資源上存在次要索引),請建立 Cloud SQL 唯讀備用資源並改用該資源。
  • 您無法查詢與讀取集區相關聯的特定使用者和資料庫。由於 Cloud SQL Studio 依賴使用者和資料庫提供的資料,因此不支援讀取集區。

後續步驟