Monday, March 9, 2009

Oracle As a Platform

I'm always hearing about this platform and that platform and all the wonderful things you can do with them.

What about Oracle as a platform?

Before you get all crazy eyes on me, I'm not talking about eBay, Google or the like. I'm talking about the other 99% of the applications out there.

Database
Oracle is the market leader in database technology. There is a very good reason for that and I'll let you decide on what that reason might be.

Web Server
Either Oracle's Application Server (Apache), which came on the Companion CD on 10g (not sure about 11g), or Oracle's built in XDB HTTP Server (pre-configured in 11g). MOD_PLSQL allows the web server to communicate with the database.
MOD_PLSQL is an Apache (Web Server) extension module that allows one to create dynamic web pages from PL/SQL packages and stored procedures. It is ideal for developing fast and flexible applications that can run on the Internet or an Intranet. MOD_PLSQL was formerly called the Oracle PL/SQL Cartridge and OWA (Oracle Web Agent).
Front End
You have 2 choices (that I am aware of) for creating web based applications, Application Express and the HTP/HTF packages. The former is built atop the latter...and I'd definitely use ApEx before the packages.
Oracle Application Express (Oracle APEX) is a rapid web application development tool for the Oracle database. Using only a web browser and limited programming experience, you can develop and deploy professional applications that are both fast and secure.
ApEx is, in my experience, one of the most under-used tools out there.

Procedural Language
PL/SQL is a very powerful language. It's loosely based on Ada and is a procedural extension to SQL. PL/SQL has been around since 1992, version 6. It supports arrays, collections, user defined types, and many other data structures. Best of all though, Oracle provides a vast library of PL/SQL code. Sending email? Got it. Lower level stuff? UTL_TCP should do the trick. Queueing? Done.

I could go on and on, but you get the point.

If you want to build powerful, robust applications that are low on complexity and high on performance, Oracle's the way to go.

What's that? Oracle licensing is too expensive? How about Oracle Standard Edition (SE) for $5,000? There's not a whole lot you don't get with SE.

Of course you could disagree, but I'd say you're pretty crazy.

7 comments:

Toon Koppelaars said...

Nothing to add here.... :-)

"Helsinki" Toon

DomBrooks said...

But it's just so uncool...

Mike said...

Chet - wow this is great. Love the overview-type stuff. This is exactly what I needed to see. Thanks a million. -Mike Kemp

Mike said...

Oh yeah...I was thinking of using Oracle (Express) in combination with Ruby for an upcoming project. Any thoughts/advice. Think I should just stick with the Oracle platform as listed here? Thanks.

oraclenerd said...

@Mike

Ruby? Why not just use APEX?

Unless your goal is to learn Ruby then by all means.

I have nothing against other languages, let me make that clear. From a business perspective though...just keep it freakin' simple!

Mike said...

Good insight.
Thanks.

Morten Braten said...

I agree, I've come to see Oracle as a platform, not just a database. I made a relevant illustration here:

http://ora-00001.blogspot.com/2009/06/oracle-database-as-development-platform.html

- Morten