History of Oracle
Way back in June 1970, Dr E F Codd published
a paper entitled A Relational Model of Data for Large
Shared Data Banks. This relational model, sponsored by IBM, then came to
be accepted as the definitive model for relational database management systems
– RDBMS. The language developed by IBM to manipulate the data stored within
Codd's model was originally called Structured English Query Language, or SEQUEL,
with the word 'English' later being dropped in favor Structured Query Language
– SQL.
In 1979 a company called Relational Software,
Inc. released the first commercially available implementation of SQL. Relational
Software later came to be known as Oracle Corporation.
Oracle Version 8
You'll find versions of Oracle8 available
for many of today's popular computing environments, in particular Windows, UNIX
and Linux. This is one of the reasons why it's so popular, and luckily for us
as developers, doesn't make that much of a difference which platform it is running
on.
The original version of Oracle8
was designed to support applications in the up-and-coming
network-computing era, ranging from a small departmental application right up
to a high-volume enterprise-wide system. In order to provide this level of flexibility,
Oracle8 comes in two different editions:
Oracle8
Oracle8 Enterprise Edition
Both editions actually share the same
code base, but the difference is that the standard edition (referred to simply
as Oracle8) is aimed at smaller applications, whereas its big brother, the Enterprise
Edition, comes with a number of high-end features that allows it to support
the thousands of users of larger enterprise-wide applications. The Enterprise
Edition provides greater support for very large databases containing hundreds
of terabytes of data, whilst the number of columns per table and maximum database
size, for both editions, has been increased compared to previous versions of
Oracle.
In order to support large numbers of users
, both the Oracle8 and Oracle8 Enterprise Edition servers
provide a method of connection pooling that temporarily drops
and then re-uses a physical connection for those users that are idle, in conjunction
with its networking software Net8.
With this type of technology there is no reason why an Oracle server cannot
support many thousands of concurrent users.
With that said, it's worth remembering
that our ASP-based applications, if designed correctly, should connect and disconnect
from the Oracle database as soon as they have completed a certain task, rather
than hold onto a database connection for the life of the user's session. Don't
forget that Microsoft Transaction Server and OLE DB also offer
connection-pooling techniques to save the valuable time taken to initialize
database connections.
Traditional client/server
applications that maintain a user's connection, until the application has closed,
will more than likely utilize Oracle's own connection pooling rather than that
of OLE DB which pools connections based on the same username and password combination.
The actual edition of Oracle8 that we
connect to again makes little practical difference to the front-end applications
that we develop, as we use the same query language and networking software to
manipulate the data.
Both editions of Oracle8 provide support
for the emerging SQL-3 standard for object-type definition.
SQL-3 allows us to create object types that, for example, define a person's
address that we could then use directly in our database, and access through
our programs.
For a full investigation into Oracle's object support, check
out the Oracle TechNet at http://technet.oracle.com.
Oracle Version 8i
Oracle8i is the latest incarnation of
the Oracle8 data server . If you hadn't already guessed
it,
the 'i' in Oracle8i refers to the Internet.
Oracle Corporation bills Oracle8i as "the database for
Internet computing".
All of the above Oracle8 features apply
just the same to the new Oracle8i, with the Oracle8i data server also being
available in two editions – the standard edition, Oracle8i, and the high-end
version, Oracle8i Enterprise Edition.
The major change to the Oracle8i Enterprise
Edition is the inclusion of support for the Java
Virtual Machine allowing developers to execute Java
code directly from within the database engine. Whereas previously, the only
way to procedurally manipulate Oracle data was through
its PL/SQL language, you can now use Java to do exactly the same job.
So are they doing away with PL/SQL? This does seem to be
the general trend if you consider that the next version of SQL Server (the one
after version 2000) will allow stored procedures written in any .Net language
and that DB2 already provides support for Java stored procedures. SQL is here
for the foreseeable future, but maybe for the benefit of ODBC and OLE DB access
.
Oracle8i includes the Internet File System,
iFS, a Java
application that brings the combination of an integrated
file system and database into one server to provide text searches and querying
of files and data stored within iFS.
Another new technology in Oracle8i is
Oracle
WebDB that allows dynamic web sites to be built and
deployed from within the Oracle database. WebDB provides an HTML interface so
that non-programmers can develop their own web-based database applications.
It includes a lightweight HTTP listener that can act as a web server and a PL/SQL
interface to the database. As web developers,
we might want to discourage non-programmers from developing their own web sites;
this is not just because of our own job security, but also due to the fact that
small in-house projects have a tendency
to grow into large projects that may not have been designed with scalability
in mind through poor programming techniques.
Oracle8i's new interMedia
feature provides additional
support for multimedia content such as image, video, text, and audio. interMedia
allows users to query data held within common document formats such as HTML,
Adobe Acrobat (PDF) and the Microsoft Office applications such as Word documents
and Excel spreadsheets, and provides support for the delivery of streaming
media in conjunction with common streaming servers such as Oracle Video Server
and RealVideo.
Release 2 of Oracle8i (version 8.1.6) also brings native
support for XML .
If you've used Oracle8 prior to Oracle8i,
then you'll notice that the developer's tools such as the Schema Manager, Oracle
Installer and Net8 Assistant have had a radical interface makeover. I personally
find them slightly slower to use than their previous counterparts owing to the
fact that most are now written in Java, but they do appear more user friendly.