Striving for Optimal Performance
  • Home
  • Blog
    • Archive
    • Categories
  • Troubleshooting Oracle Performance
    • Description
    • Structure
    • Table of Contents
    • Forewords
    • Reviews
    • Downloadable Files
    • Addenda and Errata
  • Publications
  • Public Appearances
    • Past Public Appearances
  • Contact
  • Search
  • About

Monthly archives for September, 2008

Upcoming Speaking Engagements

Sep18
2008
Leave a Comment Written by Christian Antognini

Over the coming months, I’ll be speaking at the following events.

When Where What
2008-10-15 16:15-17:15 AOUG Expertentreff, Vienna (A) Query Optimizer 11g
2008-10-21 10:45-12:00 TrivadisOPEN, Zürich (CH) Query Optimizer 11g
2008-10-22 11:30-12:45 TrivadisOPEN, Zürich (CH) Bloom Filters
2008-12-02 14:00-14:45 DOAG Konferenz, Nürnberg (D) Query Optimizer 11g
2008-12-05 10:00-12:00 UKOUG Conference, Birmingham (UK) Execution Plans

The abstracts of the presentations are the following (at the events in DACH I’ll give the presentations in German; hence the first abstract is in German…):

  • Query Optimizer 11g: Mit jedem neuen Release wird der Query Optimizer verbessert. 11g ist da keine Ausnahme. Diese Präsentation zeigt Ihnen die zentralen Verbesserungen in den folgenden Bereichen: Object Statistics, Optimization Techniques, SQL Plan Baselines und Bind Variable Peeking.
    Jede Verbesserung wird anhand einer Demo live gezeigt und gibt Aufschluss wie das Feature in der Praxis zum Einsatz kommt und welchen Applikationsvorteil es bringt.
  • Bloom Filters: A bloom filter is a data structure used to support membership queries. Simply put, a bloom filter is used to test whether an element is a member of a given set or not. Since Oracle Database 10g Release 2 bloom filters are used in various situations. Unfortunately, no information about their usage is available in Oracle documentation. The aim of this presentation is to explain not only what bloom filters are, but also, and foremost, to describe how the database engine makes use of them. Specifically, it explains how the database engine uses bloom filters to reduce data communication between slave processes in parallel joins and to implement join-filter pruning.
  • Execution Plans: An execution plan describes the operations carried out by the SQL engine to execute a SQL statement. Every time you have to analyze a performance problem related to a SQL statement, or simply question the decisions taken by the query optimizer, you must know the execution plan. Whenever you deal with an execution plan, you carry out three basic actions: you obtain it, you interpret it, and you judge its efficiency. The aim of this session is to describe in detail how you should perform these three actions.
Posted in Speaking

Long Parses and SQL Plan Baselines

Sep11
2008
Leave a Comment Written by Christian Antognini

Main steps carried out during the selection of a SQL plan baseline

Few days ago, in the post entitled Long Parses, I pointed out that stored outlines can be used to shorten the parse time by restricting the number of execution plans considered by the query optimizer.

As of Oracle Database 11g, stored outlines are deprecated in favor of SQL plan baselines. Therefore, someone might think that SQL plan baselines can also be used to workaround long parses.

Actually, this is not the case :-(

The figure on the right (which is taken from page 292 of TOP) shows why…

Do you spot the problem?

The essential thing to notice is that the query optimizer generates execution plans before considering SQL plan baselines. And, therefore, a long parse would be performed even if a matching SQL plan baseline exists.

Also note that SQL plan baselines are only available in Enterprise Edition. Therefore, when stored outlines will be desupported, in Standard Edition a similar feature will no longer be available. Or do you thing that Oracle will change the licensing policy?

Posted in 11gR1, Query Optimizer

No Space Left on Device

Sep08
2008
Leave a Comment Written by Christian Antognini

Some of you probably noticed that this site had some availability problems during the last two days :-(
For that I have to thank “my” ISP. Somehow a disk was full and, of course, some services didn’t like that at all! Anyway, now it seams that everything is up and running. I really hope that this is the last time that something like that happen.

Posted in Uncategorized
← Older Entries Newer Entries →

EvoLve theme by Theme4Press  •  Powered by WordPress Striving for Optimal Performance