重载全局二级索引 - Amazon DynamoDB

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

重载全局二级索引

虽然 Amazon DynamoDB 的默认配额是每个表 20 个全局二级索引,但实际可以索引的数据字段远超过 20 个。关系数据库管理系统 (RDBMS) 的表架构统一,DynamoDB 的表则不同,一次可以保存多种不同类型的数据项目。此外,不同项目的同一属性可以包含完全不同的信息。

考虑下面保存各种不同数据的 DynamoDB 表布局的示例。

GSI 重载的表架构。

所有项目公共的 Data 属性根据父项目不同,具有不同内容。如果为表创建一个全局二级索引,使用表的排序键作为分区键,Data 属性作为排序键,则可以使用该全局二级索引执行各种不同查询。查询包括:

  • 在全局二级索引中按姓名查找员工,使用 Employee_Name 作为分区键值,员工姓名(例如 Murphy, John)作为排序键值。

  • 使用全局二级索引搜索仓库 ID(如 Warehouse_01),查找具体仓库中工作的所有员工。

  • 查询全局二级索引,将 HR_confidential 作为分区键值,在排序键值中使用日期范围,获取最近招聘员工列表,