我正在Dynamo DB中创建新表,以下是属性:-
我主要在“ ProjectID”,“ CreatedTime”和“ JobType”上搜索(查询)项目。 我也想在“ JobID”上搜索(查询)项目。 也可以,但并非总是如此。
据我
答案 0 :(得分:0)
在DynamoDB中,使用主分区键和排序键创建一个复合键。换句话说,DynamoDB将允许使用相同的ProjectID
但不同的CreatedTime
创建多个项目,这显然是不希望的。
您需要使用ProjectID
主键创建一个不同的表,并为每个要查询的属性创建一个索引。对于您的情况,您将需要为JobType
,JobID
和Status
中的每个索引。
还请注意,为了查找两个日期之间的所有项目,您必须扫描表格。通常要避免 Scan 操作,因为它对表中的每个项目都使用 RCU 。