当前位置:网站首页>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
走索引:二分查找
不走索引:全部扫描
说说索引:
边栏推荐
- As soon as flink cdc is started, the CPU of the source Oracle server soars to more than 80%. What is the reason?
- C Expert Programming Chapter 4 The Shocking Fact: Arrays and Pointers Are Not the Same 4.5 Other Differences Between Arrays and Pointers
- Summary of MySQL database interview questions (2022 latest version)
- C Expert Programming Chapter 5 Thinking about Chaining 5.6 Take it easy --- see who's talking: take the Turning quiz
- Use Patroni callback script to bind VIP pit
- 部署LVS-DR群集【实验】
- Performance testing with Loadrunner
- 解决安装nbextensions后使用Jupyter Notebook时出现template_paths相关错误的问题
- (Kettle) pdi-ce-8.2 连接MySQL8.x数据库时驱动问题之终极探讨及解决方法分析
- Typora 使用保姆级教程 | 看这一篇就够了 | 历史版本已被禁用
猜你喜欢
Do you think border-radius is just rounded corners?【Various angles】
编程大杂烩(四)
3面头条,花7天整理了面试题和学习笔记,已正式入职半个月
你以为border-radius只是圆角吗?【各种角度】
Teenage Achievement Hackers Need These Skills
FPGA学习笔记——知识点总结
Embedded system driver primary [3] - _IO model in character device driver foundation
Web Basics and Exercises for C1 Certification - My Study Notes
[Evaluation model] Topsis method (pros and cons distance method)
Unity Visual Effect Graph入门与实践
随机推荐
7.18 Day23----标记语言
What are the functions of mall App development?
编程大杂烩(三)
《看见新力量》第四期免费下载!走进十五位科技创业者的精彩故事
C Expert Programming Chapter 5 Thinking about Chaining 5.6 Take it easy --- see who's talking: take the Turning quiz
如何低成本修bug?测试左移给你答案
自动化测试的成本高效果差,那么自动化测试的意义在哪呢?
C Expert Programming Chapter 4 The Shocking Fact: Arrays and pointers are not the same 4.4 Matching declarations to definitions
8. Custom mapping resultMap
代码重构:面向单元测试
How to view sql execution plan offline collection
LCP 17. 速算机器人
4.3 Annotation-based declarative transactions and XML-based declarative transactions
编程大杂烩(四)
【问题解决】同一机器上Flask部署TensorRT报错记录
5个开源组件管理小技巧
力扣:63. 不同路径 II
canal实现mysql数据同步
OpenRefine中的正则表达式
JS基础--强制类型转换(易错点,自用)