正如我们去看一本书的时候,如果想找到你想要找的内容,最快的方法绝不是从第一页开始,逐页向后翻,而是先看目录,然后根据目录去查找想要的内容。
在上面这个例子里,目录就拥有索引的作用。
mysql的数据存储,如果你想找到某一条,最为低级的算法就是逐个遍历,直到去找到它为止。但是如果数据量庞大,且你要寻找的那条还排在后面,那就要恶心了。不过如果你添加了索引,并且索引里直接保存了该条数据的地址,则直接可以通过找到数据,而不必再去遍历所有的数据。
(上面这个说法是不严谨的,但是可以大致说出索引的作用。)
从实现方式上来说,有B树索引,哈希索引,全文索引,空间索引等。
从表现方式上来说,有独立索引,前缀索引,多列索引。
我们会在下一章简单介绍下哈希索引,全文索引以及空间索引。
后续的章节将全部以B树索引铺开。