今天查看MySQL慢查询日志,查看一个四表关联的SQL操作,耗时1006s。这次也是基于基于子查询的思路,对上表进行优化。使时间复杂度降到n^2级别。但优化之后时间反而是原来的三倍多。 原SQL语句: 耗时1s多, 优化后的语句: 查看其执行计划后可知: 修改后的执行计划: 由于索引的存在:原SQL ...
分类:
数据库 时间:
2018-08-16 01:10:18
阅读次数:
204
更多 1 http://outofmemory.cn/code-snippet/742/nginx-location-configuration-xiangxi-explain 正确未知,仅供参考 nginx 语法规则: location [=|~|~*|^~] /uri/ { … } = 开头表示 ...
分类:
其他好文 时间:
2018-08-15 13:04:32
阅读次数:
180
Hive优化 Hive优化目标 在有限的资源下,执行效率更高 常见问题 数据倾斜 map数设置 reduce数设置 其他 在有限的资源下,执行效率更高 数据倾斜 map数设置 reduce数设置 其他 Hive执行 HQL --> Job --> Map/Reduce 执行计划 explain [e ...
分类:
其他好文 时间:
2018-08-15 12:04:09
阅读次数:
164
Beautiful is better than ugly. 优美胜于丑陋 Explicit is better than implicit. 明了胜于晦涩 Simple is better than complex. 简洁胜于复杂 Complex is better than complicate ...
分类:
编程语言 时间:
2018-08-14 19:59:40
阅读次数:
170
项目场景:Mongo在首次查询特慢,后面就好的。如果长时间不查询,下次开始的第一次又将非常慢,于是从链接当时多方面,排查最终发现还是mongo索引建的有问题。 MongoDB在大批量数据查询时经常会遇到查询耗时长,通常情况采用建各种索引来优化。 首先第一步排查,可以在查询后使用.explain()来 ...
分类:
数据库 时间:
2018-08-14 15:00:24
阅读次数:
154
MySQL的EXPLAIN命令用于SQL语句的查询执行计划(QEP)。这条命令的输出结果能够让我们了解MySQL 优化器是如何执行SQL 语句的。这条命令并没有提供任何调整建议,但它能够提供重要的信息帮助你做出调优决策。 语法 MySQL 的EXPLAIN 语法可以运行在SELECT 语句或者特定表 ...
分类:
其他好文 时间:
2018-08-08 13:45:19
阅读次数:
180
pt-query-digest基本使用: pt-query-digest基本使用: https://www.percona.com/downloads/percona-toolkit/LATEST/ 选择对应版本 下载完毕后上传到对应目录/server/tools/ MySQL配置文件: 1 [my ...
分类:
数据库 时间:
2018-08-05 14:17:54
阅读次数:
232
Please enter a commit message to explain why this merge is necessary. 请输入提交消息来解释为什么这种合并是必要的(提交信息) git 在pull或者合并分支的时候有时会遇到这个界面。可以不管(直接下面3,4步),如果要输入解释的话 ...
分类:
其他好文 时间:
2018-08-04 16:18:38
阅读次数:
180
1.索引的作用: (1)提高查询速度 (2)提高排序速度 (3)提高分组统计的速度 2.索引的解析: explain select * from t4 where a1=3 and a2>4 and a3= 5 3.聚簇索引和非聚簇索引 myisam 存储引擎使用的是非聚簇索引 innodb 采用的 ...
分类:
数据库 时间:
2018-08-03 23:41:49
阅读次数:
227
在工作中,我们用于捕捉性能问题最常用的就是打开慢查询,定位执行效率差的SQL,那么当我们定位到一个SQL以后还不算完事,我们还需要知道该SQL的执行计划,比如是全表扫描,还是索引扫描,这些都需要通过EXPLAIN去完成。EXPLAIN命令是查看优化器如何决定执行查询的主要方法。可以帮助我们深入了解M ...
分类:
其他好文 时间:
2018-08-03 14:42:37
阅读次数:
181