2015-09-06 27 views
6

以前,DynamoDB只提供「最終一致性」,服從CAP定理的「Availability」和「Partition Tolerance」部分。DynamoDB是否遵循CAP定理及其「強一致性」承諾?

但是現在,除了「最終一致性」外,DynamoDB還提供了「強一致性」選項。這是否意味着DynamoDB不遵循CAP定理?

+0

您對Dynamo紙張感到困惑,因爲它放棄了可用性的一致性。但DynamoDB與Dynamo完全不同。它具有很強的一致性。 – user8303658

回答

11

DynamoDB,在強烈一致的模式,trades against availability

當你發出一個強烈一致的讀取請求,DynamoDB返回與最先進的最新數據反映了之前所有相關的寫操作更新響應DynamoDB返回了成功響應。 在網絡延遲或中斷情況下,強烈一致的讀取可能不太可用。對於GetItem,Query或Scan操作,您可以通過在請求中指定可選參數來請求強一致的讀取結果。

因此,它違反了沒有理論約束。

+1

也可以將服務的ProvisionedThroughputExceeded(throttling)和InternalServerError(服務端複製動態,網絡問題等)響應視爲不可用。 –