Search

Top 60 Oracle Blogs

Recent comments

March 2019

Practical Linux Performance & Application Troubleshooting Training Details and Table of Contents

As I announced last year, I’m running a new online Practical Linux Performance and Application Troubleshooting training class, starting on 29. April 2019.
The emphasis of this class is on practical application troubleshooting and Linux OS performance tuning techniques. We’ll be using scripts and tools that you can use on any Linux machine whenever a problem happens, without having to first install a complex layer of monitoring tools.
At the same time, we will go way beyond what the classic sysadmin tools (like vmstat, iostat, top) have to offer.

Practical Linux Performance & Application Troubleshooting Training Details and Table of Contents

As I announced last year, I’m running a new online Practical Linux Performance and Application Troubleshooting training class, starting on 29. April 2019.
The emphasis of this class is on practical application troubleshooting and Linux OS performance tuning techniques. We’ll be using scripts and tools that you can use on any Linux machine whenever a problem happens, without having to first install a complex layer of monitoring tools.
At the same time, we will go way beyond what the classic sysadmin tools (like vmstat, iostat, top) have to offer.

Cartesian Join

I wrote this note a little over 4 years ago (Jan 2015) but failed to publish it for some reason. I’ve just rediscovered it and it’s got a couple of details that are worth mentioning, so I’ve decided to go ahead and publish it now.

A recent [ed: 4 year old] question on the OTN SQL forum asked for help in “multiplying up” data – producing multiple rows from a single row source. This is something I’ve done fairly often when modelling a problem, for example by generating an orders table and then generating an order_lines table from the orders table, and there are a couple of traps to consider.

Less slamming V$SQL

It’s a holiday here today in Perth, so a very brief blog post because I’ve been busy doing other things today Smile

IMG_20190303_114220_012

Hash Optimisation-

Franck Pachot did an interesting presentation at the OBUG (Belgium user group) Tech Days showing how to use one of the O/S debug/trace tools to step through the function calls that Oracle made during different types of joins. This prompted me to ask him a question about a possible optimisation of hash joins as follows:

The hash join operation creates an in-memory hash table from the rowsource produced by its first child operation then probes the hash table with rows from the row source produced by the second child operation; but if there are no rows in the first row source then there’s no need to acquire rows from the second row source, so Oracle doesn’t call the second child operation.