课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
索引是程序员在学习数据库架构开发的时候需要重点掌握的一个功能应用方式,下面我们就通过案例分享来简单了解一下,数据库索引常见模型与应用。
1、索引是什么?
索引是对数据库表中一列或多列的值进行排序的一种结构,使用索引可提高数据库中特定数据的查询速度。
索引的目的在于提高查询效率,就像书的目录一样。一本1000页的书,如果你想快速找到其中的某一个知识点,在不借助目录的情况下,这个事情是不是很难完成?同样,对于数据库的表而言,索引其实就是它的“目录”。
2、索引的常见模型
索引的出现是为了提高查询效率,但是实现索引的方式却有很多种,所以这里也就引入了索引模型的概念。可以用于提高读写效率的数据结构很多,这里我先给你介绍几种常见的数据结构,它们分别是哈希表、有序数组和搜索树。搜索树又可以分为二叉搜索树、平衡二叉树、B树、B+树。
MySQL中实现索引的方式主要有两种:BTREE和HASH,具体和表的存储引擎有关;MyISAM和InnoDB存储引擎只支持BTREE索引,而MEMROY/HEAP存储引擎可以支持HASH和BTREE索引。
3、MySQL为什么使用B+Tree
一般来说,索引本身也很大,不可能全部存储在内存中,因此索引往往以索引文件的形式存储在磁盘上。这样的话,索引查找过程中就要产生磁盘I/O消耗,相对于内存存取,I/O存取的消耗要高几个数量级,所以评价一个数据结构作为索引的优劣重要的指标就是在查找过程中磁盘I/O操作次数的渐进复杂度。换句话说,索引的结构组织要尽量减少查找过程中磁盘I/O的存取次数。
【免责声明】本文系本网编辑部分转载,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请在30日内与管理员联系,我们会予以更改或删除相关文章,以保证您的权益!更多内容请加danei0707学习了解。欢迎关注“达内在线”参与分销,赚更多好礼。