一、join优化Join查找操作的基本原则:应该将条目少的表/子查询放在Join操作符的左边。原因是在Join操作的Reduce阶段,位于Join操作符左边的表的内容会被加载进内存,将条目少的表放在左边,可以有效减少发生内存溢出错误的几率。Join查找操作中如果存在多个join,且所有参与join的...
分类:
其他好文 时间:
2014-07-22 22:56:14
阅读次数:
238
MySQL索引原理及慢查询优化转:http://tech.meituan.com/mysql-index.htmlMySQL凭借着出色的性能、低廉的成本、丰富的资源,已经成为绝大多数互联网公司的首选关系型数据库。虽然性能出色,但所谓“好马配好鞍”,如何能够更好的使用它,已经成为开发工程师的必修课,我...
分类:
数据库 时间:
2014-07-18 20:39:39
阅读次数:
451
RBO和CBO的基本概念 Oracle数据库中的优化器又叫查询优化器(Query Optimizer)。它是SQL分析和执行的优化工具,它负责生成、制定SQL的执行计划。Oracle的优化器有两种,基于规则的优化器(RBO)与基于代价的优化器(CBO) RBO: Rule-Based Optimiz...
分类:
数据库 时间:
2014-07-15 00:04:02
阅读次数:
581
在某些情况下,如果明知道查询结果只有一个,SQL语句中使用LIMIT 1会提高查询效率。例如下面的用户表(主键id,邮箱,密码):create table t_user(id int primary key auto_increment,email varchar(255),password var...
分类:
数据库 时间:
2014-07-11 22:15:52
阅读次数:
321
限制查询的行和列来提高性能
这条规则非常简单,这里就不细说了。
使用搜索可参数化判断(sargable conditions)来提高性能
Sargable 由 Search ARGument Able 简写而来,字面意思是搜索可参数化?还是比较晦涩哎...
总之使用Sargable判断可以帮助查询优化器更有效地利用索引,并提高采用 index seek 的可能性,我们先把所有的操作符分...
分类:
数据库 时间:
2014-07-09 12:50:31
阅读次数:
288
SQL Server索引的设计主要考虑因素如下: 检查WHERE条件和连接条件列; 使用窄索引; 检查列的选择性; 检查列的数据类型; 考虑列顺序; 考虑索引类型(聚集索引OR非聚集索引);一、检查WHERE条件列和链接条件列 当一个查询提交到SQL Server时,查询优化器尝试为查...
分类:
数据库 时间:
2014-07-07 09:47:11
阅读次数:
208
MS SQL Server查询优化方法查询速度慢的原因很多,常见如下几种 1、没有索引或者没有用到索引(这是查询慢最常见的问题,是程序设计的缺陷) 2、I/O吞吐量小,形成了瓶颈效应。 3、没有创建计算列导致查询不优化。 4、内...
分类:
数据库 时间:
2014-07-06 22:07:41
阅读次数:
251
早在Spark Submit 2013里就有介绍到Spark SQL,不过更多的是介绍Catalyst查询优化框架。经过一年的开发,在今年Spark Submit 2014上,Databricks宣布放弃Shark 的开发,而转投Spark SQL,理由是Shark继承了Hive太多,优化出现了瓶颈,如图:
今天把Spark最新的代码签了下来,测试了一下:
1、编译Spar...
分类:
数据库 时间:
2014-07-03 16:06:04
阅读次数:
534
select的 high_priority还是比较有用,在实践中,平均5~6秒提高到3秒========================================================================= 前面的部分主要是聚焦于如何让单独的查询执行的速度更快。MySQ....
分类:
数据库 时间:
2014-06-30 15:16:58
阅读次数:
261
SQL的解析引擎包括查询编译与查询优化和查询的运行,主要包括3个步骤:
查询分析:
制定逻辑查询计划(优化相关)
制定物理查询计划(优化相关)
查询分析: 将SQL语句表示成某种有用的语法树.
制定逻辑查询计划: 把语法树转换成一个关系代数表达式或者类似的结构,这个结构通常称作逻辑计划。
制定物理查询计划:把逻辑计划转换成物理查询计划,要求指定操作执行的顺序,每一步使用的算法,操作之间的传递方式等。...
分类:
数据库 时间:
2014-06-27 07:41:50
阅读次数:
244