索引类型
本页面描述了您可以在 MongoDB 中创建的索引类型。不同的索引类型支持不同类型的数据和查询。
单字段索引
单字段索引从集合中每个文档的单个字段收集和排序数据。
此图显示了单个字段的索引得分
:
要了解更多信息,请参阅单字段索引.
复合索引
复合索引从集合中每个文档的两个或更多字段收集和排序数据。数据首先按索引中的第一个字段分组,然后按每个后续字段分组。
例如,以下图像显示了一个复合索引,其中文档首先按userid
以升序(字母顺序)分组。然后,对每个userid
的scores
按降序排序
要了解更多信息,请参阅复合索引。
多键索引
多键索引收集和排序存储在数组中的数据。
您无需显式指定多键类型。当您在包含数组值的字段上创建索引时,MongoDB会自动将索引设置为多键索引。
此图展示了addr.zip
字段上的多键索引。
了解更多信息,请参阅多键索引。
地理空间索引
地理空间索引提高了对地理坐标数据的查询性能。了解更多信息,请参阅地理空间索引。
MongoDB提供了两种地理空间索引类型
2d索引,它使用平面几何来返回结果。
2dsphere索引,它使用球形几何来返回结果。
文本索引
文本索引支持对包含字符串内容的字段进行文本搜索查询。
了解更多信息,请参阅自托管部署上的文本索引。
注意
在Atlas部署上使用Atlas Search或Atlas Vector Search
对于托管在MongoDB Atlas上的数据,MongoDB提供以下文本搜索解决方案
Atlas Search与本地文本搜索相比,提供了更好的性能和功能。
Atlas Vector Search提供了向量搜索功能,以执行语义、混合和生成搜索。
哈希索引
哈希索引支持哈希分片。哈希索引索引字段值的哈希。
了解更多,请参阅哈希索引。
聚集索引
新版本5.3.
聚集索引指定聚集集合存储数据的方式。使用聚集索引创建的集合称为聚集集合。
要了解如何创建具有聚集索引的集合,请参阅聚集集合示例。