kar*_*tik 1 key primary-key amazon-web-services amazon-dynamodb
我到处都看到这些术语——
但我似乎对这些名字感到困惑:
此外,在创建创建 DynamoDB 表时,我添加'Order ID'了主键 - 现在,我需要将其替换为'User ID',并将 ' Order ID' 作为辅助键。
那么,Order ID将是“次要密钥”,而User ID将是“主密钥”
如何实现?
任何帮助表示赞赏!:) 谢谢!
分区键和主键是一回事吗?这些是什么?
不。
主键是唯一标识表中每个项目的东西。
分区键是一种可能的主键,另一种是分区键+排序键(即“复合”主键,正如您在其他数据库系统中所称的那样)。
排序键和二级索引也一样吗?如果我添加辅助键,它会起到什么作用?
排序键和二级索引也是不同的东西。
排序键可以用作主键中“复合键”中的“第二个元素”。换句话说,主键可以是“分区键”或“分区键+排序键”类型。
二级索引完全是另一回事。二级索引允许您对表执行不同类型的优化查询。它需要知道您希望如何对您的项目进行分区和排序:对于本地二级索引,您只需指定一个排序键,因为它将隐式使用与主键相同的分区键。对于全局二级索引,您必须指定一个分区键,并且您可以选择指定一个排序键(因此在某种意义上,GSI 的定义方式与主键类似)。
看看这个:https : //docs.aws.amazon.com/amazondynamodb/latest/developerguide/HowItWorks.CoreComponents.html
它用很多例子解释了这一切。
在创建 DynamoDB 表时,我添加了“订单 ID”作为主键 - 现在,我需要将其替换为“用户 ID”,并将“订单 ID”作为辅助键。
你不能这样做。
无法更改 DynamoDB 表的主键。
这是相关文档:https : //docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_UpdateTable.html
我到处都看到这些术语 - [...]
作为最后的评论,请注意您可能还会看到其他一些术语。在过去,DynamoDB 对“分区键”和“排序键”使用不同的术语。它们过去分别被称为“哈希键”和“范围键”。您可能会在 SDK、CLI 参数等中看到很多对这些名称的引用。
| 归档时间: |
|
| 查看次数: |
47 次 |
| 最近记录: |