选择您的 Cookie 首选项

我们使用必要 Cookie 和类似工具提供我们的网站和服务。我们使用性能 Cookie 收集匿名统计数据,以便我们可以了解客户如何使用我们的网站并进行改进。必要 Cookie 无法停用,但您可以单击“自定义”或“拒绝”来拒绝性能 Cookie。

如果您同意,AWS 和经批准的第三方还将使用 Cookie 提供有用的网站功能、记住您的首选项并显示相关内容,包括相关广告。要接受或拒绝所有非必要 Cookie,请单击“接受”或“拒绝”。要做出更详细的选择,请单击“自定义”。

在 DynamoDB 中使用全局二级索引进行具体化聚合查询

聚焦模式
在 DynamoDB 中使用全局二级索引进行具体化聚合查询 - Amazon DynamoDB

对于希望快速做出决策的企业来说,对快速更改的数据维持近实时聚合和键指标正变得越来越重要。例如,音乐库可能需要近实时展示下载量最多的歌曲。

考虑下面音乐库表布局:

音乐库表布局示例。

此示例的表存储歌曲,songID 作为分区键。可以在此表启用 Amazon DynamoDB Streams,将 Lambda 函数附加到这些流,每次下载歌曲时,将一个具有 Partition-Key=SongIDSort-Key=DownloadID 的条目添加到表。进行这些更新时,将在 DynamoDB Streams 中触发 Lambda 函数。Lambda 函数可按 songID 聚合并分组下载,更新顶级项目 Partition-Key=songIDSort-Key=Month。请记住,如果写入新的聚合值后 Lambda 执行失败,可以多次重复和聚合值,获得一个近似值。

要近实时读取更新,并且延迟在毫秒级,请对全局二级索引使用查询条件 Month=2018-01ScanIndexForward=FalseLimit=1

这里用到的另一个关键优化是,全局二级索引是稀疏索引,只能用于需要查询以实时检索数据的项目。全局二级索引可以服务其他工作流,例如需要最受欢迎的前 10 首歌曲,或者该月内下载的任何歌曲的信息。

下一主题:

GSI 重载

上一主题:

稀疏索引
隐私网站条款Cookie 首选项
© 2025, Amazon Web Services, Inc. 或其附属公司。保留所有权利。