十:索引
Posted gyxpy
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了十:索引相关的知识,希望对你有一定的参考价值。
索引
对于数据库而言读写是9:1开,读多写少,读的过程就是IO,数据库需要从硬盘中获取数据,然后发送给客户端。
IO是瓶颈,总不能从文件的第一行开始读一直读到最后一行吧,运气好第一行就找到了想要的数据,运气不好最后一行才找到。
因此有了索引可以快速的定位数据,也就是前面desc 表名时看到的key字段
primary key unique这两个除了加速查询,还有约束的作用
而index key只有加速查询的作用
索引的本质是一个数据结构,类似书的目录,那么查找时先找目录在230页,直接翻到230页就可以了。
索引也是占硬盘空间的,索引相当于书的目录是用来读取数据的,一旦书写好了,此时进行写数据,那么目录是要变动的,根据新加的数据,重新生成目录
索引加速了查,拖慢了写
但是写相对读来说是很少的,多数瓶颈都是慢查询。
索引的本质就是不断的缩小查询范围,来降低IO次数提高查询速度。
磁盘
转速越快,定位数据的时间越短,7200转/min,每秒转120次
索引数据结构
是平衡二叉树,由B树演变而来,是B+树
以上是关于十:索引的主要内容,如果未能解决你的问题,请参考以下文章
搜索引擎系列十:Solr(solrj 索引API 结构化数据导入)