Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.server -> Re: Deadly sins againts database performance/scalability

Re: Deadly sins againts database performance/scalability

From: Norman Dunbar <Norman_at_RE-MO-VE.BountifulSolutions.co.uk>
Date: Tue, 25 Nov 2003 16:35:59 +0000
Message-ID: <pan.2003.11.25.16.35.58.300856@RE-MO-VE.BountifulSolutions.co.uk>


On Tue, 25 Nov 2003 08:03:58 -0800, Dusan Bolek wrote:

> Hello,
>

<SNIP>
> So I have question to you here. What's the most stupid, but in real world
> foundable, mistakes in development applications using Oracle datatabase?

  1. Not taking backups :o)
  2. Adding indexes all over the place for performance reasons.
  3. No (proper) change control procedures.
  4. Exporting from the database and defaulting COMPRESS to Y, even worse, exporting with COMPRESS=Y explicitly.
  5. Allowing developers to create obbjects in a tablespace with a different extent size to the tablespace defaults.
  6. Having numerous indexes (on the same table) which could be replaced by one or two carefully thought out indexes. (you know, indexes on A and B and A,B and C and A,B,C and B,C ....)
  7. Putting the ref int checks in the application instead of the database.
  8. Ditto, but keeping business rules in the app instead of the db.
  9. Using standalone procs and functions instead of packages.
  10. When actually writing packages, not separating the PACKAGE specs from the PACKAGE BODY so every time you change the code in a body, you re-create the spec as well and invalidate everything that depends upon it.
  11. Using a table to hold a sequence number is a bad one. You know, read the number and lock it, increment it and write it back - then commit at some point in the far future. Even committing ASAP is a major problem as soon as you get more than 5 or so users all doing the same thing.
  12. Even worse, having a single table for all the sequence numbers in the system.
  13. Creating 'temporary' tables to hold intermediate results MS SQL Server style.
  14. Converting triggers from another db system into Oracle and discovering that the other system allows you to update rows in the table that has triggered the trigger leading to mutating table errors on Oracle (which IMHO does it correctly !)
  15. Not enough SQL reuse.

I'm sure that there are more :o)

Cheers,
Norm.

-- 
Delete the obvious bit from my email address to reply by email.
Received on Tue Nov 25 2003 - 10:35:59 CST

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US