我想獲取過去24小時的所有項目。我已經做了一些谷歌搜索,看起來用DynamoDB做起來並不容易。Amazon DynamoDB獲取過去24小時內的所有項目
我在想是否可以使用常用散列鍵和時間戳字段作爲排序鍵創建二級索引。因此,我可以使用條件時間戳>(DateTime.Now - 24h)查詢時間戳。有人可以評論這個,如果這是一種可能的方式或有另一個想法?
其實,我只需要我的表中不超過24小時的物品。因此,另一個想法是每小時清理一次表格並刪除24小時以前的所有項目。這可能嗎?
編輯:另一個想法是創建一個二級索引與日期作爲散列鍵和時間作爲排序鍵,然後執行兩個查詢。第一個日期='今天',第二個日期='昨天',條件準時。但是,我如何將日期和時間存儲爲字符串或整數?這會比我上面的想法更好嗎?
您的第一個建議選項聽起來不錯。你認爲執行24個「小」查詢而不是2個「大」查詢會更高效嗎?我是否應該將這些值作爲日期格式爲yyyyMMdd和時間格式HH:ss的字符串存儲,或者考慮到性能將其存儲爲數值?第二個選項聽起來很有趣,但目前它太複雜了。 –
如果您擁有足夠的預置容量來並行運行它們,那麼24個查詢可能會更快,但否則它們之間的差異不會太大 –