Submitted by Peter.VanderWoude on Tue, 2015-02-03 12:21
This post shows you details about a specific case where 'hash anti join' is defeated by 'nested loop anti join'.
The initial problem came to light in a very large BW system running on Oracle 126.96.36.199 when several BW loads (making use of older data in the BW system) reported missing dimension ids in the dimension tables.
Submitted by John Watson on Sun, 2015-01-18 08:59
Following a question on OTN https://community.oracle.com/message/12801175 I did another test on redo and undo, just to prove that frequent COMMIT can be bad for performance. The results surprised me. I expected that row-by-row commit would be worse then a single commit at the end of a multi-row transaction, but I hadn't expected it to be this bad. As well as being much slower, both undo and redo volumes are vastly greater.
Submitted by Markwillium on Wed, 2014-09-17 06:29
The demand of Oracle database is very high and because of high demand, its security becomes the most concerned part of its users. Backup is the initial process you can do for your database security. However, at times, taking backup is also not sufficient and issues like backup file corruption, database damage due to virus, etc. takes place and data loss occurs. Therefore it's always better to have a utility to repair your damaged or corrupt Oracle Database Files and reconstruct its objects.
Submitted by Lalit Kumar B on Fri, 2014-09-05 05:27
It's a lazy Friday and I saw an interesting question in Stack Overflow about "Why are there two “null” keywords in Oracle's v$reserved_words view?" And I spent next 2 hours digging into knowing the reason. Here are my findings:
We need to understand how to interpret the view v$reserved _words. To determine whether a particular keyword is reserved in any way, check the RESERVED, RES_TYPE, RES_ATTR, and RES_SEMI columns.
Submitted by John Watson on Sun, 2014-08-31 10:17
How much undo and redo does Oracle generate for different operations? More than you might think.
Submitted by John Watson on Sat, 2014-07-19 10:39
Buffer busy wait and related events can cripple performance of concurrent inserts. Bad in a single instance database, far worse in a RAC (think "gc buffer busy"). Often the problem is because of a primary key populated from a sequence. Reversing the index can fix this problem.
Submitted by John Watson on Sun, 2014-07-06 06:02
Concurrent inserts into a table will often result in crippling buffer busy wait problems as sessions serialize on access to the last block(s) of the table segment. Using hash clusters can remove the issue.
Submitted by rleishman on Wed, 2014-07-02 06:04
After more than 20 years of working with Oracle databases, I have recently found myself using SQL Server for the very first time. Until now, I have been a passive observer in the My-Database-Is-Better-Than-Yours wars, so it’s a pleasant change to be able to finally contribute.
Submitted by John Watson on Sun, 2014-06-08 11:55
Many people are terrified of global indexes, one reason being that partition DDLs on the table will either render them unusable, or take forever as they are updated. Deferred global index maintenance solves this, and should be an important driver for the 12c upgrade.
Submitted by John Watson on Wed, 2014-06-04 19:56
Why use interpreted PL/SQL when native compiled PL/SQL is so much faster? No reason at all - except that interpreted is the default, and most DBAs never change this. They should.