知识梳理、总结、分享
业精于勤荒于嬉,行成于思毁于随
索引 索引
数据结构B 树B 树每个节点都包含 key 值和 data 值。 如果 data 比较大时,每一页存储的 key 会比较少; 当数据比较多时,要经历多层节点才能查询在叶子节点的数据。 B+ 树 所有叶子节点中包含了全部关键字的信息 各叶子节
2021-03-13
count优化 count优化
count说明count(a) 和 count(*)当 count 统计某一列时,比如count(a),a 表示列名,是不统计 null 的。 而 count(*)无论是否包含空值,都会统计。 MyISAM/InnoDB count(*)
2021-03-13
join优化 join优化
关联查询Nested-Loop Join思想 一次一行循环:从驱动表中读取行并取到关联字段,根据关联字段在被驱动表取出满足条件的行(使用索引),然后取两张表的结果合集。manual 在关联字段有索引时,才会使用 NLJ,如果没索引,就会使
2021-03-13
分页查询优化 分页查询优化
分页查询性能优化,转换为主键查询或者排序和分页操作先查出主键,然后根据主键查到对应的记录。
2021-03-13
order/group by优化 order/group by优化
order by 原理按照排序原理分manual,MySQL 排序方式分两种: 通过有序索引直接返回有序数据:Using index 通过 Filesort 进行的排序:Using filesort Filesort是内存排序还是磁盘排
2021-03-13
批量数据导入优化 批量数据导入优化
批量数据导入优化方法:一次插入多行的值,关闭自动提交,redo log和bin log刷盘次数。
2021-03-13
索引失效 索引失效
函数操作对条件字段做函数操作,可能破坏了索引值的有序性,走不了索引。 select * from t1 where date(c) ='2019-05-21'; 优化:改成范围查询 select * from t1 where c>='20
2021-03-13
慢查询定位与分析 慢查询定位与分析
慢查询的定位和分析方法。
2021-03-11
redis应用 redis应用
分布式锁实现:set lock:codehole true ex 5 nx 注意:不要用于较长任务,可能超时释放 优化:设置value是一个随机值,保证不会被其他线程释放 可重入锁:基于线程的Threadlocal变量存储当前持有锁的计数。
2021-03-10
redis思维导图 redis思维导图
博客中redis相关思维导图。
2021-03-08
kafka集群配置 kafka集群配置
Broker 端参数 log.dirs:Broker 需要使用的若干个文件目录路径,必须指定;最好不同路径挂载到不同的物理磁盘,提升读写性能且能能够实现故障转移 log.dir:单个路径 zookeeper.connect:zookee
2020-12-10
redis6.0 redis6.0
多线程问题单个主线程处理网络请求的速度跟不上底层网络硬件的速度。 优化多个 IO 线程并行处理网络操作,可以提升实例的整体处理性能。 使用单线程执行命令操作,就不用为了保证 Lua 脚本、事务的原子性,额外开发多线程互斥机制了。 具体流程1
2020-12-09
6 / 8