Troubleshooting

Visualizing Active Session History (ASH) Data With R

December 20, 2011
By
Visualizing Active Session History (ASH) Data With R

One of the easiest ways to understand something is to see a visualization. Looking at Active Session History (ASH) data is no exception and I’ll dive into how to do so with R and how I used R plots to visually present a problem and confirm a hypothesis. But first some background… Background Frequently...

Read more »

Creating Optimizer Trace Files

August 18, 2011
By

Many Oracle DBA’s are probably familiar with what Optimizer trace files are and likely know how to create them. When I say “Optimizer trace” more than likely you think of event 10053, right? SQL code like this probably is familiar then: In 11g, a new diagnostic events infrastructure was implemented and there are various...

Read more »

Troubleshooting Oracle Exadata

July 8, 2011
By

The crew at My Oracle Support (MOS) have an excellent starting point for troubleshooting Oracle Exadata. I’d recommend to add this one to your MOS bookmarks. Oracle Database Machine and Exadata Storage Server Information Center

Read more »

Reading Parallel Execution Plans With Bloom Pruning And Composite Partitioning

October 12, 2010
By

You’ve probably heard sayings like “sometimes things aren’t always what they seem” and “people lie”. Well, sometimes execution plans lie. It’s not really by intent, but it is sometimes difficult (or impossible) to represent everything in a query execution tree in nice tabular format like dbms_xplan gives. One of the optimizations that was introduced...

Read more »

Glenn Fawcetts's Oracle Analysis 101

December 10, 2008
By

Glenn Fawcett has put together a nice slide deck entitled “Oracle Analysis 101” that discusses techniques to collect and analyze performance data related to Oracle databases. It’s a good read so check it out. Glenn is also a great resource for Oracle on Sun Niagara 2 Processors (CMT) so be sure to peek at...

Read more »

DBMS_STATS, METHOD_OPT and FOR ALL INDEXED COLUMNS

October 14, 2008
By

I’ve written before on choosing an optimal stats gathering strategy but I recently came across a scenario that I didn’t directly blog about and think it deserves attention. As I mentioned in that previous post, one should only deviate from the defaults when they have a reason to, and fully understand that reason and...

Read more »

Understanding Performance

September 8, 2008
By

There has been some debate in forumsphere/blogosphere centered around Steve Karam’s observation of a 20x elapsed time difference in an update statement “by only changing the block size”. At this point in time, it is pretty much understood (I hope) that this performance delta is directly related to bug 6918210. This bug manifests its...

Read more »

Oracle 11g: Incremental Global Statistics On Partitioned Tables

July 16, 2008
By
Oracle 11g: Incremental Global Statistics On Partitioned Tables

Previously I blogged about the new and improved DBMS_STATS.AUTO_SAMPLE_SIZE used to calculate NDV in Oracle 11g and now I wanted to touch on another new feature of DBMS_STATS in 11g: Incremental Global Statistics On Partitioned Tables. Before Incremental Global Stats (Two-Pass Method) When DBMS_STATS.GATHER_TABLE_STATS collects statistics on a partitioned table, generally it does so...

Read more »

Using Bitmap Indexes Effectively

May 29, 2008
By

Recently I was reading this thread, “Trying to make use of bitmap indexes” on the Oracle Forum. Before I had finished a working example, Jonathan Lewis had posted his response which was on par with my thoughts. Since this is a topic I see frequently, I thought I would finish my experiment and publish...

Read more »

Choosing An Optimal Stats Gathering Strategy

March 26, 2008
By

Recently the Oracle Optimizer Development Team put out a White Paper entitled Upgrading from Oracle Database 9i to 10g: What to expect from the Optimizer. This paper discusses the main differences between 9i and 10g in the subject area of the Optimizer and Statistics. As G.I. Joe said, “Now we know! And knowing is...

Read more »

Awareness Test

March 21, 2008
By

I came across this video the other day and I immediately thought of rule #3 from my Got Root Cause? post: “Be detail oriented, but do not become too obsessed with any one detail.“ Watch the video and see if you pass the Awareness Test. Most importantly, remember the punch line of the video...

Read more »

ANSI Outer Joins And Lateral Views

February 18, 2008
By

A few months ago the Oracle Optimizer Team did a blog post entitled Outerjoins in Oracle. In the Lateral View section of that post they go through some examples and discuss how a query is transformed with the ANSI outer join syntax. I thought it would be useful to go through an example that...

Read more »