前言
为什么要了解数据索引呢?我们都知道索引结构一般会加速查询,那这些索引是如何加速查询的呢?我们有时候建立了索引,但是查询比没建索引都要慢,这又是为什么呢?我们有时候会根据不同的业务场景选择不同的索引类型,选择的依据又是什么呢?
带着以上几个疑惑,让我们开始了解数据库索引到底是啥,它的底层数据结构是什么样子的,是怎样加速查询的,索引本身又做了哪些优化。希望读完本文后,可以为你解决上述存留在心中的疑问。
在这里也顺便提下个人对大数据的理解,大数据其实就是海量数据的存储和检索,前者关注于如何更高效的把数据放到存储介质上,后者关注于如何更高效的把数据从存储介质上检索出来,需要注意这里的检索指的是检查数据是否存在,如果数据存在则返回。而索引又是检索的核心,了解索引之后会对理解整个检索过程有更深刻的理解,比如执行计划的解析,join order 等等的影响。