与主键、复合键和候选键相比,DynamoDB中的分区键和排序键是什么?
与主键、复合键和候选键相比,DynamoDB中的分区键和排序键是什么?
分区键用于分区数据。具有相同分区键的数据存储在一起,这使您可以在一个查询中查询具有相同分区键的数据。
(可选的)排序键确定具有相同分区键的数据存储顺序。使用聪明的排序键允许您在一个查询中查询多个项目。
例如:假设我正在为几个应用程序存储日志数据。我的分区键可以是应用程序名称,而排序键可以是日志的时间戳。这使我可以使用BEGINS WITH运算符在一个查询中查询最近一小时内特定应用程序的所有日志,甚至可以使用BETWEEN运算符查询上周三某个应用程序的所有日志。
分区键加上可选的排序键形成了表的主键,因此它们必须是唯一的。此外,它们是不可变的。
您选择分区键和排序键应基于最重要的访问模式。如果您有其他访问模式,可以通过使用全局二级索引来适应它们,但这会带来一些成本。