Who's online

There are currently 0 users and 33 guests online.

Recent comments




If you’re a regular follower or my blog you may recall Kyle Hailey and the joint webinar we did nearly two years ago on “Visual SQL Tuning” covering an approach I’ve written about in the past and a product that he developed at Embarcadero to automate the work that I’d been doing by hand and eye.

Understanding Oracle Optimizer Statistics Webinar Follow-up

Thanks to everyone for attending today's webinar on Understanding Oracle Optimizer Statistics sponsored by Embarcadero Technologies. I appreciate everyone who took time to join me today and hope you found it informative.

The webinar recording will be posted within in the next couple of days, but you can download the presentation file now.

Understanding Oracle Optimizer Statistics - presentation

I'll provide the link to the recording as soon as it's available and will update this post with Q&A from the webinar sessions shortly.

Thanks and again and see you in March when I'll be presenting "Back to the Future: Oracle SQL Performance Firefighting using AWR."

Enkitec Extreme Exadata Expo (E4) 2013 – Call for Papers

Enkitec E4, the only exclusively Exadata-focused conference in the world, is going to be back this this year too! :-)

It will take place on 5-6 August 2013 in Four Seasons Hotel & Resorts in Irving, TX. It will be very hot in Texas then, but the hotel has a really cool pool there (which I intend to be able to use this year – last year I had to spend all my free time working in the hotelroom unfortunately). And they have beer inside too :)

There will be very good speakers showing up this year too (including the keynote speaker who’s awesome, but I can’t say the name yet) and I’ll hang out there too. I think I’ll deliver a live demo / internals hacking session this year (that way I don’t have to spend my night before the conference preparing slides and can focus more on the cool stuff).

Oracle and Itanium…

The recent ruling on the Oracle vs. HP case throws a lifeline to those customers already committed to Oracle on Itanium, like my current company, but what does this really mean as far as new customers are concerned?

Now this is just my opinion and you are free to disagree, but as far as I’m concerned, making the decision to go Oracle on Itanium is a massive mistake. In fact, it has been a mistake for the last 5+ years. During the death of Tru64, HP sales people were advising us to go HP-UX on Itanium and HP engineers were advising us to go Linux on x86-64, at approximately 1/10 of the cost. Who are you gonna believe? I’m sure there are workloads where Itanium used to work well, but from what I can see in my company, the regular Linux on x86-64 kit kicks the ass off the HP-UX on Itanium kit. When you consider the price difference between the two, that’s really the final straw…

An inside look at the Oracle ACE program

I was recently part of a 3-part podcast about the ACE program. You can listen to all 3 parts here:

Thanks to Bob Rhubart for the invite and to the other members of the panel (Vikki Lira, Alex Gorbachev and Debra Lilley).




Losing it

The example I gave last week showing how a SORT operation in an execution plan might include the work of resolving function calls in your SQL and might, therefore, be reporting much higher resource utilisation than expected reminded me of some problems I’ve had with gaps in execution plans in the past. So I thought I’d give a little demonstration of the way in which the completeness of execution plans can develop over time.

We’ll start with the same two tables I had in last week’s demo.

Hotsos Revisited 2013

Van 3 tot en met 7 maart vindt in Irving, Texas, het internationale Oracle Performance Symposium Hotsos plaats. Dit jaar belooft het symposium een garantstelling voor inhoudelijk hoogstaande presentaties en discussies, want naast presentaties van Tom Kyte, Cary Millsap, Maria Colgan en Steven Feuerstein over performance, worden er ook onderwerpen behandeld zoals Big Data, noSQL, …

Continue reading »


Here’s a little quirk of execution plans that came up recently on the Oak Table network. If you call a function in a query, and do some sorting with the results, where does the work of calling the function get reported in the execution plan if you trace the query or look at the in-memory rowsource execution stats. Let’s take a look at a simple example:

create table t1
	rownum 			id,
	lpad(rownum,200)	padding
from	all_objects
where	rownum <= 2500

create table t2
select	* from t1

-- collect stats

create or replace function f (i_target in number)
return number
	m_target	number;
	select max(id) into m_target from t1 where id <= i_target;
	return m_target;

What makes a DBA?

I wrote this article as a foreword for the 2007 Apress book “RMAN Recipes for Oracle Database 11g: A Problem-Solution Approach” by Darl Kuhn, Sam Alapati, and Arup Nanda (ISBN 1590598512), and I’m pleased to learn it will be included in the exciting new Apress update “RMAN Recipes for Oracle Database 12c: A Problem-Solution Approach” (ISBN 143024836X), scheduled for 14-Aug 2013 publication, assuming that Oracle Database 12c^H^H^HNextGeneration is released prior to then…

Sqlplus is my second home: Part 7 – Downloading files via sqlplus :-)

Some years ago I wrote about how sqlplus allows you to run sqlplus scripts directly from HTTP and FTP locations instead of the local filesystem. By the way, I didn’t even notice – my blog is over 5 years old already! :)

I a recent email thread Marco Gralike just showed the simplest way I to open a HTTP URL and download + list its contents in a CLOB datatype. It’s the HTTPURITYPE and its getCLOB (and getBLOB) methods.