我已经创建了一个名为 orders . 我的分区键(哈希键)是 orderId 排序键(范围键)是 storeId .我可以用这两个键把记录放在我的表中。但是现在我有一个需求,需要用 storeId 它可以是一个值列表。但是,我在java中没有看到任何api使用range键获取值。有人能帮我吗?
orders
orderId
storeId
vaj7vani1#
当涉及到从dynamodb获取数据时,您可以使用两种方法; query 以及 scan .这个 query 当您想按项目的主键查找该项目时,此操作是用于此操作的。在你的例子中,这意味着你知道 orderId 以及 storeId (或者只是 orderId )这个 scan 此操作用于使用分区键以外的属性获取数据。这就是你需要用来取回物品的方法 storeId .但是,您可能会看到避免 scan 尽可能操作。这是因为 scan 操作必须读取整个数据库才能获取感兴趣的项。为了避免这种情况,可以在 storeId 字段,该字段允许您通过 storeId 使用 query 操作。
query
scan
1条答案
按热度按时间vaj7vani1#
当涉及到从dynamodb获取数据时,您可以使用两种方法;
query
以及scan
.这个
query
当您想按项目的主键查找该项目时,此操作是用于此操作的。在你的例子中,这意味着你知道orderId
以及storeId
(或者只是orderId
)这个
scan
此操作用于使用分区键以外的属性获取数据。这就是你需要用来取回物品的方法storeId
.但是,您可能会看到避免
scan
尽可能操作。这是因为scan
操作必须读取整个数据库才能获取感兴趣的项。为了避免这种情况,可以在storeId
字段,该字段允许您通过storeId
使用query
操作。