如何使用DynamoDB建模双键/二级索引约束?

时间:2014-01-27 05:37:05

标签: boto amazon-dynamodb

我有一个用HashKey account_id和RangeKey id作为主键的表。我有一个辅助索引HashKey account_id和RangeKey namename是可选的,但如果指定,我希望辅助密钥是唯一的(每个帐户没有重复的名称)。如何创建在辅助索引上保留此约束的DynamoDB架构?

1 个答案:

答案 0 :(得分:0)

要使其正常工作,您必须创建“反向”全球二级索引。因此name成为索引HashKey,account_id成为RangeKey。因此,您可以使用相同name的多个帐户,但每name只有一个account_id。基本上,一个名称只能包含唯一帐户:-) DynamoDB不允许您插入具有相同组合键的新行,并且您的约束将被保留。