Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
Home -> Community -> Mailing Lists -> Oracle-L -> RE: RE: Strangeness with PL/SQL and ProC
Thanks to all for the replys on this one.
It looks like we are going to get the chaps to seriously think about using PL/SQL for the future.
Regards
Lee
-----Original Message-----
Sent: 08 March 2002 16:38
To: Multiple recipients of list ORACLE-L
Lee,
Over the years I've developed a very strong appreciation for TCP/IP as a
fast, error free communication protocol. At the same time I've also
developer a
VERY strong appreciation for how slow SQL*Net is. Anything you can do to
minimize that part of an application helps 10 fold.
BTW, getting onto the object bandwagon a bit. I've developed, over the
last
three years, a strong appreciation for doing a lot of database access stuff
in
PL/SQL and hopefully JAVA in the future. Having a package with a defined
interface to the external programs modularizes things so nicely it's
breathtaking. I've now a wonderful relation ship with duhvelopers as we do
that
interface definition. They go off and develop their front ends as they want
knowing what the interface at the database looks like. I can then go off
and
create a very nice, efficient, and normalized (with referential integrity)
database and code the package body as needed, including modifications and
bug
fixes without causing them a pile of grief. In the end we get the job done
faster, neater, and with less hassle. Guess I'm going to have to start
calling
them developers pretty soon. :-)
Dick Goulet
____________________Reply Separator____________________ Author: Robertson Lee - lerobe <lerobe_at_acxiom.co.uk> Date: 3/8/02 3:23 PM
Thanks for that Dick, the communication issue was one we had considered, you are confirming this from what you say below. Thanks again for the response.
Lee
-----Original Message-----
Sent: 08 March 2002 13:53
To: Robertson Lee - lerobe; Multiple recipients of list ORACLE-L
Lee,
Stop a minute and take a look at what your doing. I assume that when
the
process was pure PRO*C there must have been a pile of communication between
the
database and the program. This communication, even if done by IPC takes
time.
Now when you re-code it in PL/SQL there is no reason for process to database
communication, hence it takes less time. Allow me to provide an
illustration:
We had a OCI program that would load tester data from NT shares every
morning into our Unix based database. Normally this process took around 8 to
10
hours to run. When MicroSoft OS/2 died several years ago yours truly ported
the
program from OS/2 to NT in the process re-coding it in PRO*C. Now since
paramaterization of SQL was not the original authors forte, the program
started
running a little faster, but still 6 to 8 hours. Now comes Y2K, a new
server &
database evrsion & some normalization takes place resulting in a new
database
design. When I reviewed the program I note that there were a number of back
and
forth communication requirements that were in the original. It took
something
like 5 round trips to the database for queries to decide if we were going to
insert a new record or update an existing one. Well, I took all of that
code
out of PRO*C, re-coded it as a PL/SQL package and today that same program
runs
in a little over 1 hour with one round trip from the client to the database.
Dick Goulet
____________________Reply Separator____________________ Author: Robertson Lee - lerobe <lerobe_at_acxiom.co.uk> Date: 3/8/02 2:03 AM
> Oracle 8.0.5.0.0
> Tru64 4.0f
>
> We have a process running here and without going into the detail of it we
> have a Pro C program that is taking ages to run updates and selects (2
> hours to do 10000 records). The program was changed to PL/SQL and we
> suddenly were seeing 5 million records processed in 1 hour.
>
> Is PL/SQL that much faster than Pro C. Can somone more in the know give
> me some hints ??
>
> TIA
>
> Lee
>
>
The information contained in this communication is confidential, is intended only for the use of the recipient named above, and may be legally privileged. If the reader of this message is not the intended recipient, you are hereby notified that any dissemination, distribution or copying of this communication is strictly prohibited. If you have received this communication in error, please re-send this communication to the sender and delete the original message or any copy of it from your computer system.
-- Please see the official ORACLE-L FAQ: http://www.orafaq.com -- Author: Robertson Lee - lerobe INET: lerobe_at_acxiom.co.uk Fat City Network Services -- (858) 538-5051 FAX: (858) 538-5051 San Diego, California -- Public Internet access / Mailing Lists -------------------------------------------------------------------- To REMOVE yourself from this mailing list, send an E-Mail message to: ListGuru_at_fatcity.com (note EXACT spelling of 'ListGuru') and in the message BODY, include a line containing: UNSUB ORACLE-L (or the name of mailing list you want to be removed from). You may also send the HELP command for other information (like subscribing). -- Please see the official ORACLE-L FAQ: http://www.orafaq.com -- Author: INET: dgoulet_at_vicr.com Fat City Network Services -- (858) 538-5051 FAX: (858) 538-5051 San Diego, California -- Public Internet access / Mailing Lists -------------------------------------------------------------------- To REMOVE yourself from this mailing list, send an E-Mail message to: ListGuru_at_fatcity.com (note EXACT spelling of 'ListGuru') and in the message BODY, include a line containing: UNSUB ORACLE-L (or the name of mailing list you want to be removed from). You may also send the HELP command for other information (like subscribing). -- Please see the official ORACLE-L FAQ: http://www.orafaq.com -- Author: Robertson Lee - lerobe INET: lerobe_at_acxiom.co.uk Fat City Network Services -- (858) 538-5051 FAX: (858) 538-5051 San Diego, California -- Public Internet access / Mailing Lists -------------------------------------------------------------------- To REMOVE yourself from this mailing list, send an E-Mail message to: ListGuru_at_fatcity.com (note EXACT spelling of 'ListGuru') and in the message BODY, include a line containing: UNSUB ORACLE-L (or the name of mailing list you want to be removed from). You may also send the HELP command for other information (like subscribing).Received on Sun Mar 10 2002 - 04:13:18 CST