问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

mysql innodb 有哪些索引类型

发布网友 发布时间:2022-04-26 13:42

我来回答

2个回答

热心网友 时间:2022-04-07 21:21

1、B+树索引(O(log(n))):关于B+树索引,可以参考 MySQL索引背后的数据结构及算法原理
2、hash索引:
a 仅仅能满足"=","IN"和"<=>"查询,不能使用范围查询
b 其检索效率非常高,索引的检索可以一次定位,不像B-Tree 索引需要从根节点到枝节点,最后才能访问到页节点这样多次的IO访问,所以 Hash 索引的查询效率要远高于 B-Tree 索引
c 只有Memory存储引擎显示支持hash索引
3、FULLTEXT索引(现在MyISAM和InnoDB引擎都支持了)
4、R-Tree索引(用于对GIS数据类型创建SPATIAL索引)

热心网友 时间:2022-04-07 22:39

MYISAM 表是典型的数据与索引分离存储,主键和二级索引没有本质区别。比如在 MYISAM 表里主键、唯一索引是一样的,没有本质区别。
INNODB 表本身是索引组织表,也就是说索引就是数据。下图表T1的数据行以聚簇索引的方式展示,非叶子节点保存了主键的值,叶子节点保存了主键的值以及对应的数据行,并且每个页有分别指向前后两页的指针。
INNODB 表不同于 MYISAM,INNODB 表有自己的数据页管理,默认 16KB。MYISAM 表数据的管理依赖文件系统,比如文件系统一般默认 4KB,MYISAM的块大小也是 4KB,MYISAM 表的没有自己的一套崩溃恢复机制,全部依赖于文件系统。
INNODB 表这样设计的优点有两个:
1. 数据按照主键顺序存储。主键的顺序也就是记录行的物理顺序,相比指向数据行指针的存放方式,避免了再次排序。我们知道,排序消耗最大。
2. 两个叶子节点分别含有指向前后两个节点的指针,这样在插入新行或者进行页*时,只需要移动对应的指针即可。
INNODB 二级索引的非叶子节点保存索引的字段值,上图索引为表 t1 的字段 age。叶子节点含有索引字段值和对应的主键值。
这样做的优点是当出现数据行移动或者数据页*时,避免二级索引不必要的维护工作。当数据需要更新的时候,二级索引不需要重建,只需要修改聚簇索引即可。
但是也有缺点:
1. 二级索引由于同时保存了主键值,体积会变大。特别是主键设计不合理的时候,比如用 UUID 做主键。
2. 对二级索引的检索需要检索两次索引树。第一次通过检索二级索引叶子节点,找到过滤行对应的主键值;第二次通过这个主键的值去聚簇索引中查找对应的行。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
苹果电脑电池充不进电苹果电脑充不进去电是怎么回事 苹果电脑不充电没反应苹果电脑充电指示灯不亮充不了电怎么办 狗狗更加忠诚护家、善解人意,养一只宠物陪伴自己,泰迪能长多大... 描写泰迪狗的外形和特点的句子 国外留学有用吗 花钱出国留学有用吗 !这叫什么号 百万医疗赔付后是否可以续保 前一年理赔过医疗险还能续保吗? 医疗住院险理赔后还能购买吗? 有没有专门代打电话的公司谢谢了,大神帮忙啊 想找个人帮我打个电话,代打电话给推介一个啊? mysql数据表有哪些类型 帮忙打电话 找人帮忙 ,给他打电话。接电话的不是本人。怎么说合适 想找个人帮忙打电话,可以吗 mysql存储引擎及索引类型有哪些 可以帮打个电话吗 我给小丽帮忙打电话,就是一直打不进去怎么办? 大家可以帮忙打电话吗,有急事 mysql的各种索引,感觉很乱他们都是什么关系? 10086可以帮我打电话吗? 怎么让110帮忙打电话 Mysql支持哪几种索引 代打电话服务是否能帮助别人做到排忧解难呢? 有没有可以代接打电 话的地方啊? 汽车电瓶没电打不燃火,找别人帮忙搭电,需要花多少钱? 让陌生网友帮忙打电话有危险吗? k歌连麦,别的歌友会看到吗 全民k歌独一无二的评论 打电找警察帮忙要不要钱 有个朋友借了钱一直没表示还,有没有可以代打电话的,帮我提醒一下他? 有主播可以帮忙打电话表白的吗? 您好,我想给帮帮忙打电话,电话多上,请您发给我,谢谢? QQ群显示来消息不提示该怎么办 qq群来消息为什么自动跳出,我不要自动跳出,要有消息我点就行了,这么long QQ群里设置为来消息不显示 怎么 把来消息不显示 去掉 谢谢 为什么我的QQ群里面明明有人发信息,可是我的QQ上却没有显示呢??? QQ群里来消息了,会话窗口老弹出来,我已经取消掉来消息允许弹出窗口了 QQ群来信息不提示怎么消除 QQ群来消息了 但是打开以后看到的是空白什么都没有 怎么让QQ群来消息,来一条就让它响,开着聊天窗口也能响才行 造成消化不良的原因有哪些?怎样才能快速治愈消化不良? 消化系统可能出现的问题有哪些,如何防治? 消化系统问题 消化系统出现了问题,能消化食物但不吸收 消化系统有问题怎么办? 肠胃出问题的人,身体会出现哪四种情况? 消化系统不好怎么办 消化系统有问题。怎么办。