[英]How to loop over get_item in AWS lambda python
我有 2 個 dynamodb,兩個表id
都是短鍵。 兩個表的樣品 json 如下
表格1
[{"id": 1,"completed": false }, {"id": 2, "completed": false }]
表2
[{"id": 13,"completed": false }, {"id": 2, "completed": false }]
代碼如下
table1 = dynamodb.Table('employee1')
table2 = dynamodb.Table('employee2')
for eid in listofeid:
repsonse = table.get_item(Key={'id': eid})
表 1 是要與表 2 檢查的主表 我需要比較表 1 和表 2 如果兩個表中都存在 id 則使用get_item
檢索數據
我需要測試 100 個 id
我已經完成了 Table.scan()。 如何處理 table.get_item
好吧,簡單的解決方案就是分別對兩個表的 100 個 id 執行BatchGetItem
,然后在應用程序中執行交集。
有人可能會說這是低效的——即使每個表中只有 50 個 id 並且交集只有 10 個項目,您仍然需要為 200 次讀取付費。 問題是替代解決方案是否會更有效。 答案可能是——有點,但不是很多。 一個單表解決方案(如 Kirk 所建議的)將允許您僅用 100 次讀取來完成此操作。 但是沒有什么神奇的方法可以讓你立即找到交叉點,只需支付閱讀交叉點的費用。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.