在 DynamoDB 中重载全局二级索引
虽然 Amazon DynamoDB 的默认配额是每个表 20 个全局二级索引,但实际可以索引的数据字段远超过 20 个。关系数据库管理系统 (RDBMS) 的表架构统一,DynamoDB 的表则不同,一次可以保存多种不同类型的数据项目。此外,不同项目的同一属性可以包含完全不同的信息。
考虑下面保存各种不同数据的 DynamoDB 表布局的示例。
所有项目公共的 Data
属性根据父项目不同,具有不同内容。如果为表创建一个全局二级索引,使用表的排序键作为分区键,Data
属性作为排序键,则可以使用该全局二级索引执行各种不同查询。查询包括:
在全局二级索引中按姓名查找员工,使用
Employee_Name
作为分区键值,员工姓名(例如Murphy, John
)作为排序键值。使用全局二级索引搜索仓库 ID(如
Warehouse_01
),查找具体仓库中工作的所有员工。查询全局二级索引,将
HR_confidential
作为分区键值,在排序键值中使用日期范围,获取最近招聘员工列表,