| Oracle FAQ | Your Portal to the Oracle Knowledge Grid | |
Home -> Community -> Usenet -> c.d.o.server -> Re: perplexing problem....
There are ways to abstract the query etc. so your programmers don't have to
deal with bind variables directly. Too often people "write a little app"
that goes into production and kills performance. Case in point. Worked
with someone who was writing an import routine. The benchmark of importing
1,000 records took 26 minutes and pegged the CPU on the server at 100%. No
one else could do anything else on the server (with Oracle or anything
else). (Okay they could do other things, but boy was it slow.). We made a
few minor changes to use bind variables and the same benchmark now took
under 6 minutes and had peaks of 35% CPU - averaged 10% CPU. Other users
now did not notice that the import was running. All in all it did not take
another programmer - it ain't that complex and it made our application
saleable. Think of it as if you are the customer - do you want to buy more
CPU's (not always possible - there are often box limitations) just because
the vendor thought performance was cheap by throwing more hardware at the
problem. More hardware wouldn't have made the import run faster; it would
have made more silmultanios users possible, difference between scalability
and performance.
Jim
"Calvin Crumrine" <Calvin_Crumrine_at_dced.state.ak.us> wrote in message
news:3BA8D870.FF6F32EA_at_dced.state.ak.us...
>
>
> Thomas Kyte wrote:
>
> > I just "shudder". you are NOT using bind variables which is perhaps the
single
> > most important things ALL applications should do. That statement should
be:
> >
> > begin procedure( :x, :y, :z ); end;
> >
> > with the strings and numbers bound to x, y, z. Your system will need
tons less
> > ram and lots less CPU.
>
> Personally, I prefer efficiency in coding/maintenance over efficiency in
RAM and
> CPU cycles and bind variables always seemed complicated to me. I find it
cheaper to
> add RAM and CPU cycles than to hire another programmer. Of course it all
depends on
> how you measure efficiency-I think of it in terms of budget impact. How
can I get
> the most work done with the smallest budget?
>
> I think bind variables are fine in stable apps, but not necessarily in all
apps.
>
Received on Wed Sep 19 2001 - 13:48:28 CDT
![]() |
![]() |