MySQL查询执行流程查询流程:客户端发送一条查询给服务器;服务器先检查查询缓存,如果命中了缓存,则立即返回存储在缓存中的结果;否则,进入下一阶段;服务器进行SQL解析、预处理,再由优化器生成对应的执行计划;MySQL根据优化器生成的执行计划,调用存储引擎的API来执行查询;将结果返回给客户端;查询...
分类:
数据库 时间:
2014-05-12 12:10:40
阅读次数:
427
目录一 SPM
说明相关名词说明SPM的特点与profile和outline相比更加灵活的控制手段SPM使计划真正的稳定SPM的控制方式SPM如何捕捉加载执行计划自动捕捉批量导入执行计划的选择过程执行计划的演化evolution修改已有的Baseline相关MOS
文档二 SPM 示例自动捕捉手工捕...
分类:
数据库 时间:
2014-05-09 15:54:07
阅读次数:
603
缓存执行计划 SQL Server 2008提供了一些服务器对象来分析执行计划
Sys.dm_exec_cached_plans: 包含缓存的执行计划,每个执行计划对应一行。 Sys.dm_exec_plan_attributes:
这是一个系统函数,每一个执行计划都对应着一些属性,在这个系统函数中...
分类:
其他好文 时间:
2014-05-09 07:47:25
阅读次数:
295
AUTOTRACE是一项SQL*Plus功能,自动跟踪为SQL语句生成一个执行计划并且提供与该语句的处理有关的统计。SQL*Plus
AUTOTRACE可以用来替代SQL
Trace使用,AUTOTRACE的好处是您不必设置跟踪文件的格式,并且它将自动为SQL语句显示执行计划。然而,AUTOTRAC...
分类:
数据库 时间:
2014-05-09 05:50:38
阅读次数:
381
介绍
Spork是Pig on Spark的highly experimental版本,依赖的版本也比较久,如之前文章里所说,目前我把Spork维护在自己的github上:flare-spork。
本文分析的是Spork的实现方式和具体内容。
Spark Launcher
在hadoop executionengine包路径下,写了一个Spark启动器,同MapReduceLauncher类似,会在launchPig的时候,把传入的物理执行计划进行翻译。
MR启动器翻译的是MR的操作,以及进一步的MR...
分类:
其他好文 时间:
2014-05-09 02:08:17
阅读次数:
358
概述
Oracle Outline是用来保持SQL执行计划(execution
plan)的一个工具。我们可以通过outline工具防止SQL执行计划在数据库环境变更(如统计信息,部分参数等)而引起变化。
Outline的主要使用在以下情况:
1.
为避免在升级后某些sql出现严重性能下降而且在短时间内不能优化的情况,
我们可以使用outline的功能将原生产库中的sql执...
分类:
数据库 时间:
2014-05-08 10:49:12
阅读次数:
468
MySQL 可以看成是二层架构
第一层SQL Layer,包括权限判断,sql 解析,执行计划优化,query cache 的处理等等;
第二层存储引擎层(Storage Engine Layer),是底层数据存取操作实现部分,由多种存储引擎共同组成。
SQL Layer 中包含了多个子模块:
1、初始化模块
MySQL Server 启动的时候,对整个系统做各种各样的初...
分类:
数据库 时间:
2014-05-08 10:47:13
阅读次数:
381
经过长时间学习Oracle,于是和大家分享一下,看完本文你肯定有不少收获,希望本文能教会你更多东西。Oracle执行计划的每一步返回一组行,它们或者为下一步所使用,或者在最后一步时返回给发出SQL语句的用户或应用。由每一步返回的一组行叫做行源(row
source)。下面得树状图显示了从一步到另一步...
分类:
数据库 时间:
2014-05-08 09:18:30
阅读次数:
441
一段SQL代码写好以后,可以通过查看SQL的执行计划,初步预测该SQL在运行时的性能好坏,尤其是在发现某个SQL语句的效率较差时,我们可以通过查看执行计划,分析出该SQL代码的问题所在。那么,作为开发人员,怎么样比较简单的利用执行计划评估SQL语句的性能呢?总结如下步骤供大家参考:1、
打开熟悉的查...
分类:
数据库 时间:
2014-05-08 08:41:50
阅读次数:
356
在Oracle数据库操作中,为什么有时一个表的某个字段明明有索引,当观察一些语的执行计划确不走索引呢?如何解决呢?本文我们主要就介绍这部分内容,接下来就让我们一起来了解一下。一、
不走索引大体有以下几个原因:你在Instance级别所用的是all_rows的方式你的表的统计信息(最可能的原因)你的表...
分类:
数据库 时间:
2014-05-08 07:14:38
阅读次数:
479