“文档” 菜单
文档首页
/
MongoDB Manual
/

索引类型

在此页面上

  • 单字段索引
  • 复合索引
  • 多键索引
  • 地理空间索引
  • 文本索引
  • 哈希索引
  • 聚集索引

本页描述了您可以在 MongoDB 中创建的索引类型。不同的索引类型支持不同类型的数据和查询。

单个字段索引收集集合内每个文档中单个字段的数据,并对其排序。

此图显示了单个字段的索引,score

score 字段索引图(升序)。

要了解详情,请参阅单字段索引。

复合索引从集合中每个文档的两个或多个字段收集数据并对其排序。数据先按索引中的第一个字段分组,再按每个后续字段分组。

例如,下图显示了一个复合索引,其中文档首先按 userid 分组并以升序(按字母顺序)排序。然后,每个 useridscores 按降序排序:

``userid`` 字段(升序)和 ``score`` 字段(降序)的复合索引图。索引首先按 ``userid`` 字段排序,然后按 ``score`` 字段排序。

如要了解更多信息,请参阅复合索引

多键索引收集数组中存储的数据并进行排序。

您无需显式指定多键类型。对包含数组值的字段创建索引时,MongoDB 会自动将该索引设为多键索引。

下图显示了 addr.zip 字段的多键索引:

针对“addr.zip”的多键索引图示字段。“addr”字段包含地址文档的数组。地址文档包含“zip”字段。

要了解更多信息,请参阅多键索引

地理空间索引可提高对地理空间坐标数据进行查询的性能。要了解详情,请参阅地理空间索引

MongoDB 提供两种类型的地理空间索引:

  • 使用平面几何返回结果的 2d 索引

  • 使用球面几何返回结果的 2dsphere 索引

文本索引支持对包含字符串内容的字段进行文本搜索查询。

如要了解更多信息,请参阅文本索引

注意

使用针对 Atlas 部署的 Atlas Search

对于 MongoDB Atlas上托管的数据,MongoDB 提供了全文搜索解决方案Atlas Search 。与本地部署文本搜索相比,Atlas Search 提供了改进的性能和功能。

哈希索引支持哈希分片。哈希索引对字段值的哈希值进行索引。

要了解更多信息,请参阅哈希索引

5.3 版本中的新增功能

集群化索引指定集群化集合存储数据的顺序。使用集群化索引创建的集合称为集群化集合。

要了解如何使用聚集索引创建集合,请参阅集群化集合示例

← 删除索引