索引类型
本页描述了您可以在 MongoDB 中创建的索引类型。不同的索引类型支持不同类型的数据和查询。
单字段索引
单个字段索引收集集合内每个文档中单个字段的数据,并对其排序。
此图显示了单个字段的索引,score
:
要了解详情,请参阅单字段索引。
复合索引
复合索引从集合中每个文档的两个或多个字段收集数据并对其排序。数据先按索引中的第一个字段分组,再按每个后续字段分组。
例如,下图显示了一个复合索引,其中文档首先按 userid
分组并以升序(按字母顺序)排序。然后,每个 userid
的 scores
按降序排序:
如要了解更多信息,请参阅复合索引。
Multikey Index
多键索引收集数组中存储的数据并进行排序。
您无需显式指定多键类型。对包含数组值的字段创建索引时,MongoDB 会自动将该索引设为多键索引。
下图显示了 addr.zip
字段的多键索引:
要了解更多信息,请参阅多键索引。
地理空间索引
地理空间索引可提高对地理空间坐标数据进行查询的性能。要了解详情,请参阅地理空间索引。
MongoDB 提供两种类型的地理空间索引:
使用平面几何返回结果的 2d 索引。
使用球面几何返回结果的 2dsphere 索引。
Text Index
文本索引支持对包含字符串内容的字段进行文本搜索查询。
要了解更多信息,请参阅自管理部署上的文本索引。
哈希索引
哈希索引支持哈希分片。哈希索引对字段值的哈希值进行索引。
要了解更多信息,请参阅哈希索引。
聚集索引
5.3 版本中的新增功能。
集群化索引指定集群化集合存储数据的顺序。使用集群化索引创建的集合称为集群化集合。
要了解如何使用聚集索引创建集合,请参阅集群化集合示例。