一起来读Greenplum/Deepgreen执行计划
来源:互联网 发布:网络公关服务公司 编辑:程序博客网 时间:2024/05/16 18:38
点击查看全文
日常SQL优化过程中,最好用的手段就是通过执行计划。在Greenplum和Deepgreen中,运行 EXPLAIN 后产生的执行计划呈树状,这棵树的每一个分叉,都代表了一个单独的数据库操作,例如:表扫描、表连接、聚合、排序。
日常SQL优化过程中,最好用的手段就是通过执行计划。在Greenplum和Deepgreen中,运行 EXPLAIN 后产生的执行计划呈树状,这棵树的每一个分叉,都代表了一个单独的数据库操作,例如:表扫描、表连接、聚合、排序。
由于返回数据行数是从下向上传递的,所以我们在分析执行计划时,也应该自下而上。通常来说,最底下的是表扫描操作(索引、位图索引扫描)。如果查询中涉及到连接、聚合、排序操作,那么表扫描动作的上层就会有对应的这些操作。通常最顶上的部分是节点间数据移动(重分布、广播、聚集操作),在查询过程中,这些操作会涉及到在节点间移动数据。
EXPLAIN 执行计划中,每一个单独的步骤都会呈现在单独一行里,带有对应的动作类型及查询数据所耗费的时间(查询首行所用时间..查询全部所用时间):
1.cost
Cost以磁盘页读取为测量单位,1.0等同于一个顺序的磁盘页读取。第一个预估时间是起始消耗,即查询首行所消耗的时间,第二个预估值是总消耗,即查询全部行所用的时间。
2.rows
rows指的是执行计划某部分返回的总行数。这个数量通常少于实际的返回行数,反应的只是一个预估的数量。最顶层的返回的预估数量最接近实际查询、修改或删除影响的行数。
3.width
操作返回的所有数据所占用的字节数。
很重要的一点是,上层节点所花费的时间包括所以子节点占用时间,计划最顶层包含总执行花费的预估,这也是我们追求优化的部分。另外执行计划的消耗只与执行计划本身关心的步骤有关,与查询结果传输到客户端的消耗时间等因素无关。
点击查看全文
- 一起来读Greenplum/Deepgreen执行计划
- Greenplum/Deepgreen主机改名
- Greenplum或DeepGreen的管理数据
- Deepgreen(Greenplum) DBA常用运维SQL
- Greenplum/Deepgreen系统配置参数查看与设置
- 技术文章 | Deepgreen/Greenplum删除节点步骤
- Greenplum或DeepGreen中检查资源队列状态
- Greenplum或DeepGreen数据库对象的使用和管理
- Greenplum或DeepGreen数据库查看表倾斜的方法总结
- Greenplum或DeepGreen数据库查看表倾斜的方法总结
- SQL慢查询在Greenplum/Deepgreen中的定位方法
- SQL慢查询在Greenplum/Deepgreen中的定位方法
- Greenplum或DeepGreen数据库查看表倾斜的方法总结(2)
- Greenplum或DeepGreen数据库查看表倾斜的方法总结(3)
- Deepgreen与Greenplum TPC-H性能测试对比(使用VitesseData脚本)
- Deepgreen & Greenplum DBA小白普及课之四(性能问题解答)
- Deepgreen & Greenplum DBA小白普及课之三(备份问题解答)
- Deepgreen & Greenplum DBA小白普及课之二(管理问题解答)
- 设计模式之外观模式
- hdu2582 f(n) 找规律 素数筛
- 移动端头部文件详解(二)
- winform项目的app.config和exe.config文件
- smart_ptr智能指针的简单实现
- 一起来读Greenplum/Deepgreen执行计划
- lvs+keepalived高可用
- JNI 方法
- 站内信表结构设计
- dede:list和dede:arclist有什么区别
- Java -version与实际配置版本JAVA_HOME不一致
- MySQL 5.7.18的安装与主从复制
- dedecms的dede:list和dede:arclist分页问题(包括列表序号)
- 2017-8-6