Amazon dynamodb DynamoDB:搜索哈希键或范围键
我对DynamoDB相当陌生。我有一个要求,我需要设计一个表来共享手机上的代码。代码详细信息将存储为属性。例如: “A”与“1234567890”共享了一个代码 “A”与“1234567891”共享了一个代码 “B”与“1234567890”共享了一个代码 “B”与“1234567891”共享了一个代码 “A”和“B”是用户,“1234567890”和“1234567891”是收件人。如果我将UserId散列键和RecipientNumber作为范围键,那么我可以找到与用户共享代码的收件人。我的要求是双向查询: 1.收件人列表,用户在查询中与之共享代码使用userId 2.与收件人共享代码的所有用户与收件人共享的代码列表Amazon dynamodb DynamoDB:搜索哈希键或范围键,amazon-dynamodb,Amazon Dynamodb,我对DynamoDB相当陌生。我有一个要求,我需要设计一个表来共享手机上的代码。代码详细信息将存储为属性。例如: “A”与“1234567890”共享了一个代码 “A”与“1234567891”共享了一个代码 “B”与“1234567890”共享了一个代码 “B”与“1234567891”共享了一个代码 “A”和“B”是用户,“1234567890”和“1234567891”是收件人。如果我将UserId散列键和RecipientNumber作为范围键,那么我可以找到与用户共享代码的收件人。我的
设计表格的正确方法应该是什么?这就是DynamoDB的用途。它们允许您创建额外的数据投影,其中收件人可以是散列键。您需要将表定义为: 用户-字符串-分区键 收件人-字符串-范围键 并添加以下全局二级索引: 收件人-字符串-GSI分区键 用户-字符串-GSI范围键 常规分区键将允许您查找用户的所有收件人,而GSI将允许您按收件人查找所有用户 另外,您可以在本文中了解更多关于DynamoDB设计模式的信息,特别是关于双向查询的信息