簡體   English   中英

aws dynamo db吞吐量

[英]aws dynamo db throughput

關於AWS DynamoDb吞吐量,我無法理解。

讓我們考慮強一致的讀取。

現在,我知道在這種情況下,1個容量單位意味着我可以讀取高達每秒4KB的容量。

這是“每秒”一點讓我有點困惑。 如果您確切知道要讀取數據的速度,則可以適當地設置單位。 但是如果你對閱讀時間不太挑剔怎么辦?

假設我只有1個讀取單元分配給我的表,我嘗試讀取超過4KB的項目。 現在肯定只是意味着我的閱讀時間超過1秒? 那沒關系,但文檔談到請求失敗。 當我沒有請求在特定時間內讀取數據時,AWS如何確定我使用了太多單元?

也許我錯過了一些明顯的東西。 你能幫忙解決這個問題嗎?

DynamoDB可以在突發容量中消耗長達300秒的未使用吞吐量。

DynamoDB中的最大項目大小為400KB,1 RCU最多可讀取4KB。

假設您想要讀取400KB大小的項目,並且您的桌面上有1個RCU。 您可以每100秒檢索一次該項目。

由於爆破容量,總有一段時間你可以讀取該項目,因為事實上你可以一次使用多達300個RCU,而不僅僅是1。

想象一下,用400KB的項目啟動表。 您需要等待100秒而不需要花費任何RCU,這樣您就可以獲得足夠的爆破容量來獲取物品。 101秒后,您提出請求,花費100 RCU並獲得該項目。 再過5秒鍾后,您再次發出請求,但拒絕接受限制異常。

所以不,DynamoDB不會增加請求延遲以滿足您的RCU規定。 它要么盡可能快地返回結果,要么拋出異常。

編輯:順便提一下,我應該提到所有AWS DynamoDB SDK都會為您處理限制異常。 如果您嘗試讀取某個項目但由於沒有足夠的可用吞吐量而被拒絕,則SDK會退出並重試。 因此,除非您的表真的不在配置狀態,否則您不必擔心處理限制異常。

暫無
暫無

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

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