一个索引惹的祸
一个系统最近报表模块全面出现问题,应用层面设置了时间限制,如果报表查询在6s内没有返回结果,就提示错误终止。开发人员自己进行了一些测试,给出的结论是如果使用预编译(目前生产环境就使用了java语言中的预编译)性能就很差,6s内出不了结果,如果不使用预编译,在3秒内出结果。因此开发人员认为是数据库...
autotrace得到了虚假执行计划
一天朋友问我一个很基础的问题:函数索引是不是在sql中要使用了建立索引的函数才能被使用?我都没思考就回答是!那么问题来了,接下来朋友把一条sql的执行计划发给了我,说他的一条sql语句,语句中没有使用函数,但是执行计划中走了函数索引。sql如下:SQL> select count(1) &nb...
执行计划出现COLLECTION ITERATOR PICKLER FETCH
今天在使用explain plan for查看sql执行计划时,出现了如下奇怪的执行计划SQL> explain plan for select * from test where object_id = 100;Explained.SQL> select * from table(dbms_xplan.display());14 rows selected....
解读AWR报告Advisory Statistics
对于Oracle的内存参数的设定存在很多争议,当然具体的设置需要根据系统的情况进行调整,不能一概而论,因此内存参数的设置也就成为了一个难点。但是Oracle 10g、11g的自动内存管理功能还是很强大的,对于负载一般的系统,即使内存参数设置不太合理,也是足以支撑系统正常运行的。下面就AWR报告中...
Streams AQ: qmn coordinator waiting for slave to start等待事件
Streams AQ: qmn coordinator waiting for slave to start等待事件很少见到,今天在查看一个客户的AWR报告中发现了这个等待事件,AWR报告的TOP如下: Event...
批量生成AWR报告
最近在做优化,涉及的系统较多,发现弄AWR是个体力活,我的上一篇博文解决了如何从客户的生成环境下将AWR数据导入到自己的机子,博文地址:http://blog.itpub.net/29821678/viewspace-1377260/。但是,导入之后问题来了,我需要分析近一个月的AWR报告,每隔一个小时生成一个AWR报告,那么一天...
AWR 导出/导入/生成报告
客户的生产系统总是那么重要,一般不会让你长时间的在他们的生产机器上做操作,但是分析和生成AWR报告都是一个相对耗时的工作,当然只生成一个AWR报告是不费时的,但是要对系统进行详细分析的时候,我们可能需要的是一段时间内的所有AWR数据,需要根据实际情况进行选取。这时我们就需要将客户的AWR数...
对一个购物篮需求的思考
一天一位搞营销的朋友找我帮忙做一个数据分析,就是流行的购物篮分析,需求是这样的,他要根据用户的订单信息,找出哪些产品的组合是最受欢迎的,产品的组合类型为2种产品和3种产品。我根据朋友的要求,设计了两张表,一张basket表,用于存放用户的订单信息,一张item表,用于存放产品信息,代码如下...