我有一个项目如: " Item":{ " model":32590038899, " date":10-09-2015, "价格":100 }
" hash_key_attribute_name":" model"
" range_key_attribute_name":" date"
我的问题是新物品插入了很多,所以有可能会有相同型号的物品来,它们可能不是同一产品。这可能是由于产品可用的地区。所以我需要一个设置我需要保留产品的副本,如果出现这种情况,将来在检查或要求后我可以带回产品。我正在寻找一种版本系统。目前,由于相同的主键,产品将被删除。
答案 0 :(得分:0)
简单地说:如果您的主键不是唯一的,那么您没有使用正确的字段作为主键。
...有可能会出现具有相同型号的物品 可能不是同一产品。这可能是由于产品所在的地区 可用...
听起来您的主键需要是区域和产品ID的组合。或者您可能需要为每个区域单独制作一个表格。
答案 1 :(得分:0)
我会为你的项目添加一个唯一的id属性,一个uuid效果很好,比如
{ id: "53f382ae-94b8-4910-b8f1-384f46dc10d8",
model: 32590038899,
date: "10-09-2015",
price:100
}
将您的表架构更改为只有一个哈希键属性名称 - id 。
使用散列键添加全局二级索引 - 模型,范围键 - 日期。
全局二级索引可以包含主键冲突的项目。使用此架构,您可以防止项被覆盖,并且可以查询具有给定型号的项目。