Mongodb索引类型简介

学习mongodb,体会mongodb的每一个使用细节,欢迎阅读威赞的文章。这是威赞发布的第88篇mongodb技术文章,欢迎浏览本专栏威赞发布的其他文章。如果您认为我的文章对您有帮助或者解决您的问题,欢迎在文章下面点个赞,或者关注威赞。谢谢。

索引能够提高查询效率,本文结合官方文档,简单介绍索引的类型。不同类型的索引,能够支持不通过类型的数据和查询。

单字段索引

单字段索引使用集合中每个文档的一个字段来建立索引。下面的图描述了在集合Collection中使用score字段上建立的索引。score是一个数字类型的字段。索引使用score字段的数值建立。从最小值min到最大值max排列。其中还包括18, 30, 45, 75这几个数字。{score:1}表示按照字段score从小到大的顺序排列建立索引。

复合索引

复合索引是指使用集合中文档的两个或多个字段建立的索引。索引当中的数据,先按照第一个字段进行分组,再按照后续的字段依次分组。如下图所示,使用{userid:1, score:-1}建立索引,表示索引按照userid正序,score倒序进行排列。

在该索引当中,首先按照userid进行排列,如aa1, ca2, nb1, xyz. 然后再对索引的第二个字段score进行排序,如{user: 'ca2'}下面 ,包含75,55,30三个数据。

多键索引

多键索引使用数组当中的数据,构建索引。用户构建Mongodb的索引时,无需显示的告诉Mongodb建立的是多键索引。当Mongodb建立索引时,看到该字段是数组类型,mongodb则自动的创建一个多键索引。下图表示Mongodb建立的多键索引。

用户指定addr数组中的zip字段来建立索引。Mongodb看到addr是数组类型的字段,因此自动建立了多键索引。

地理信息索引

地理信息索引,能够提高Mongodb中,针对GeoJSON和位置坐标的查询性能。具体可以参考威赞前面发出来的文章。

Mongodb提功力两种地理信息索引

  • 二维平面地理信息索引,用来查询平面地理信息数据
  • 二维空间地理索引,用来查询曲面空间的地理信息数据。

其他索引类型

除了前面提到索引类型外,Mongodb还支持文本索引,哈希索引和集群索引等。这些索引介绍,可以参考威赞整理的其他文章。

相关推荐

  1. Mongodb索引简介

    2024-07-12 08:36:02       20 阅读
  2. MongoDB 索引

    2024-07-12 08:36:02       31 阅读
  3. MongoDB-索引-部分索引

    2024-07-12 08:36:02       40 阅读
  4. MongoDB】--MongoDB的组合索引

    2024-07-12 08:36:02       26 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-12 08:36:02       66 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-12 08:36:02       70 阅读
  3. 在Django里面运行非项目文件

    2024-07-12 08:36:02       57 阅读
  4. Python语言-面向对象

    2024-07-12 08:36:02       68 阅读

热门阅读

  1. LiteOS系统的软件定时器

    2024-07-12 08:36:02       23 阅读
  2. Codeforces Round #956 (Div. 2) and ByteRace 2024

    2024-07-12 08:36:02       27 阅读
  3. C++学习笔记

    2024-07-12 08:36:02       28 阅读
  4. 调整视频帧率、分辨率

    2024-07-12 08:36:02       29 阅读
  5. 路由器内部优先级和外部优先级的区别

    2024-07-12 08:36:02       28 阅读
  6. 嵌入式驱动程序100道面试题(6万字长文)

    2024-07-12 08:36:02       23 阅读
  7. Linux中防火墙firewalld

    2024-07-12 08:36:02       24 阅读
  8. 针对不支持AJAX异步查询的虚拟空间做跨站点查询

    2024-07-12 08:36:02       28 阅读
  9. docker 基础命令

    2024-07-12 08:36:02       24 阅读
  10. GPT-4o在Excel的应用

    2024-07-12 08:36:02       28 阅读