Oracle-SQL程序优化4
从事一年DBA工作,经验尚浅,但是遇到问题总还是能够解决,今天就谈下我遇到的一个比较奇葩的问题。
运维人员告知我下午过后ETL一直卡住没有继续,那时我以为又是什么兼容性问题引起的,就重跑一下ETL,谁知又在第五步就卡住了,好几次都这样,单独执行ETL的那个节点也执行了很长时间都没有结束,也不报错。平时只要1秒就执行完的事,而且取消也花了好多时间。中午跑的时候没有问题啊,怎么会这样。以下是该图SQL的执行过程:


刚开始查表的高水位线,没有异常,因为表入数据前都要进行truncate的,排除。
查找表坏块,没有异常,排除。
锁也排除。
查看SQL执行计划,由于有远程表,执行计划不详细,但可以肯定SELECT语句执行没有问题,SELECT语句1秒就执行完了。
查看AWR分析报告
数据库重启了,也没有用

因为一直都没有执行完,看不出毛病,除了占用时间长之外。
后来就尝试新建表代替SAP_MO_SHORT这张表,谁知道结果还是一样,刚建的新表........
顿时很无语,以这条SQL建视图很快,但建表就很慢,而且插入SAP_MO_SHORT也是一样,超级久超级慢,真的更无语了..........
马上ETL作业又要跑了,无奈之下只能把JOB停了......
排除表问题后,就研究了一下SELECT语句,但执行很快啊,中午也没有问题,于是就把关联方式改了一下

居然执行不到1秒,数据量一样......有点怀疑人生了........
Oracle-SQL程序优化4的更多相关文章
- Oracle SQL性能优化技巧大总结
http://wenku.baidu.com/link?url=liS0_3fAyX2uXF5MAEQxMOj3YIY4UCcQM4gPfPzHfFcHBXuJTE8rANrwu6GXwdzbmvdV ...
- Oracle SQL 性能优化技巧
Select语句完整的执行顺序: SQL Select语句完整的执行顺序: 1. from子句组装来自不同数据源的数据: 2.where子句基于指定的条件对记录行进行筛选: 3.group by子句将 ...
- 利用 Oracle EM 企业管理器 进行oracle SQL的优化(自动生成索引)
利用 Oracle EM 企业管理器 进行oracle SQL的优化(自动生成索引) ##应用情景 项目中有大量的SQL,尤其是涉及到统计报表时,表关联比较多,当初开发建表时也没搞好索引关联的,上线后 ...
- ORACLE SQL性能优化(全)
ORACLE SQL性能优化(全) http://wenku.baidu.com/view/b2aaba3887c24028915fc337.html
- Oracle SQL语句优化34条
非常好用的SQL语句优化34条 1)选择最有效率的表名顺序(只在基于规则的优化器中有效): ORACLE 的解析器按照从右到左的顺序处理FROM子句中的表名,FROM子句中写在最后的表(基础表 dri ...
- Oracle SQL的优化
SQL的优化应该从5个方面进行调整:1.去掉不必要的大型表的全表扫描2.缓存小型表的全表扫描3.检验优化索引的使用4.检验优化的连接技术5.尽可能减少执行计划的Cost SQL语句:是对数据库(数据) ...
- Oracle SQL性能优化系列
1. 选用适合的ORACLE优化器 ORACLE的优化器共有3种: a. RULE (基于规则) b. COST (基于成本) c. CHOOSE (选择性) 设置缺省的优化器,可以通过对init.o ...
- ORACLE SQL性能优化汇总
ORACLE SQL语句共享 Oracle SQL语句具备共享特性,为了不让ORACLE数据库重复解析相同的简单单表SQL语句,ORACLE在SGA系统共享区域内SBP共享池内存放的SQL语句将被所有 ...
- Oracle SQL性能优化
(1) 选择最有效率的表名顺序(只在基于规则的优化器中有效):ORACLE的解析器按照从右到左的顺序处理FROM子句中的表名,FROM子句中写在最后的表(基础表 driving table) ...
- Oracle SQL性能优化(转)
(1) 选择最有效率的表名顺序(只在基于规则的优化器中有效): ORACLE的解析器按照从右到左的顺序处理FROM子句中的表名,FROM子句中写在最后的表(基础表 driving table ...
随机推荐
- MySql数据库优化-汇总
各位,不喜勿喷,和气生财- 数据库优化,是一种综合性的技术,不是通过某一种方式让数据库效率提高很多,而是通过各个方面的优化,来是数据库效率明显的稳步的提高. 主要包括以下: 1.库表的设计优化(三种范 ...
- 2019CCPC厦门游记
距离上次2018CCPC吉林打铁一年有余,这次的厦门也是我们team拿到的第一块区域赛牌子,写一篇博客留念一下QAQ. 作为弱校的菜鸡队,我们提前两天就来到厦门,不得不说刚到厦门的两天还是很快乐的,住 ...
- 搜索专题:Balloons
搜索专题:Balloons 这道题一看与时间有关,第一想到的就是BFS,定义一个状态,包含每一个状态的剩余气球数,已经进行的时间和每一个志愿者上一次吹气球的时间: 每一次状态转换时,检查是否有没有使用 ...
- docker无法删除<none>镜像
.进入root权限 sudo su # 或 sudo -i .停止所有的container(这样才能够删除其中的images): docker stop $(docker ps -a -q) 如果想要 ...
- volatile关键字?MESI协议?指令重排?内存屏障?这都是啥玩意
一.摘要 三级缓存,MESI缓存一致性协议,指令重排,内存屏障,JMM,volatile.单拿一个出来,想必大家对这些概念应该有一定了解.但是这些东西有什么必然的联系,或者他们之间究竟有什么前世今生想 ...
- C语言IOCP
C语言的IOCP example #include <winsock2.h> #include <ws2tcpip.h> #include <mswsock.h> ...
- JS预解释
1.声明(declare) var num // 告诉浏览器在全局作用域中有一个num变量 定义(defined) num = 12 // 给我们的比变量进行赋值 2.var:在预解释时只是提前 ...
- MongoDB 学习小笔记
1.配置:mongod --dbpath=D:\MongoDB\data mongo2.基本的增删查改 find() update()-- 整体更新,局部更新. 修改器: $inc db.person ...
- TableView 两种Style Plain and Group 区别以及进阶使用
一.UITableViewStylePlain 1.有多段时 段头停留(自带效果) 2.没有中间的间距和头部间距(要想有的重写UITableViewCell /UITableViewHeaderFoo ...
- Eclipse集成开发环境搭建
gdbserver安装: 安装gdb-server的环境变量要放在arm-linux-gcc的环境的前面,因为arm-linux-gcc的安装包里面也有gdb,linux系统在找指令时从/root/. ...