我是亚马逊网络服务的新手。我想检索dynamo DB表中的所有条目,这些条目在其哈希键中有特定的单词。它类似于在oracle DB中使用like运算符。我该怎么做?如果不可能,我如何检索表中的所有条目而不对哈希键给出任何约束,以便稍后我可以遍历所有条目以匹配单词?
答案 0 :(得分:14)
请不要像在MySQL那样考虑DynamoDB。 DynamoDB 只是一个键:值存储,带有几个细节。
关键的基础:价值存储是:
要么你知道钥匙,要得到你的价值;
要么你没有,你得到了整个表。
在DynamoDB特定情况下,您可以
GetItem
hash_key
Query
下的所有项目,可能应用过滤器
Scan
这就是说,Scan
慢和昂贵。你永远不应该使用它,否则你的设计很可能是错误的。
在您的情况下,听起来您会想要将您的密钥拆分为
hash_key
range_key
然后,您可以使用Query
来获取所有共享hash_key
的项目。使用Query
,您可以应用BEGINS_WITH
等过滤器来缩小范围。
请注意,所有(hash_key
,range_key
)元组都必须是唯一的。