使用 Amazon Keyspaces 多區域複寫,您可以在所選 AWS 區域使用自動化、全受管、主動-主動複寫來複寫資料。您可以透過區域性降級,改善可用性和復原力,同時也可從全球應用程式的低延遲本機讀取和寫入中獲益。使用多區域複寫,Keyspace 會在區域之間非同步複寫資料,而通常不到一秒內資料就會開始傳播。多區域複寫還消除了解決更新衝突和修正資料差異問題的困難工作,讓您能專注於應用程式。您只需在 AWS 管理主控台上按幾下,或使用 AWS SDK 或 CLI,即可建立新的多區域 Keyspace。如需進一步了解,請參閱 Keyspace 開發人員指南。
運作方式
建立多區域 Keyspace 時,它會由多個複寫 Keyspace 組成 (每個 AWS 區域一個),且系統將這些 Keyspace 視為單一單元。每個區域使用相同的資料表結構描述。應用程式在一個區域中寫入資料時,Keyspace 會使用儲存式非同步複寫在區域間傳播寫入,複寫延遲通常低於一秒,不會影響應用程式的可用性。萬一發生單一區域故障,您只需將應用程式指向多區域 Keyspace 中其他一個正常運作的區域。由於多區域 Keyspace 中的所有區域都支援讀取和寫入,因此不會影響應用程式的可用性。降級的區域重新上線後,Keyspace 會自動同步任何遺失的資料。
優勢
在全球範圍內讀寫資料,延遲時間僅個位數毫秒
在 Keyspace 中,複寫是主動-主動模式。現在您能在離客戶最近的區域,在任何規模下以個位數毫秒的延遲從本機提供讀取和寫入。 透過多區域複寫功能,您可以將 Keyspace 用於任何需要在全球各地快速回應的應用程式。
改善業務持續性,並防止單一區域降級
透過多區域複寫,您只需將應用程式重新導向至多區域 Keyspace 中的不同區域,即可從單一 AWS 區域降級中復原。由於 Keyspace 提供主動-主動複寫,因此不會影響讀取和寫入。Keyspace 持續追蹤已對多區域 keyspace 執行的任何寫入,但尚未傳播到所有複寫區域。區域重新上線時,Keyspace 會自動同步所有遺失的變更,讓您無需影響應用程式的可用性即可復原。
跨區域高速複寫
多區域複寫使用快速、以儲存為基礎的實體跨區域複寫資料,複寫延遲通常不到一秒。由於複寫不共用運算資源,所以對資料庫查詢幾乎沒有影響。這樣一來,您可以處理高寫入輸送量或突發使用案例,而不會對應用程式的可用性造成任何影響。
一致性和衝突解決
在多區域 Keyspace 中,對資料所做的任何變更都會複寫到其他區域。若應用程式約同時更新不同區域中的同一資料,則可能會發生衝突。為協助確保最終一致性,Keyspace 會使用儲存格層級時間戳記,以及在並行更新之間採用「最後寫入者勝出」的衝突解決。衝突解決為全受管且在背景執行,不會影響應用程式的可用性。