簡體   English   中英

DynamoDB 單活跨區域復制

[英]DynamoDB single-active cross region replication

我試圖了解 DynamoDB 復制和故障轉移策略,但在 web 上找不到任何闡明它們的文章。 我知道跨區域復制可以通過帶有全局表的 DynamoDB 實現,但我也知道這是一個多活動表設置,這意味着有多個活動表和多個副本表。 是否有單活動表和多個副本的設置? 我在這篇文章中簡要地讀到了這一點,但沒有在其他任何地方找到任何提及,包括 AWS 文檔。

我也在嘗試了解這兩種情況的故障轉移策略——是否有一個 DynamoDB Java 客戶端可以在一個 AZ 中出現讀寫問題時跨 AZ 進行故障轉移?

DynamoDB 全局表始終是主動-主動的,但您可以根據需要將其視為主動-被動。 很多人都這樣做。 如果你想使用條件表達式、事務等特性,或者做任何非冪等的地方,你可以在兩個區域大約同時寫入相同的項目,第二次寫入發生在第一次復制之前,這將很有用,因為這會導致第一個寫入有效地丟失。

要做到這一點,您只需將寫入流量路由到一個區域,而要進行故障轉移,您可以決定何時寫入另一個區域。 如果您願意,故障轉移區域總是很樂意成為活動區域。

至於可用區,DynamoDB 是一項區域服務,這意味着它始終跨越至少 3 個可用區,並且即使整個可用區宕機也能保持正常運行。 你不必為此擔心。

是否有單活動表和多個副本的設置

不幸的是,在使用全局表的 dynamodb 中沒有跨區域的單活動和多副本設置,因此故障轉移策略將針對多個活動表和多個副本表! - 來源 -文檔

來回故障轉移策略

根據文檔

如果單個 AWS 區域變得孤立或降級,您的應用程序可以重定向到不同的區域並對不同的副本表執行讀取和寫入。

這意味着這是默認情況下發生的無縫平滑過程當然您可以在重定向時添加自定義邏輯

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM