【问题标题】:How to setup Tables in DynamoDB to be able to query a string set/List?如何在 DynamoDB 中设置表以便能够查询字符串集/列表?
【发布时间】:2015-05-31 15:53:37
【问题描述】:

目前,我在 DynamoDB 中有一个具有此架构的表:


ID : PostID(哈希键)

位置:LocationID(范围键)

标签:字符串列表


现在我希望能够查询标签列表和表中的每个项目,并找到哪些帖子具有这些标签。我怎么做?阅读 DynamoDB 文档,我认为我将不得不设置另一个表,因为查询无法搜索列表/字符串集中的特定字符串,但我无法弄清楚如何构建表。

例如,项目:


PostID:Guid

位置:someLocationString

标签:[“女王”、“皇室”、“英格兰”]


现在我想查询具有名为“Queen”标签的项目,我希望结果是一组具有该标签的项目。 (邮政编号 + 位置)

什么是最佳结构?添加新标签时如何维护表格?

【问题讨论】:

    标签: amazon-dynamodb nosql


    【解决方案1】:

    如果我正确理解要求,您可以使用表格:

    哈希:标签

    范围:PostId#LocationId

    这样你就可以查询 Tag 并获取所有对。

    保持两个表同步并不是最佳选择,但这完全取决于原子性对您来说有多重要。也许看看DynamoDB Transactions,或者做一些“CAS”插入。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-06-15
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多