MySQL的索引是一个非常重要的知识点,也基本上是面试必考的一个技术点,所以非常重要。那你了解MySQL索引的数据结构是怎么样的吗?为什么要采用这样的数据结构?
现在化身为MySQL的架构师,一步步迭代设计出MySQL的索引结构,保证你再也忘记不了索引的结构了,轻松通过面试。
2024年07月17日
MySQL的索引是一个非常重要的知识点,也基本上是面试必考的一个技术点,所以非常重要。那你了解MySQL索引的数据结构是怎么样的吗?为什么要采用这样的数据结构?
现在化身为MySQL的架构师,一步步迭代设计出MySQL的索引结构,保证你再也忘记不了索引的结构了,轻松通过面试。
2024年07月17日
1、创建表通用sql
CREATE TABLE `ext_base_config` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'id',
`description` varchar(200) DEFAULT NULL COMMENT '字段表述',
`update_by` varchar(200) DEFAULT NULL COMMENT '更新者',
`create_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`update_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
PRIMARY KEY (`id`) USING BTREE
) COMMENT='通用表';
2024年07月17日
阿里云数据库ClickHouse二级索引功能近日已正式发布上线,主要弥补了ClickHouse在海量数据分析场景下,多维度点查能力不足的短板。在以往服务用户的过程中,作者发现绝大部分用户对ClickHouse单表查询性能优化问题感到无从下手,借此机会,本文会先为大家展开介绍ClickHouse在单表分析查询性能优化上的几个方法,基本涵盖了OLAP领域存储层扫描加速的所有常用手段。在解决过各种各样业务场景下的性能优化问题后,作者发现目前ClickHouse在解决多维搜索问题上确实能力不足,一条点查常常浪费巨大的IO、CPU资源,于是云数据库ClickHouse自研了二级索引功能来彻底解决问题,本文会详细介绍二级索引的DDL语法、几个典型适用场景和特色功能。希望可以通过本文让大家对ClickHouse在OLAP场景下的能力有更深的理解,同时阐述清楚二级索引适用的搜索场景。
2024年07月17日
后端面试中一定是必问mysql的,在以往的面试中好几个面试官都反馈我Mysql基础不行,今天来着重复习一下自己的弱点知识。在Mysql调优中索引优化又是非常重要的方法,不管公司的大小只要后端项目中用到了mysql,几乎都会遇到Mysql查询需要优化的需求。经常有时候前端业务没有压力,经常会在管理后台逻辑中遇到mysql统计查询压力,可能是代码写太烂了,哈哈。在日常工作中我遇到过同事建立索引后问我某个查询条件是否能命中索引,我只能说模糊记得最左匹配原则不能准确地告诉别人是否能命中索引,我今天就打算彻底解决这个问题。
2024年07月17日
MySQL联合索引实际上就是多列索引,是指在多个列上建立的索引,可以提高多列查询的效率。联合索引的结构和单列索引的结构类似,也是使用B+树数据结构来实现的。
在MySQL中,联合索引的B+树结构是由多个列组成的,每个节点都包含多个子节点和一个父节点。每个节点的值是由联合索引中所有列的值组合而成的,根据每个列的排序规则来进行排序。因此,联合索引的查询效率与每个列的排序规则有关,需要根据实际情况选择合适的排序规则。
2024年07月17日
建表语句和初始化数据如下:
-- test表a为主键
create table test (
a int not null,
b varchar(50),
c int not null,
primary key(a)
) engine=INNODB;
insert into test values
(1,'a',11),
(2, 'b', 12),
(3, 'c', 13),
(4, 'd', 14);
-- 创建联合索引 bc
ALTER TABLE test ADD index(b,c);