2016-08-29 22 views
0

我有一張表(key=usernamevalue=male or female)和一個值的索引。如何通知DynamoDB上正在更新的索引?

在向表中添加項目後,我想更新男性和女性的計數。 但是,成功寫入後,由於索引是全局二級索引,所以計數查詢不一致。

有沒有一種方法(發電機db Streams,Lambda,...)來監視索引何時更新?

請注意,我沒有尋找涉及其他方面的解決方案(在Redis中保持增量的計數或...),我在這裏描述的是一個簡化的問題,特別是問一個關於如何監視索引的問題發電機。

謝謝!

+1

據我所知,沒有辦法通知GSI的更新。因此,您無法監視它何時處於最新狀態。 – readyornot

回答

0

我不確定當前是否提供了任何機制來檢查此問題,但是,您可以通過向查詢添加一行代碼輕鬆解決此問題。

ConsistentRead = True 

DynamoDB有一個參數設置爲true時,將確保您獲得最新的更新值。

現在,當您添加/更新項目,然後查詢數據添加C​​onsistentRead選項時,這將確保您將擁有最新的計數值。

這裏是參考link.

如果您能夠使用其他技術則請分享來完成。

希望有所幫助。

+0

不幸的是,發電機禁止在索引上進行一致的讀取。 – Thomas

+0

是的,只有LSI支持一致的讀取。 –