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

咸宁网站设计南京网站工作室

咸宁网站设计,南京网站工作室,青海环保网站建设公司,平乡企业做网站索引是啥 可以把Mysql的索引看做是一本书的目录#xff0c;当你需要快速查找某个章节在哪的时候#xff0c;就可以利用目录#xff0c;快速的得到某个章节的具体的页码。Mysql的索引就是为了提高查询的速度#xff0c;但是降低了增删改的操作效率#xff0c;也提高了空间…索引是啥 可以把Mysql的索引看做是一本书的目录当你需要快速查找某个章节在哪的时候就可以利用目录快速的得到某个章节的具体的页码。Mysql的索引就是为了提高查询的速度但是降低了增删改的操作效率也提高了空间的开销。比如一本书很薄的时候章节不多对应的目录也就很少 可能才一两页当书的章节很多时对应的目录也就很多需要更多的页码来存储目录当数据库中表的数据很多时对应的索引也就需要更多的空间来保存因此说空间的开销会被增加。 查看索引 show index from 表名 key_name 是索引名column_name是根据id这列创建了索引。当表里有primary key、unique和foreign key 时数据库会自动创建索引每次进行操作表时数据库会自动判断是否走索引效率高不高。 创建索引 create index 索引名 on 表名(列名) 针对student里的name列创建一个名为inx_name的索引当再次查看student里的索引时可以发现多了一个名为inx_name的索引名。 删除索引 drop index 索引名 on 表名 索引的数据结构 MySQL创建索引的目的是为了加快查找速度因此可以考虑查找速度较快的数据结构比如哈希表哈希表的查找时间复杂度是O(1)不过不能范围查询但是MySQL经常查询时带有范围条件因此哈希表是不适合做索引的数据结构。二叉搜索树适合范围查询查询的速度也比较快时间复杂度是O(N)但是二叉搜索树的高度决定了元素的比较次数当树的高度较高时比较次数也会增加而比较操作又需要进行IO操作的因此当比较次数增加时IO操作的次数也增加了IO操作是很费系统资源的所以二叉搜索树也不适合索引的数据结构。针对二叉搜索树的高度问题可以引入一个N叉搜索树把高度降低。N叉搜索树的典型实现是B树N叉搜索树每个节点有N个key同时有多个分叉因此这样就把高度降低了不过比较次数并没有减少一个节点上的元素可能涉及到多次比较但是读写硬盘IO的次数减少了因为每个节点都在硬盘上读一次硬盘可以读到N个key之前的二叉搜索树读一次硬盘只能获得一个key。但是B树还是不能做索引的数据结构。现在就针对比较次数进行优化引入了一个B树B树也是一个N叉搜索树B树每个节点上包含N个keyN个key可以划分N个区间每个区间内的最后一个key是最大值可以看下图发现叶子没有了80、90这种节点父元素的key会以最大值的方式在子元素中重复出现因此叶子节点就包含了整个数据的全集最后再把叶子每个节点用类似于链表的方式连接起来。 B树是很适合做MySQL的索引它具有以下几个特点 由于高度降低了因此比较次数降低了IO读写次数也减少了叶子节点之间连接更适合做范围查询比如查询 3id and id 10的元素可以直接从叶子节点中取。 由于所有数据元素都落在了叶子节点因此查询哪个元素比较次数都是差不多的查询操作相对均衡。而对于B树的查询可能有的快有的慢比如查询根节点的元素时就很快查询叶子节点时就很慢。 由于所有的key都会在叶子节点体现因此非叶子节点可以只存一个索引值比如id叶子结点存数据库里真实的数据数据行这样就导致非叶子节点占用的空间大大降低有可能在读取硬盘时可以把非叶子节点的索引值全部读到内存中更进一步的降低了IO次数。 对于带有主键列的索引是按照这种B树组织的而对于不带主键列的数据创建了索引是按另一种B树实现的。比如非叶子节点存学生姓名name叶子节点存放主键id当使用主键列查询数据时只需要去主键列创建的索引查询一遍即可当使用非主键列创建的索引需要去非主键列索引里查询到对应的主键id再使用这个id去主键列索引里查询对应的数据需要两次查询这种操作称为”回表“。
http://www.w-s-a.com/news/358681/

相关文章:

  • 地方门户类网站产品推广惠州市中国建设银行网站
  • 网站建设公司推荐5788移动版wordpress
  • 产品类型 速成网站淘宝怎么建立自己的网站
  • 南京优化网站建设公司的网站怎么建设
  • 做网站开发能挣钱月嫂云商城网站建设
  • 包装网站模板新手入门网站建设
  • 做网站的天津哪个公司做网站
  • 网站建设摊销时间是多久微信官网免费下载安装
  • 网站解析是做a记录吗群晖 wordpress 阿里云
  • 涉县移动网站建设公司常州做网站的公司有哪些
  • 网站批量创建程序中国十大人力资源公司
  • 菏泽网站建设 梧桐树二次开发创造作用
  • 维护网站费用长沙广告设计公司排名
  • 模仿别人网站侵权wordpress 修改链接失效
  • wordpress文章设置受密码保护南宁网站优化公司哪家好
  • 网站开发工程师介绍设计类的网站
  • 嘉兴seo网站推广中山建网站多少钱
  • 高端汽车网站建设帮别人做网站自己为什么会被抓
  • 网站开发实验室建设方案wordpress 主题丢失
  • 珠宝网站建设平台分析报告郑州最新发布
  • 世界杯最新排名泉州seo网站关键词优
  • 广州公司网站提供如何推广新品
  • 网站建设如何描述沈阳网站建设推广平台
  • 用dw制作个介绍家乡网站学生个人简历
  • 建设银行企业网站访问不了wordpress搬到谷歌服务器
  • 网站建设与网站优化销售别墅庭院园林景观设计公司
  • 沈阳红方城网站建设专业的微网站哪家好
  • 医院网站asp东营信息发布平台
  • 网站全站建设开题报告范文南京本地网站
  • 网站漏洞扫描工具wampserver集成环境搭建了一个织梦cms网站