【发布时间】:2018-07-18 18:20:43
【问题描述】:
我有两个当前的表
用户表:
| user_id (主键) |该用户拥有的设备地图 |
事件表:
| id_device(主键) |时间戳(排序键)|数据栏 |绑定到此设备的用户地图,例如 [ {user_id: "A"}, {user_id: "B"} ] |
user_id:1 可以有多个设备,例如 1,2,3,4 user_id:2 也可以修改相同的设备并拥有不同的设备,例如 2,3,4,5
事件表实际上是网络上任何设备生成的最新事件,随着事件的发生,表会变大。
我希望能够通过用户查询设备的最新事件。
方法一:我原本打算使用 dynamoDB API (BatchGetItem) 并将设备映射作为键传递。但是,我不能这样做,因为我需要提供时间戳。
有没有办法扫描/查询“绑定到此设备的用户地图”列,例如仅过滤地图中的“A”用户?我知道不推荐扫描
方法2:只有id_device的二级索引作为主键。查询每个是否最新事件并进入“绑定到此设备的用户地图”地图以查看所有者是否在那里。如果是这样,则追加到要返回的空数组。
还有其他人有什么建议吗?谢谢!
【问题讨论】:
标签: amazon-web-services amazon-dynamodb aws-sdk aws-api-gateway