View a markdown version of this page

Multi-Key 包含大型数组的索引 - Amazon DocumentDB

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

Multi-Key 包含大型数组的索引

概述

Multi-key 借助 Amazon DocumentDB 中的索引,您可以高效地查询数组字段。在数组数据中搜索时,这种索引策略可以显著降低查询延迟,使其成为具有复杂数据结构的应用程序的有吸引力的选择。

但是,在处理大型数组或集合中的多个数组字段时,重要的是要了解资源影响和性能特征,以便做出明智的架构决策。当您在数组字段上创建索引时,Amazon DocumentDB 会为数组中的每个元素生成单独的索引条目。

对集群的影响

  • 存储和 IO 开销: Multi-key 索引有时会占用基表的多倍存储空间,大小与集合中带有索引数组属性的文档、数组中的元素数量和元素的大小成正比。

  • 内存使用量:由于存储空间占用量相对较大,因此这些索引在内存中具有相应的占用空间,从而产生更大的工作集。

  • 写入操作: Multi-key 索引在写入操作期间会产生开销。每个数组元素生成单独的索引条目,乘以完成写入操作所需的工作量。

补救策略

  • 必要时创建多键索引,并限制数组中的字段数。

  • 限制集合上多键索引的数量

  • 考虑修改您的数据模型