当前位置: 首页 > wzjs >正文

每个城市建设规划在哪个网站百度人工服务热线24小时

每个城市建设规划在哪个网站,百度人工服务热线24小时,政府门户网站群建设方案,做足球预测的网站索引 概念 索引是一种特殊的文件,包含着对数据表里所有记录的引用指针。可以对表中的一列或多列创建索引,并指定索引的类型,各类索引有各自的数据结构实现。 作用 数据库中的表、数据、索引之间的关系,类似于书架上的图书、书籍内…

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述


索引


概念


索引是一种特殊的文件,包含着对数据表里所有记录的引用指针。可以对表中的一列或多列创建索引,并指定索引的类型,各类索引有各自的数据结构实现。


作用


  • 数据库中的表、数据、索引之间的关系,类似于书架上的图书、书籍内容和书籍目录的关系。
  • 索引所起的作用类似书籍目录,可用于快速定位、检索数据。
  • 索引对于提高数据库的性能有很大的帮助。

在这里插入图片描述


使用场景


要考虑对数据库表的某列或某几列创建索引,需要考虑以下几点:

  • 数据量较大,且经常对这些列进行条件查询;
  • 索引会提高查询速度,但是可能会影响增删改操作的速率,因为增删改操作,需要同步更新维护索引;
  • 索引会占用额外的磁盘空间;

满足以上条件时,考虑对表中的这些字段创建索引,以提高查询效率。反之,如果非条件查询列,或经常做插入、修改操作,或磁盘空间不足时,不考虑创建索引。


操作索引的SQL


创建主键约束(PRIMARY KEY)唯一约束(UNIQUE)外键约束(FOREIGN KEY)时,这几个约束都会先进行查询操作:在执行SQL语句前,如果有主键约束,数据库会先进行查询操作,确保表主键唯一;如果有唯一约束,会查询该列是否有重复数据;如果有外键约束,在子表中涉及插入/修改,需要查询父表,反之亦然。

所以上述的约束涉及频繁的查询操作,数据库会为带有上述约束的对应列自动创建索引。

在这里插入图片描述


drop table student ; 
drop table class ; create table class( classId int primary key , className varchar(20) ) ;create table student ( id int primary key , name varchar(20) , classId int , foreign key (classId) references class(classId) 
);show index from student;

在这里插入图片描述


查看索引


show index from table_name ;

创建索引


创建索引对于达到千万级别的数据量来说,是一个危险操作,很可能触发大量的硬盘 IO ,直接导致机器卡死;所以在最初创建表的时候,就把所需的索引创建规划好,如果要对已经有大量数据的列添加索引,就需要部署新的数据库机器。


create index index_name on table_name(column_name);

create index name_index on student(name) ;  -- 给 student 表的 name 列创建索引show index from student ;

在这里插入图片描述


删除索引


删除索引的操作,只能删除自己创建的索引,不能删除自动生成的索引;慎重使用该操作。

drop index index_name on table_name ;

索引底层的数据结构


在这里插入图片描述


所以,引入数据结构 B+ 树,B+ 树是为数据库索引量身定做的数据结构:

在这里插入图片描述

B+树在数据库系统中具有以下几个显著优势:


(1) 高效的查找性能:


B+树是一种自平衡树,每个叶子节点到根节点的路径长度相同;

B+树在插入和删除节点时会进行分裂和合并操作,以保持树的平衡,但它又会有一定的冗余节点,使得删除的时候树结构的变化小,更高效。

查找、插入、删除等操作的时间复杂度为0(log n),能够保证在大数据量情况下也能有较快的响应时间。


(2) 树的高度增长不会过快,使得查询磁盘的I/O次数减少:


B+树不像红黑树,数据越多树的高度增长就越快。它是多叉树,非叶子节点仅保存主键,或索引值和页面指针,使得每一页能容纳更多的记录,因此内存中就能存放更多索引,容易命中缓存,使得查询磁盘的 I/O 次数减少。


(3) 范围查询能力强:


B+树特别适合范围查询。因为叶子节点通过链表链接,从根节点定位到叶子节点,查找到范围的起点之后,只需要顺序扫描链表即可遍历后续的数据,非常高效。


在这里插入图片描述


在这里插入图片描述


扩展知识:B+树和B树区别


  • (1) B树每个节点都存储了完整的数据,而B+树非叶子节点仅存储key和指针,完整数据存储在叶子节点。 这使得B+树可以在内存中存放更多索引页,减少磁盘查询次数。

  • (2) B+树叶子组成了链表,便于区间查找,而B树只能每一层遍历查找。

  • (3) B+树查询时间更平均、稳定,都需要从根节点扫描到叶子节点。而B树则在非叶子节点就可能找到对应的数据返回。

经典面试题


在这里插入图片描述


在这里插入图片描述
在这里插入图片描述

http://www.dtcms.com/wzjs/311072.html

相关文章:

  • 做信誉认证对网站有什么好处大连网站优化
  • html网页设计思路太原seo团队
  • 网站做点击广告是怎么回事优化设计七年级上册语文答案
  • 网站都是什么软件做的百度关键词优化是什么意思
  • 代做吧机械网站河北百度seo软件
  • 网站500兆空间多少钱市场营销策划书范文5篇精选
  • 龙禧网站建设seo建站的步骤
  • 做网站作业什么主题搜索引擎推广方式有哪些
  • 学信网网站建设怎么搞seo自学
  • 攀枝花移动网站建设网站收录情况
  • 企业网站建设属于什么科目佛山网站建设公司
  • 临河 网站建设班级优化大师下载安装
  • 深圳南山企业网站建设seo教程培训
  • 网站开发需要哪些软件二级域名和一级域名优化难度
  • 不限流量网站空间如何推广一个项目
  • 南昌科技学院是几本大学seo sem
  • 百雀羚网站建设模版关键词怎么选择技巧
  • 上饶网站建设公司百度指数数据
  • 网站建设的问题whois域名查询
  • 睢县网站建设深圳seo招聘
  • 网站建设招标方式seo权重是什么意思
  • 舆情系统是什么seo手机端排名软件
  • 网站开发日常工作营销培训课程
  • 做h5网站的公司新闻发布最新新闻
  • 方维网站后台提示验证码错误计算机培训机构
  • 云南省交通投资建设集团有限公司网站精准营销的成功案例
  • php 做网站xml地图宁波seo搜索引擎优化公司
  • 生活中优秀的产品设计seo整站优化报价
  • 海淀地区网站建设阿里巴巴关键词排名优化
  • 做纸箱在什么网站找客户百度获客平台