数据库索引 A8站源码交易平台

摘要: B+ 树是一种树数据结构,一般用于数据库和操作系统的文件系统中。B+ 树的特点是可以坚持数据安稳有序,其刺进与批改具有较安稳的对数时间复杂度。B+ 树元素自底向上刺进,这与二叉树恰好相反。

A8站源码交易平台

索引的概念   


       索引是对数据库表中一列或多列的值进行排序的一种数据结构,运用索引可快速访问数据库表中的特定信息。索引的一个首要目的就是加快检索表中数据,亦即能帮助信息查找者从速的找到符合约束条件的记载ID的辅佐数据结构。

 索引的运用场景 

      常常需求查找的列上。

      作为主键的列上。

      常常用在联接的列上,这些列首要是一些外键,可以加快联接的速度。

      常常需求根据规划进行查找的列上。

      常常需求排序的列上。

      不适合用在查询中很少用到的列。

      不适合用在那些具有很少数据值的列.比如人事表的性别列,boolean数据类型的列。

      不适合用在那些定义为text,image这些数据量恰当大的列。

      不适合用在当对批改功用的要求远远大于查找功用时.因为当增加索引时,会前进查找功用,可是会下降批改功用。

      不适合含有NULL值,复合索引中只需有一列含有NULL值,那么这一列关于此复合索引就是无效的。

      不适合对索引字段运用like “%aaa%” ,假设非运用不可like “aaa%”可以运用索引。

      不适合在列上进行核算,这样或许会导致索引失效。

      不适合运用NOT IN和<>操作

 索引的利益             A8站源码交易平台

       加快数据的检索速度。

      在信息检索过程中,若运用分组及排序子句进行时,通过建立索引能有用的减少检索过程中所需的分组及排序时间,前进检索功率。

      通过运用索引,可以在查询的过程中,运用优化躲藏器,前进系统的功用。

 索引的缺点

       创建索引和维护索引要耗费时间,这种时间跟着数据量的增加而增加,如对表进行INSERT、UPDATE和DELETE。

       实际上索引也是一张表,该表保存了主键与索引字段.索引需求占物理空间。

 索引的分类

        聚簇索引(InnoDB 主键运用的是聚簇索引):表数据按照索引的次第来存储的,也就是说索引项的次第与表中记载的物理次第一同。关于调集索引,叶子结点即存储了真实的数据行,不再有其他单独的数据页。一般情况下主键会默许创建聚簇索引,在一张表上最多只能创建一个调集索引,因为真实数据的物理次第只能有一种。

        非聚簇索引(MyISAM 不管是主键索引,仍是二级索引运用的都对错聚簇索引):表数据存储次第与索引次第无关。关于非调集索引,叶结点包含索引字段值及指向数据页数据行的逻辑指针,其行数量与数据表行数据量一同。

 创建索引     A8站源码交易平台

      1.  CREATE INDEX 索引称谓 ON 表称谓 (列称谓); 简略索引

      2.  CREATE UNIQUE INDEX 索引称谓 ON 表称谓 (列称谓) ;仅有索引

      3.  CREATE INDEX 索引称谓 ON 表称谓 (列称谓, 列称谓);组合索引

      4.  CREATE INDEX 索引称谓 ON 表称谓 (列称谓 DESC) ; 降序索引

运用组合索引时需注意:只需第一个字段出现在查询条件中,该索引才或许被运用。因而将运用频度高的字段,放置在复合索引的前面,会使系统最大或许地运用此索引,发挥索引的作用。

   数据库索引的数据结构基础B+树   A8站源码交易平台

        B+ 树是一种树数据结构,一般用于数据库和操作系统的文件系统中。B+ 树的特点是可以坚持数据安稳有序,其刺进与批改具有较安稳的对数时间复杂度。B+ 树元素自底向上刺进,这与二叉树恰好相反。

  1. 全部关键字都出现在叶子结点的链表中(稠密索引),且链表中的关键字恰好是有序的;
  2. 不可能在非叶子结点射中;
  3. 非叶子结点恰当所以叶子结点的索引(稀疏索引),叶子结点恰当所以存储(关键字)数据的数据层;
  4. 非叶子结点的子树指针与关键字个数相同
  5. 为全部叶子结点增加一个链指针;

  6. 全部关键字都在叶子结点出现

  7. 全部的叶子节点和相连的节点运用链表相连,便于区间查找和遍历;
  8. 数据库中的索引一般是在磁盘上,数据量大的情况或许无法一次装入内存,B+树的规划可以容许数据分批加载,一同树的高度较低,前进查找功率;
A8站源码交易平台


  • 全部评论(0)
最新发布的资讯信息
【A8站-免费源码分享|直播源码】直播系统源码开发:关于安卓开发工具和obs直播推流(2020-10-30 09:41)
【计算机/互联网|】【独家修复】用户定制版短视频点赞系统,支持抖音+快手+刷宝+微视等所有主流短视频评论系统源码(2020-10-26 16:34)
【技术宅-为技术而疯|网站架设教程】【独家首发】最新更新已对接短信2020全新抖音快手点赞任务系统霸屏天下小红书头条威客兼职完整搭建架设视频教程(2020-10-25 13:56)
【技术宅-为技术而疯|网站架设教程】最新可用个人发卡网系统源码完整搭建架设视频教程(2020-10-25 10:53)
【技术宅-为技术而疯|网站架设教程】独家更新全新V10抢单系统唯品会京东淘宝自动抢单区块系统源码全开源抢单收单接单返利+搭建架设完整视频教程(2020-10-25 10:52)
【计算机/互联网|】柔丫纸尿裤云仓系统源码部署(2020-10-15 18:13)
【计算机/互联网|】侏罗纪软件模式定制开发(2020-10-14 15:33)
【计算机/互联网|】S2b2C供应商系统 营销闭环(2020-10-10 17:46)
【计算机/互联网|程序设计开发】盛都汇系统奖励机制(2020-10-10 17:20)
【A8站-免费源码分享|网站源码】积分商城系统APP开发(2020-09-23 14:56)
联系我们
Q Q:3101359898 点击直接对话
电话:18580901894
邮箱:admin#a8zhan.com
时间:09:00 - 24:00
手机二维码 访问手机版
返回顶部