码迷,mamicode.com
首页 > 其他好文 > 详细

索引及其原理

时间:2017-10-23 23:11:39      阅读:385      评论:0      收藏:0      [点我收藏+]

标签:www   磁盘   节点   红黑树   间接   logs   高效   技术分享   平衡   

文件系统:柱面。磁道。扇区 (确定文件地址) 

索引:一种数据结构,帮助高效获取数据的数据结构

id addr 

1 0x1234

2 0x3242 直接定位

如果没有索引,则从文件中一个个读取,然后比对,所以可能会发展成全盘扫描。但如果有索引的话,可以直接读取文件地址,然后找到该数据对应的磁盘地方。获得数据。

二者其实原理一样,

索引也可能是一个文件

其他类型:

hash Map

二叉平衡树

 

二叉树:

技术分享

 

红黑树:

 

 B tree

技术分享

树的高度:degree

B+tree

 

技术分享

 

衡量索引优劣的标尺:

i/o次数(查询次数)

mysql索引:B+tree 便于查询

 非聚集索引:技术分享

 

通过index查找到地址,找到value

技术分享

 

 
技术分享

 

总结:Btree和B+tree的不同点在于:Btree的每个节点(包括根节点和子节点) 都可以存储数据,而B+tree则只有叶节点(最下面的一排)可以存储数据
聚集索引和非聚集索引的区别:myisam生成三个文件,又MYD和,MYI以及表定义文件,这个索引的工作原理是通过MYI的index找到MYD中的data数据,间接索引。
而INNODB聚集索引就只生成两个文件夹。一个idb是表定义文件,一个是数据和下标在一起的文件,这个就是聚集索引。因为索引下标以及数据都在一起。
还有:Btree以及B+tree是按照阿拉伯数字顺序或者是a、b、c、d这种数据进行排列,因此按一定顺序查询特别方便
 
 
www.hnhyxds.cn 网站
 
 https://www.cs.usfca.edu/~galles/visualization/BPlusTree.html 

 

索引及其原理

标签:www   磁盘   节点   红黑树   间接   logs   高效   技术分享   平衡   

原文地址:http://www.cnblogs.com/yxb-ylp-520/p/7719567.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!