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: high through put system

Re: high through put system

From: Sybrand Bakker <postbus_at_sybrandb.demon.nl>
Date: Wed, 23 Aug 2006 20:47:17 +0200
Message-ID: <j38pe2hseqaa9ief8pp2tbh5d5eigidv4m@4ax.com>


On 23 Aug 2006 04:48:23 -0700, "gazzag" <gareth_at_jamms.org> wrote:

>Sybrand Bakker wrote:
>> >Vissu
>>
>> You aren't using bind varianles, are you?
>> Not using bind variables is the #1 method to make Oracle unscalable.
>> Also, this doesn't look much like an interactive app, so why aren't
>> you using the right tool for the right job (like Sql*loader and
>> similar)?
>> If you have to use an interactive process, you should be performing
>> BULK COLLECT and BULK INSERT, not 1 row at a time, and definitely NOT
>> 1 commit PER RECORD.
>>
>> Your post has 'badly engineered app' inscribed all over it.
>>
>> --
>> Sybrand Bakker, Senior Oracle DBA
>
>Could you explain the logic underlying your conclusions? I'm intrigued.

Ok quite simple.
The volume he specifies is relatively modest. If he has a proper server, he should have no problem managing that load. His app is a servlet, so he is using some form of jdbc or something similar.
9 out of 10 Java apps I have seen don't use statement with bind variables to access the database. They never use PrepareStatement! Even when I instruct developers explicitly to start using PrepareStatement, they don't do so, but they stick to using ExecuteStatement.
So what do you have:
You have an app not using bind variables , not using the array interface provided by Oracle, not using anonymous blocks etc. If things are really bad, they open a connection using autocommit.

Why is that so? Because most developers *I met*, who are developing for Oracle, don't know *ANYTHING* about. They think SQL=SQL and with 'SQL' they mean 'sqlserver'. They simply don't know any other database implementation.
Mind you: I don't say developers using bind variables don't exist. Somewhere out in the wild they must be running, maybe somewhere in Australia, but in the Netherlands I only see (irrespective of firm) blatant lack of knowledge of Oracle.
So, I bet Tom Kyte can continue his crusade for the next 20 years or so.

--
Sybrand Bakker, Senior Oracle DBA
Received on Wed Aug 23 2006 - 13:47:17 CDT

Original text of this message

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