当前位置:网站首页>7.15 Day21---MySQL----Index
7.15 Day21---MySQL----Index
2022-08-04 05:35:00 【Which cookie are you?】
目录
Syntax for creating and dropping indexes:
NYSQLHow the index is designed:
索引:
索引的优缺点:
时间上
Indexes can greatly improve the speed of queries
At the expense of the speed of additions, deletions and changes,Because in order to ensure the orderliness of the index when adding, deleting and modifying,需要动态维护索引
空间方面:索引需要占物理空间.
索引的分类
主键索引:关键字primary key
唯一索引:关键字 unique
普通索引(非唯一):关键字 index
全文索引:关键字 fulltext
聚簇索引=主键索引=一级索引
非聚簇索引=(唯一索引,普通索引)=二级索引
Frm文件:表结构文件
Ibd文件:表数据文件
Create drop alter-操作frm文件
Insert update delete -操作ibd文件
Only the primary key index is called a clustered index,A non-primary key index is called a non-clustered index
Innodb不支持全文索引
创建删除索引的语法
Clustered indexes are native to the table,We create non-clustered indexes ourselves,如果表没有主键.Then he will select the hidden column by defaultrowid 来创建聚簇索引
Syntax for creating and dropping indexes:
(聚簇索引=The primary key index comes with the table,We create non-clustered indexes ourselves)
(如果表没有主键,Then the hidden column will be selectedrowid来创建聚簇索引)
创建
1.在create table建表的时候添加索引
2.在create tableAfter the table is created successfully,使用alter语句添加索引
ALTER TABLE 表名 ADD INDEX 索引名(字段名);
3.在create tableAfter the table is created successfully,使用create index语句添加索引
CREATE INDEX 索引名 ON 表名(字段名);
删除
1.使用alter语句删除索引
ALTER TABLE 表名 DROR INDEX 索引名;
2.使用drop语句删除索引
ORDR INDEX 索引名 ON 表名;
索引的数据结构:
MYSQLThe index supports two data structures
1.B+TREE B+树结构的索引(支持范围查询)
2.HASH The index of the hash structure(不支持范围查询)
Evolution of data structures:
二叉树:
问题:Unable to balance itself
平衡二叉树-AVL树:
Left-handed algorithm:When the depth of the right leaf node-The depth of the left leaf node>1的时候,触发左旋
右旋算法:When the depth of the left leaf node-The depth of the right leaf node>1的时候,触发右旋
目的:Maintain the balance of the tree
多路平衡二叉树-B树:
树的度数:The number of elements that can be stored in each node
One-way tree:度数=1
多路树:度数=n,n>1
data of the same size,One-way trees aretall skinny tree,Multiway trees areChunky tree
The advantage of multi-way trees over single-way trees is that更少的磁盘IO就可以找到数据
NYSQLHow the index is designed:
Each node of the tree is a disk block,MYSQL将表的ibdThe file is split into many disk blocks,The size of each disk block is uniform16KB,每次磁盘IORead a disk block of data,A disk block of data is also called a page of data
B+树和B-树的区别:
1个节点=1个磁盘块=16KB
假设一行数据data是200字节,主键id是8个字节,B树,A disk block is approximately stored8行数据,B+树,A disk block can probably be stored1000个主键id
B+树:
1.The bottommost leaf nodes form a singly linked list
2.Some elements are redundant
3.Only the bottommost leaf nodes store data,All nodes in the upper layer only store the primary keyid
B-树:
行数据dataStored with the primary key
走索引:二分查找
不走索引:全部扫描
说说索引:
边栏推荐
- Write golang simple C2 remote control based on gRPC
- Summary of MySQL database interview questions (2022 latest version)
- 你以为border-radius只是圆角吗?【各种角度】
- BFC、IFC、GFC、FFC概念理解、布局规则、形成方法、用处浅析
- C Expert Programming Chapter 4 The Shocking Fact: Arrays and Pointers Are Not the Same 4.3 What is a Declaration and What is a Definition
- Wwise入门和实战
- day13--postman interface test
- 12、分页插件
- 梳理CamStyle、PTGAN、SPGAN、StarGAN
- Will the 2023 PMP exam use the new version of the textbook?Reply is here!
猜你喜欢
8.03 Day34---BaseMapper query statement usage
部署LVS-DR群集【实验】
Grain Mall - Basics (Project Introduction & Project Construction)
Summary of MySQL database interview questions (2022 latest version)
What is the salary of a software testing student?
利用Jenkins实现Unity自动化构建
读者让我总结一波 redis 面试题,现在肝出来了
8、自定义映射resultMap
TSF微服务治理实战系列(一)——治理蓝图
嵌入式系统驱动初级【3】——字符设备驱动基础中_IO模型
随机推荐
渗透测试(PenTest)基础指南
Interesting Kotlin 0x0E: DeepRecursiveFunction
What are the steps for how to develop a mall system APP?
As soon as flink cdc is started, the CPU of the source Oracle server soars to more than 80%. What is the reason?
MySQL database (basic)
企业需要知道的5个 IAM 最佳实践
Get the selected content of the radio box
Wwise入门和实战
代码重构:面向单元测试
4.2 声明式事务概念
OpenRefine开源数据清洗软件的GREL语言
嵌入式系统驱动初级【4】——字符设备驱动基础下_并发控制
Do you think border-radius is just rounded corners?【Various angles】
Uni-app 小程序 App 的广告变现之路:全屏视频广告
CentOS7 —— yum安装mysql
4.3 Annotation-based declarative transactions and XML-based declarative transactions
Typora 使用保姆级教程 | 看这一篇就够了 | 历史版本已被禁用
【问题解决】同一机器上Flask部署TensorRT报错记录
[Cocos] cc.sys.browserType可能的属性
canal实现mysql数据同步