DynamoDB表的多个范围键

时间:2018-04-18 10:11:56

标签: nosql amazon-dynamodb

无论如何在DynamoDB表中支持两个以上的键吗? 我有用户填写的评估,我需要按用户和评估进行索引(几种类型的评估,每种评估都有不同的唯一名称)。但是,我还希望允许用户为每个评估存储不同的答案(例如,不同的日期或不同的上下文) 我评估答案的数据结构是:

  • 排序键[“S”]:IDUser(来自AWS Cognito的已回答的用户ID)
  • 范围键[“S”]:IDAssessment(唯一评估名称)
  • 答案[“M”],其中存储了评估的不同答案
  • 附加密钥[“S”]:按名称或日期区分评估

我的评估模式(定义模式)的数据结构是:

  • 排序键[“S”]:IDAssessment(唯一评估名称)
  • 范围键[“S”]:IDUser(拥有评估的AWS Cognito的用户ID)
  • 附加键[“S”]:按类型对评估进行分类,并按类型
  • 进行访问
  • 评估名称[“S”]
  • 类别[“M”]包含评估问题和级别的地图

我认为在Dynamo DB中至少需要三个键(用户,评估,答案名称)但是它只允许我创建一个排序和范围键 有什么办法吗?我错过了什么吗? 谢谢大家

1 个答案:

答案 0 :(得分:0)

是的,通过为每个其他列创建一个二级索引并将该列作为索引排序键。