mysql索引结构有哪些,各自的优劣是什么

首页 / 常见问题 / 低代码开发 / mysql索引结构有哪些,各自的优劣是什么
作者:低代码工具 发布时间:05-15 09:44 浏览量:8830
logo
织信企业级低代码开发平台
提供表单、流程、仪表盘、API等功能,非IT用户可通过设计表单来收集数据,设计流程来进行业务协作,使用仪表盘来进行数据分析与展示,IT用户可通过API集成第三方系统平台数据。
免费试用

mysql索引结构有B+树,是⼀个平衡的多叉树,一个节点可以有多个数据内容,这样就不会出现二叉树那样数据庞大的时候,树的高度比较高的情况,查询的次数就会少。

一、mysql索引结构

B+树:

B树是⼀个平衡的多叉树,一个节点可以有多个数据内容,这样就不会出现二叉树那样数据庞大的时候,树的高度比较高的情况,查询的次数就会少,B+树叶子节点间有指针相互链接,并且会维护了索引的顺序的,所以有顺序、有相邻的引用,这样在执行范围查找的时候,就可以左右移动,范围查找的效率就会高很多。所以数据庞大的时候,B+树被⼴泛使用,数据库、⽂件系统等场景。

哈希索引:

哈希索引就是采⽤⼀定的哈希算法,把键值换算成新的哈希值,检索时不需要类似B+树那样从根节点到叶⼦节点逐级查找,只需⼀次哈希算法即可⽴刻定位到相应的位置,速度⾮常快。

如果是等值查询,那么哈希索引明显有绝对优势,因为只需要经过⼀次算法即可找到相应的键值;

前提是键值都是唯⼀的。如果键值不是唯⼀的,就需要先找到该键所在位置,然后再根据链表往后扫描,直 到找到相应的数据;

如果是范围查询检索,这时候哈希索引就毫⽆⽤武之地了,因为原先是有序的键值,经过哈希算法后,有可能变成不连续的了,就没办法再利⽤索引完成范围查询检索;

哈希索引也没办法利⽤索引完成排序,以及like ‘xxx%’ 这样的部分模糊查询(这种部分模糊查询,其实本质上也是范围查询);

在有⼤量重复键值情况下,哈希索引的效率也是极低的,因为存在哈希碰撞问题。

红黑树:

红黑树也可以查询很快,都是红黑树在数据很多的情况下,树的高度是很高的,所以也不用来做索引了。

普通二叉树这就更加不行了,高度不说了,它还不会平衡。

如果123456这样按照顺序添加,1永远是跟节点,依次增加就之后在树的右边加。

延伸阅读:

二、索引及其优缺点

索引本质:索引是数据结构。这些数据结构以某种方式指向数据,这样可以在这些数据结构的基础上实现高效查找算法。

索引是在存储引擎实现的,因此每种存储引擎的索引不一定完全相同,并且每种存储引擎不一定支持所有类型的索引。同时存储引擎可以定义每个表的最大索引数和最大索引长度。所有存储引擎支持每个表至少16个索引,总索引长度至少为256字节。

优点:

1、提高数据检索的效率,降低数据库的I/O成本

2、通过创建少数索引,可以保证数据库表中每一行数据的少数性

3、可以加速表和表之间的连接。对于有依赖关系的子表和父表联合查询时,可以提高查询速度

4、在使用分组和排序子句进行数据查询时,可以显著减少查询中分组和排序的时间,降低CPU的消耗

缺点:

1、创建索引和维护索引要耗费时间

2、索引需要占磁盘空间,存储在磁盘上

3、虽然索引大大提高了查询 速度,同时也会降低更新表的速度

最后建议,企业在引入信息化系统初期,切记要合理有效地运用好工具,这样一来不仅可以让公司业务高效地运行,还能最大程度保证团队目标的达成。同时还能大幅缩短系统开发和部署的时间成本。特别是有特定需求功能需要定制化的企业,可以采用我们公司自研的企业级低代码平台织信Informat。 织信平台基于数据模型优先的设计理念,提供大量标准化的组件,内置AI助手、组件设计器、自动化(图形化编程)、脚本、工作流引擎(BPMN2.0)、自定义API、表单设计器、权限、仪表盘等功能,能帮助企业构建高度复杂核心的数字化系统。如ERP、MES、CRM、PLM、SCM、WMS、项目管理、流程管理等多个应用场景,全面助力企业落地国产化/信息化/数字化转型战略目标。 版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们微信:Informat_5 处理,核实后本网站将在24小时内删除。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系邮箱:hopper@cornerstone365.cn 处理,核实后本网站将在24小时内删除。

最近更新

《主流低代码平台探讨系列》——织信Informat这个平台怎么样?
07-04 15:08
基于Java+Vue的低代码平台,支持PC、H5移动端、AI大模型、信创
07-02 15:34
低代码的技术发展、技术领域及对比纯代码的优劣势
07-02 10:07
所谓低代码就是扯淡?深入了解真相与价值分析
07-02 09:36
虚约束需要高副低代码吗?探索提升开发效率的全新方式
07-02 09:36
数字化转型低代码:重塑企业开发模式与运营效率
07-02 09:36
移动端低代码编辑器:快速构建应用的新利器
07-02 09:36
滚子从动件是高副低代码的设计核心,提升机械效率的关键
07-02 09:36
特定领域如何高效应用低代码平台?全面解析来了
07-02 09:36

立即开启你的数字化管理

用心为每一位用户提供专业的数字化解决方案及业务咨询

  • 深圳市基石协作科技有限公司
  • 地址:深圳市南山区科发路8号金融基地1栋5F5
  • 手机:137-1379-6908
  • 邮箱:sales@cornerstone365.cn
  • 微信公众号二维码

© copyright 2019-2024. 织信INFORMAT 深圳市基石协作科技有限公司 版权所有 | 粤ICP备15078182号

前往Gitee仓库
微信公众号二维码
咨询织信数字化顾问获取最新资料
数字化咨询热线
137-1379-6908
申请预约演示
立即与行业专家交流