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

Home -> Community -> Usenet -> c.d.o.misc -> Re: Oracle and PL/SQL vs. Oracle and Java

Re: Oracle and PL/SQL vs. Oracle and Java

From: Mark McNulty <mmcnul_at_jpmorgan.com>
Date: 1997/06/02
Message-ID: <5mvdqs$4ht$1@hardcopy.ny.jpmorgan.com>#1/1

In article 1_at_ultra.exodus.net, martinb_at_SPAM-OFF-hooked.net (Martin) writes:
> Chad,
>
> Java may have an edge over PL/SQL from the perspective of creating a
> user-interface experiance on the browser that cannot be accomplished with
> HTML.
>
> However, I think that about sums it up for Java ;}

Is this just a troll? Let's be honest. Java is object-oriented, easily distributed, similiar to C/C++, etc. It has lots of support in the industry, and even Micro$oft has had to support it.

But Java is new, it is missing some features, and it is still buggy. So I wouldn't count on using Java by itself.

The choice in the subject is artificial- you should think about Java, PL/SQL, and Oracle. Actually, you should think about using three-tier support as well (Tuxedo, Corba, Encina, etc).  

> Keeping the code in the database has many advantages over running Java
> (server-side or client-side with the above exception):
> PL/SQL is going to be faster than Java (no virtual machine). Also it
> would be one less layer.

This assumption has lots of flaws. Oracle does lots for you (transactions, multiple instances, logs, fine control, security, multiple user support, etc.). All of this adds up, so the Java Virtual machine might be faster.

But most importantly running SOME of your logic on the browser prevents using the internet like a LAN, so you can avoid the network bottleneck in some places, and it allows you to avoid impacting others (when I run my Java script, the person in the next desk doesn't have to wait, provided my applet or class is loaded ;-> ).

Your database server is going to be running EVERYTHING. So instead of a fat-client or a fat-server, you will have a FAT thing that is a client AND a server. You might would be better off using a mainframe for that type of architecture.

This means that EVERYONE using the server is impacted by use. So if someone asks for a static HTML document, or does a simple validation, someone else will be slowed down. This is not good.

Even Oracle is now saying that messaging and 3-tier technology are important, so the present design of OWS will have to change to use Oracle's new technology.

Everything has a place. Sometimes its the browser, sometimes its the database, and sometimes its in-between or in both or somewhere else.

> Simple role-out (compared to Client-side java) requires one DB update
> rather than multiple client role out. Especialy when implementing significant
> change as this requires synchroniztion with fat-clients.

Roleouts in the web are automatic. Let's face it, this is the real advantage of the web, not cross-platform -- C is cross-platform, and there are lots of cross-platform tools, but deployment is still a pain. This is one advantage 3-tier, thin-clients, and network computers give you- you don't have to upgrade all the time. Or you can use software from Tivoli or CA to handle this.  

> PL/SQL is designed for data manipulation, which most application do,
> rather than optimized to reuse code, to create applications to manipulate data
> (which Java is). But please keep in mind that PL/SQL is as reuseable as Java

                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Only in an Oracle environment (and even there you won't have %100- I don't think Oracle Power Objects supports PL/SQL).

> (and you can actually create very OO like structures and programs in Oracle)

There are people who say the same thing about Cobol. And it might be true, but it doesn't mean these are the best ways to impliment OO.

Use the right tool for the right job. You know the saying about having a hammer...

> IMHO I think HTML is to simple a mechanism to use Java for. SQL suites HTML
> manipulation down to the ground. But like a lot of systems I see, you have to

SQL is not designed for user interfaces. It was designed to manipulate databases. PL/SQL adds some business logic to it, but:

  1. Why am I putting STATIC things in the database, especially if I have alternatives?
  2. It will not work outside of Oracle.
Received on Mon Jun 02 1997 - 00:00:00 CDT

Original text of this message

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