重载全局二级索引 - Amazon DynamoDB
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

重载全局二级索引

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

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

GSI 重载的表架构。

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

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

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

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