地區類型

本頁說明 Spanner 提供的不同區域類型:

  • 讀取/寫入地區
  • 唯讀地區
  • 見證地區

讀取/寫入地區

每個雙區域設定都有兩個讀取/寫入區域,且這兩個區域均包含兩個讀取/寫入備用資源和一個見證備用資源。讀寫備用資源的行為與多地區設定的讀寫備用資源類似。

每個多地區設定都包含兩個讀寫地區,且這兩個地區均包含兩個讀寫備用資源

其中一個讀取/寫入區域會指定為預設主要區域。系統會從每個分割的預設主要區域中選取備用資源做為領導者。如果主要備用資源發生故障,預設主要地區的其他備用資源會自動成為主要備用資源。事實上,主要備用資源會自行檢查健康狀態,如果偵測到不健康的狀態,就會先行放棄主要備用資源的資格。在大多數情況下,當預設主要區域恢復正常狀態時,該區域的副本會自動重新擔任領導者。

寫入作業會先在預設主要區域處理。您可以使用 instance/leader_percentage_by_region 監控指標,監控特定區域內的副本百分比。詳情請參閱「Spanner 指標」。

第二個讀取/寫入區域包含其他副本,可提供讀取服務,並參與投票確認是否寫入。第二個讀取/寫入區域中的這些額外副本有資格成為主要副本。萬一預設主要區域的所有副本都遺失,系統會從第二個讀取/寫入區域選擇新的主要副本。

如要設定資料庫的主要區域,請按照「變更資料庫的主要區域」一文中的操作說明進行。詳情請參閱「設定預設主要區域」。

您也可以選擇授予非主要讀取/寫入地區「讀取租約地區」狀態。讀取租用期區域可協助資料庫減少雙區域或多區域執行個體中的強烈讀取延遲時間。不過,使用讀取租約時,寫入作業的延遲時間會較長。

唯讀地區

唯讀地區含有唯讀備用資源,可對位於讀取/寫入地區以外的用戶端提供低延遲讀取。唯讀備用資源會維護從讀寫備用資源複製的完整資料複本。不會參與投票確認是否寫入,也不會造成任何寫入延遲。

部分基本多地區設定包含唯讀備用資源。您也可以建立自訂執行個體設定,並在自訂區域和多區域執行個體設定中新增唯讀備用資源,以調度讀取作業及支援低延遲過時讀取。 所有唯讀副本都須支付運算能力和資料庫儲存空間費用

此外,在執行個體設定中新增唯讀副本不會變更執行個體設定的 Spanner 服務水準協議。詳情請參閱「唯讀副本」。

如要減少需要同步一致性的交易讀取延遲時間,您可以選擇授予非主要備用資源的唯讀地區讀取租約地區狀態。讀取租約區域可協助資料庫減少雙區域或多區域執行個體中的強讀取延遲時間。不過,使用讀取租約時,寫入作業的延遲時間會較長。

見證地區

見證區域含有見證副本,用來形成寫入仲裁,並對寫入作業進行投票。每個 Spanner 變異作業都需要由多數投票備用資源組成的寫入仲裁 (如果是雙區域設定,仲裁需要兩個區域的兩個備用資源)。在讀取/寫入地區無法使用的情況下,見證地區便至關重要。只有雙區域和多區域設定包含見證區域。如要進一步瞭解領導者區域和投票副本,請參閱「複寫」。

後續步驟