MongoDB 索引的最佳实践
前言 大部分开发者都知道加索引会快。但实际过程中,我们常碰到一些疑问困难: 我们查询的字段会各种case都有,是不是各个涉及查询的字段都要加索引? 复合索引和单字段怎么选择
<img src="https://img.mryunwei.com/uploads/2023/04/20230415053502881.jpg"><h3>前言</h3>
大部分开发者都知道加索引会快。但实际过程中,我们常碰到一些疑问&困难:
一、索引究竟是什么东西?
大部分开发者接触索引,大概知道索引类似书的目录,你要找到想要的内容,通过目录找到限定的关键字,进而找到对应的章节的pageno,再找到具体的内容。在数据结构里面,最简单的索引实现类似hashmap,通过关键字key,映射到具体的位置,找到具体的内容。但除了hash的方式,还有多种的方式实现索引。
hashmap
一图见b-tree & b+-tree 差别: