2014-05-25 40 views
0

我們正在將我們的MYSQL數據庫遷移到DynamoDB。 DynamoDb針對我們網站的問題是我們有很多I/O。由於高I/O,dynamoDB的成本顯着增加。我的問題最好作爲例子:是dynmodbo中一個關鍵字的兩個結果,計爲兩個I/O?

假設我跟蹤用戶的消息。假設用戶ID是Key。因此,我們有一個用戶Id 1.並且消息編號是增量值中的範圍鍵。我們有三條消息,1,2,3。我會爲你製作一張桌子

Key .... Range .......消息
1 ....... 1 .............. ..UK選擇新PM
1 ....... 2 ...............美國天氣很冷
1 ....... 3 ... ............ Google Funds

假設我做了一個查詢,其中顯示All Key = 1和Range> 1的顯示消息。這將返回2個項目。消息2和3將返回。

由於兩條記錄被返回,發電機數據庫是否將兩個I/O計數?或者,dynamoDB會將這個記錄計爲一條記錄,因爲查詢是針對一個鍵運行的。

回答

0

這可能會計爲1個I/O或2個I/O甚至更多,因爲它取決於您的行的大小。

的確切定義: 的讀取容量單位代表每秒一個強烈的一致讀取(或兩個每秒最終一致性讀取)的條目一樣大,4 KB

所以,如果你的行是非常大的(100 KB),然後你的查詢返回2個,那麼它將是100 * 2/4 = 50個I/O。這裏的I/O與預置吞吐量中使用的單位相同。

官方文檔是here

相關問題