用于最佳查询的Dynamodb架构设计

时间:2016-12-16 13:58:30

标签: amazon-web-services amazon-dynamodb

我是nosql的新手,在阅读了dynamodb之后,我对如何建模我的用例感到困惑。我有一个拥有用户和俱乐部的应用程序。用户可以属于0多个俱乐部。用户也可以是俱乐部的所有者,授予他们增强的特权。

我在考虑有2个表来管理俱乐部/用户关系。 1具有user_name的分区键和club_name的排序键,另一个具有club_name的分区键和user_name的sorty_key。这些应该允许我有效地查询我俱乐部中的所有用户以及我所属的所有俱乐部。

我如何有效地查询我不是俱乐部成员的所有俱乐部以及所有不在我俱乐部的用户?

1 个答案:

答案 0 :(得分:0)

也许您应该使用关系数据库或配置单元。

使用DynamoDB。你可以使用3个表。

  • 表1:用户表,使用user_id作为hash_key并具有字段user_name。

  • 表2:俱乐部表格,使用club_id作为hash_key并拥有字段club_name。

  • 表3:关系表,使用user_id和club_id作为hash_key和 range_key。

但你无法获得结果使用一个查询。

我不建议使用dynamodb进行此查询。