|
David Dreyfus
Database Systems Group
DTN 381-2893
DEBIT::DREYFUS
11-October-1988
Review of Oracle's User Group Meeting
The Oracle User Group meeting was held in Orlando, FL from Oct 2 to
Oct 6. The style of the meeting would make "The Oracle Sales Meeting"
a more appropriate title. The meeting consisted of Oracle product
marketing and management people pitching new products and new versions
of old products. The sales presentations where interspersed with user
testimonials. I was unable to find Oracle engineers anywhere. The
closest I came was sales support.
The birds-of-a-feather and SIG (special interest group) meetings were
sparse and held late at night (to maintain miminal attendance). The
general sessions did not allow for questions.
An 'executive' panel for answering questions was held at the end of
the week. This panel read prepared responses to a questionaire that was
completed by the user community earlier in the week.
There was nothing ad-hoc about this meeting.
1 State of the Company
How does Larry Ellison, President of Oracle, see the world?
Ellison sees workstations replacing terminals which will be connected to
mainframes through workgroup mini-computers. There will be a need for
higher quality user interfaces and a move towards network computing.
In order to make the move to network computing successful, an order of
magnitude improvement in performance and productivity will be required.
In addition a migration strategy is needed. These improvements are
required so that we don't lose productivity as we move to a network
computing environment. The productivity is required to help migrate
existing mainframe software. The performance is required to handle the
increased user load.
Ellison acknowledged that Oracle's tools are not integrated and that
they will need to become so. He also talked about the need for semantic
rules in the database like integrity constraints and 'valid if' clauses
[which Rdb currently has]. [From a database point of view, it would
appear that Rdb already has the productivity that Ellison is just
talking about.]
Ellison claims that the performance of Oracle V6 with TPS provides the
performance increase that is required for network computing. [This is
also good since Rdb is faster than Oracle.] Ellison also said that the
VAX 8840 was broken [since Oracle doesn't run well with it] and that the
VAX 6240 was a good machine.
Digital Internal Use Only 1
In order to help in the migration, Oracle will be building many of the
'mundane' applications like financials, e-mail, office automation, etc.
Ellison gave a great deal of emphasis on the need to transfer technology
to the consumer (customer). Of Oracle's 3000 employees, 1500 are
involved in technology transfer - Support, training, onsite consulting.
[Probably also sales and sales support.] Having the greatest technology
isn't worth anything if no one is using it. Oracle claims they spend a
lot of effort helping people use the technology [or at least buy it].
1.1 Other Notes
Oracle is downplaying the importance of distributed database technology.
They are positioning as only for pioneers, not the masses.
Oracle has seven industry sales groups: pharmacuticals, re-
tail/distribution, finance, manufacturing, Federal government, state
and local government, and telecommunications.
Oracle's strategic marketing partners are: Novell, INI, Interlink,
Lotus, and Intellicorp. Oracle is especially happy with their Novell
partnership and are working with them to development integrated network
offerings. In particular, Oracle was setting itself up to help install
networks because of the complexity of the tasks. Oracle would, of
course, provide the data backbone for the network. Although I have
no specifics, it seemed clear that Oracle was moving in the hardware
direction [will the CPU and disks be next].
Oracle's product lines include: database, development and design tools,
decision support products, office automation products, applications,
service, and consulting. Oracle wants to be your full service and
support vendor for information integration providing "Enterprise wide
solutions."
Oracle's goals over the next few years: Raising competitive barriers,
broadening their business base, managing high growth, and moving into
hyper-growth. According to Oracle, their recent growth was flat compared
to what will come.
The company with hyper-hype will achieve hyper-growth with integration
with hyper-card??? Actually, Oracle is entering the bread-and-butter
Digital markets: Networks, OA, database, consulting, service, and
systems integration. It would not be surprising to see Oracle gaining
account control and then moving accounts to a mix of HP, Sequent,
Harris, Prime, and DG equipment. It would be in their best interest.
In order to manage the new product lines and hyper-growth, Oracle has
formed independent business units. Each unit has its own marketing and
engineering groups. For example, CASE products are built in the UK.
2 Digital Internal Use Only
|
|
David Dreyfus
Database Systems Group
DTN 381-2893
DEBIT::DREYFUS
11-October-1988
Oracle New Product Information
1 Financials
A lot of presentations and booth space were devoted to Oracle's
new financial applications. They are designed to demonstrate the
applicability of the Oracle DBMS. The person in charge of financials has
a theory that mainframe computing has almost destroyed the US economy
because all information is moved to a centrallized location is never
seen again. Oracle financials are supposed to distributed the data back
to the users.
Ross systems is seen as a puny competitor. M & D and MSA are a bit more
interesting.
Ease-of-use, power, and flexibility are touted. The product is supposed
to be usable even without documentation. The same system will be
provided on PCs and mainframes. Some of the comments from competitors
are that it is very expensive and not as functional as it should be. It
does demo well.
Oracle will be announcing joint promotion of the financial package on
HP and Sequent. [ just think what can happen if they are sold on a VAX
... and then upgraded to a HP]. The financials are also supposed to
integrate with Oracle-Mail so that reports can be sent automatically. In
addition, the financial applications will integrate with Oracle-Mail so
that 'live forms' can be sent through the mail and completed by another
person before the application resumes execution.
2 SQL*FORMS 3.0 and SQL*MENU 5.0
Still in development are these saviors of Oracle's application
development product line (production in Summer 89 [can you say 90?].
Even the Oracle sales support people were telling me how awfull
SQL*FORMS 2.3 was. 3.0 fixes all the problems with: Online help, context
sensitive help, a standard Oracle look-and-feel, and a built in text
editor for triggers (oracle triggers) and long fields (The audience
wanted a user definable editor. The response: "we'll look into it."
). Other new capabilities will be the ability to copy or reference
triggers, fields, blocks and other objects in a SQL*FORMS application
between applications. [The copy capability and the common look and feel
are currently major wins for Ingres.]
Included with the new versions will be expanded reporting capabilities
on the use of various objects (blocks, tables, etc) within SQL*FORMS
applications. [This appears to be a superset of CDD's pieces tracking
capability - from a report generation point of view.] Another major hit
should be fixed with version 3.0 when 3GL programs should be able to
call SQL*FORMS as a subroutine.
Digital Internal Use Only 1
Other features will include pop-up windows, dynamic field attribute
control, automatic master-detail form generation, and field masking
(edit control on a field).
PL/SQL, the new proprietary extensions to SQL will be available
for use SQL*FORMS as part of V3.0 (no added cost. TPS will not be
required). This is a great enhancement for SQL*FORMS because current
implementations must call the database kernel for such things as
simple arithmetic, field comparisons, and other simple operations. The
inclusion of PL/SQL should dramatically improve SQL*FORMS performance
[we should be able to just say it is slow, not deathly slow.] PL/SQL
will finally give SQL*FORMS and Oracle a 4GL capability - the syntax
looks like TPU. Right now they have limited forms capability with a good
connection to the database.
One of the goals for SQL*FORMS is device independence. The same
application should execute on block mode, char cell, and bit mapped
terminals. The goal is to isolate the runtime characteristics from the
display characteristics. [What a concept.]
The SQL*FORMS debugger will be added/improved to allow a user to step
through form statements (Oracle triggers) and examine variables at each
point.
3 Textretrieval
From a UK-based business unit, the market will soon see SQL*TextRetrieval.
This product will, according to Oracle, unite data and text for the
first time. Built on the Oracle kernel and SQL*FORMS, this product will
add a few tables to the database and allow for free-text retrieval. Some
of the features are the support of synonyms, broader terms (beverage is
a broader term for milk), narrower terms (milk is a narrower term from
beverage), preferred terms, hit lists (only index these words), and stop
lists (don't index these words). They have added a new keyword to SQL,
CONTAINS, which allows booleans, wildcards, and proximity matching.
4 CASE tools
Oracle's CASE offering comprises two products and a methodology:
CASE*Dictionary (AKA SQL*Design Dictionary), CASE*Designer, and the
Oracle design methodology. The sales pitch is that you can't do ad-hoc
design for corporate computing and distributed computing. Prototyping
just doesn't work anymore. Oracle's CASE tools provide the methods,
repository, workbench, rule-based diagrams, generators, automated
technicques, and project planning to solve the problem. Some of the
functionality is here today.
The CASE*Dictionary provides many reports and utilities that will check
design quality, check completeness, cross reference, and produce a
default database schema (with the SQL DDL). New versions will support
overlapping applications and version control. One of the people in
charge of the product claim that VAX CDD/Plus has about 50% of this
functionality.
2 Digital Internal Use Only
The CASE*Designer is a workstation based tool that supports rule-based
and free-hand digramming of the business problem. Entity-relationships
and hierarchical diagrams are supported. Bascially, this is a simple
graphics editor with a strong connection to the data dictionary.
The CASE*Designer is still in beta (V1.0). The CASE*Dictionary is in
beta on the VAX.
5 Office Automation
Oracle's office automation thrust will unite database and OA, something
that they consider to be traditionally two different product lines.
Oracle will change this by providing OA products that work with the
database. By the time that Oracle is finished, there will be schedulers,
calanders, word processing, spreadsheets, applications, and mail.
Oracle will be providing their own mail system running on Oracle and
using SQL*NET to provide hardware independent mail systems. The mail
system will have the familar Oracle look-and-feel and will be menu
driven. Gateways will be provided to Unix mail, VMS mail, and X.400.
This will allow users on any system to access any other system. Mail
messages will be stored once on each system with all the recipients of a
message getting a pointer to the mail message.
Some of the interesting features of Oracle Mail are the integration
of Mail with applications. For example, a purchasing application will
display a form for a PO. If you don't have the authority to approve an
expenditure, the application will send the form to your supervisor (or
someone with approval authority) through Oracle mail. The supervisor
can fill out the form (the form is live, as if in an application). When
complete, the form will be returned to you for further processing.
Oracle will be providing an API so allow mail to be embedded in
applications. In fact, the mail interface is just an application using
the mail API.
Mail users will have to be enterred into the mail system [ let's see,
once for VMS, once for Oracle, once for Oracle mail. Keep those system
admin people busy.] Also, how space is managed for each user is not
clear.
Another part of the current OA offering is integration with All-in-1.
Oracle will be adding additions to All-in-1 menus and allow the movement
of documents between All-in-1 folders and Oracle folders. I don't know
how tight the level of integration is.
6 Secure Database
This session explained current (5.1) capabilities, 6.0 capabilities and
future capabilities in the area of secure databases.
Digital Internal Use Only 3
Currently, users can audit database connections, attempts to access
non-existent objects, SQL commands requiring DBA resources, access by
object (by operation, per access and per session). The audit trail data
is stored in database tables.
How does this compare to Rdb?
6.0 will add better password encryption and additional views on the
audit information tables.
The future goal is to become the premier commercial and military secure
RDBMS product. With partial funding from an agency of US intelligence,
Oracle has a 2.5 year project to produce a secure database.
Version 6.1 (potentially) will have group level access controls in
addition to the user level controls currently used. Users will be
grouped into roles and roles will be given certain priveledges. Oracle
will create a separate security officer from the DBA in order to
offload security issues from other DBA issues. The new product will
be compatible with external security mechanisms like those available
on IBM systems. The new product will have the ability to change object
ownership, application level security, password control/expiration, and
login control by terminal, time, day, number of unsuccessful attempts,
etc. [Many of these features are already in VAX ACMS.]
Future goals will include C2 and B level security.
7 Version 6.0 with TPS
Although reports abound about what version 6.0 with TPS will have, here
is a short list: system generated sequence numbers (to help generate
primary key), savepoints and abort to savepoints (within a transaction),
commit and rollback are now in SQL, Nulls are sorted above non-nulls,
SQL code can be +100 to signal end-of-data (for embedded programs),
STORAGE clause added to CREATE and ALTER TABLE commands (replaces
existing STORAGE statement), resourse priveledges by tablespace, new
data dictionary views, UPDATES with empty subqueries in set clauses
return NULL (as opposed to aborting statement), set transaction read-
only for nmulti-query snapshots, and national language characters &
collating sequences.
Version 6.1 should become 100% ANSI compliant, will increase the
integration of PL/SQL, will add user defined ADT (abstract data types),
and will support stored procedures.
Version 6.0 without TPS won't be available for a year as Oracle needs
to figure out how to backout many of the changes. The users were real
pissed-off about the price of TPS.
PL/SQL is procedural SQL. The sytax looks something like VAX TPU.
You can declare local variables, you can use loops, conditional, and
boolean expressions. Through PL/SQL groups of SQL statements are sent
to the kernel at the same time. The kernel was upgraded to handle the
new syntax. You can mix and match PL/SQL and PRO*C statements (other
languages too).
4 Digital Internal Use Only
PL/SQL will go beta when V6.0 with TPS is released!!
A final word of caution. Oracle V6.0 with TPS includes the syntax for
referential integrity. It is not implemented yet.
8 SQL*Connect V1.0
SQL*Connect is part of the SQL*Star architecture. The purpose of this
product is to allow DB2 and SQL/DS databases to be included in an
Oracle distributed database or to be accessed directly by Oracle tools.
SQL*Connect will reside on the IBM machine and will sit on top of DB2 in
order to give DB2 an Oracle interface.
SQL*Connect is currently in beta with production planned for spring. The
current version will only allow SQL*Plus access using DB2's dynamic
SQL interface. None of the Oracle tools, report writers, or user
applications will be able to use SQL*Connect V1.0 to access DB2. [real
usefull ...]. In addition, the DB2 error messages are passed back to
the user and are not converted to Oracle error messages. PL/SQL will not
work against SQL*Connect.
Future versions will read-write IMS and read RMS and VSAM.
It appears that we will have a real edge with our VIDA program where
everything looks like VAX Rdb.
9 Application Foundation
For the price of SQL*FORMS you will soon be able to purchase a SQL*FORMS
based product that makes application development easier. [One product
for the price of two. What a deal.] This product will give you 10 times
the productivity of SQL*FORMS because it has pop-up windows, context
sensitive help, an intuitive interface, application level security,
quick-pick windows (pop-up window to select a value), lotus or MAC
interface, stackable forms (table top metaphore) on screen, and some
audit capability. The big push is to provide a standard Oracle look-and-
feel to products and to users' applications.
Some other features include the generation of master-detail forms,
flex fields (coded and decoded fields), some mechanism for controlling
batch/concurrent processing, and a long field editor. Some new concepts
are context sensitive form navigation and graphs. This product seems
to contain many of the features planned for SQL*FORMS V3.0. This was
the tool that Oracle built in order to easily build their financial
applications. SQL*FORMS would have extended development time for years.
10 User group enhancement requests
The final session of the user group week had Oracle representatives
deliver prepared responses to a questionaire that the users filled out
earlier in the week. There was no interactive questioning at any time.
The following is an abbreviated prioritized list of what users wanted
and the Oracle response.
Digital Internal Use Only 5
o Referential Integrity
6.0 has the syntax. 6.1 will have the full implementation (no
cascading deletes, though).
o Resource monitoring to warn of increased use by user.
Version 7.0.
o Dynamic space management
No.
o PL/SQL should come for free.
We need to recoup our investment.
o SQL optimizer should not be position dependent (dependent on how the
query was written. Dependendent on the order of the FROM list).
Version 7.0
6 Digital Internal Use Only
|
|
David Dreyfus
Database Systems Group
DTN 381-2893
DEBIT::DREYFUS
11-October-1988
Oracle Technical Information
This report provides an overview of how Oracle V6.0 with TPS works and
what to watch out for. The following list contains the highlights with
details to follow.
o Cluster support
While Oracle can finally provide automatic recovery and after-image
journaling (when 6.0 goes production next year), there are still many
concerns about cluster performance. Performance rapidly degrades in a
VAXcluser.
If a database can be accessed by another cluster (ORA.INIT set to
allow multiple instances of a database), performance drops by 25%.
If a second node actually creates a second instance (attaches to
a database), performance can actually drop by considerably more,
providing a linear decrease in performance as hardware is added.
o Multiple databases and multiple users
In order to access a database, the database must have an instance.
There is one instance per database, per node. An instance includes
all the user processes (one per user) plus five other processes
(database read-write, log file read-write, system monitor, process
monitor, and archiver). Thus, if 5 users access 5 different
databases, the system must handle 25 VMS processes. Just think about
the performance of a system where each user had a personal database.
o The preferred method for reclaiming database space
Export/Import the database.
o Limitations to On-line backup
Oracle has introduced the notion of a binary control file that
provides the key to the database and describes where all the files
are. If these little files are lost or broken, the database is
trashed. You can only recover a database to the date of the control
file. For this reason, Oracle recommends that you have multiple
control files. In order to backup a control file, you must shutdown
the Oracle database. So much for 7X24 operation (or is that 6.9X24).
o Limitations to database recovery
There is no way to recover a database up to a point in time. A
database can only be recovered to the current time. So, if you
destroyed your database within the last 5 minutes, too bad. You won't
be able to recover to 5 minutes ago.
o Limitations to archiving the redo (AIJ for you Dec folk) file
Digital Internal Use Only 1
We were told that various archive algorithms are under consideration.
This is great since the product goes production in November
(according to Oracle. I guess sometime next year. At least I wouldn't
recommend using it till then.)
o Extensive beta
With one month left in beta, Oracle has 170 bugs outstanding. More
are sure to follow. Some of the previous bugs tended to hide other
bugs: like the one that would allow database startup.
Of the 60 V6.0 tapes sent to customers, 15 are in the active beta
program.
o Minimum database size
5 MB
1 I/O performance and benchmarking
Oracle claims that their new fast commit, deferred write, piggy-backed
write scheme reduces I/O by 95% at commit time. This is because the I/O
is done at other times - checkpoints, when another user needs the data
over the cluster, etc.
When Oracle ran its benchmark, the test lasted a whopping 5 minutes,
how's that for realism. Checkpoints, the point at which data is written
to disk, were set to happen at some point after the completion of the
benchmark. When was the last time your database did no I/O?
The I/O reducers fail to work in cluster systems because they all rely
on large amounts of shared memory. VAXclusters, of course, don't have
shared memory. This forces pages used by multiple nodes to be constantly
written to disk.
2 Locking
Oracle has talked a lot about row level locking. When a database is set
up for cluster access, performance drops by 25% because they now need to
use a real lock manager. It seems that they way Oracle does record level
locking is by setting a bit in the record and keeping the record in the
shared memory region.
It is not clear that they have record level locking over a cluster since
the 'lock bit' is not visible over a cluster.
Oracle also talks about how their record level locking works on index
pages; thus, you can lock an index record without locking the whole page
and, thus, not lock many data records. The same is true for VAX Rdb.
2 Digital Internal Use Only
3 The monitor
It appears that you can only monitor I/O on a per user or per database
basis. This is no help at all in determining how to place tables in
TABLESPACEs. Rdb's RMU allows monitoring by area to provide information
for effective partitioning.
Oracle allows you to monitor lock information only for those locks that
cause contention. It is not clear if they monitor deadlocks or how they
handle deadlocks.
According to one user, they had a 50% performance hit when using the
monitor. Don't know if its true, but it is interesting.
4 The redo log
Each node on a cluster gets a segment of the redo (AIJ) log. Since
Oracle does no dynamic extensions (as opposed to Rdb), when any segment
fills, all nodes must checkpoint their database (lots of I/O) and then
use a new redo log. In order to reuse the redo log, the data has to
be written to tape. If the log fills as its being written to tape (and
there are no more logs), the database stops. This is very probable with
very big databases.
5 Rollback logs
The rollback segments are part of tablespaces. Each database should have
more than one. The rollback segment is used for snapshot files as well
as transaction rollback. If these get filled, the database stops. You
need to have one rollback segment per VAXcluster node.
Note that there will be a lot of contention on the rollback file (to the
extent that caching all the information in shared memory doesn't work).
Compare this to Rdb where RUJ and SNAPSHOT files are independent for
much greater flexibility. Also note that you can have one SNAPSHOT file
per area with Rdb to balance the I/O load.
6 Memory usage
In general, Oracle assumes that memory is cheap and available. All of
their performance strategies assume a large global cache of memory. The
use of massive memory avoids I/O and provides very good performance (as
expected).
When the massive shared memory assumption doesn't hold, performance
rapidly degrades. Examples of this type of environment are VAXclusters
(no shared memory), small VAXes (<128 MB), and multi-user systems.
Examples in this last category are systems with many users, systems
with many applications, and systems where other products need memory.
Basically, we are still quite a few years away from free and infinite
memory. Until that time, Oracle performance will suffer.
Digital Internal Use Only 3
I should also note, however, that V6.0 performance is faster than
Oracle's V5.1. This is good news for Oracle customers who have had
to live with horrible performance. Of course, to get this higher
performance, Oracle customers must purchase V6.0 with TPS.
7 Benchmarking, memory, processing, and timing
As we all know, Oracle ran its benchmark by using 15 TP generators on a
VAX 6240 (thus there were only 15 transactions active in the database
at any given point). Each transaction was timed from start transaction
to commit. With 15 TP generators, the 6240 handled the 15 TP processes
plus 5 Oracle instance processes. The available memory on the machine
was then available for a large database cache. Since the test ran for
only 5 minutes, the cache never filled, and no I/O was required.
With VAX Rdb testing 1900 users accessed the database through VAX ACMS.
Each user started a transaction every 100 seconds. Thus, 19 requests
were initiated per second. The timing of each transaction begins when
the user request is complete. This is not necessarily the same time
the transaction is started. In order to make sure that 95% of the
transactions completed in less than one second, a lot of overhead
was incurred on the VAX 6240. This overhead consumed memory and CPU
resources.
Had the timing of each transaction started when the BEGIN TRANSACTION
statement was executed, none of the overhead would have occurred. All
the work performed to guarantee uniform response time could have been
avoided. Yet, subsecond response times could have been reported.
4 Digital Internal Use Only
|
|
+-----------------+
| d i g i t a l | I n t e r o f f i c e M e m o r a n d u m
+-----------------+
To: Bruce Date: 13 October 1988
From: Andy Mahler
Dept: Database Systems
DTN: 264-3057
Loc/Mail: TTB1-6/E6
Net: NOVA::MAHLER
Subject: Trip Report from the International ORACLE Users Association
Meeting in Orlando, October 2-6.
This was the once-a-year worldwide meeting of the International ORACLE
Users Group (IOUG), held from Sunday, October 2nd to Thursday, October
6th.
The meeting had a similar layout as DECUS, with concurrent sessions
and an exhibit hall. Whereas DECUS has a more technical focus, this
meeting was more marketing hype. By the end of the last day I felt
like I had just listened to 4 days of sales presentations. Most
answers to questions (and there was very little time allocated to
them) were that "next version fixes it" or "we'll have it in the next
version". No presentations done at the meeting were by Engineers and
the campground sessions were done for an hour in the early evening,
thus discouraging people from attending. All ORACLE sponsored
sessions lasted as close to an hour as possible so no questions could
be asked. However, talking with some of the users and meeting with
ORACLE technical support people one to one provided the most "good"
information.
The important highlights of the meeting are as follows:
o Larry Ellison's Welcome Address - this focused on where
ORACLE will be headed for the next 2 years.
- Productivity is the first issue to handle. He sees an
order of magnitude gain to build applications by
supporting 5GL's, moving integrity rules into the
database and out of applications, and providing a
complete set of productivity tools (CASE).
- Performance is next issue to handle (this includes
price/performance). At last years meeting Ellison said
that V6/TPS would be 10x faster, at this meeting he
stated that his prediction was correct and gave the
following numbers:
Page 2
265 TPS 3090-600E (MVS)
124 TPS Sequent Symmetry (UNIX)
49 TPS VAX 6240 (VMS)
All were run with the TP1 benchmark (does not include
network-generating transactions), with 15 batch jobs
for 5 minutes, with checkpoints (this is when I/O is
done) set longer than 5 minutes.
Also he gave some price/performance numbers:
* IBM/DB2 $53000/TPS
* ORACLE $48000/TPS on IBM
* ORACLE $15000/TPS on DEC
* ORACLE $ 7000/TPS on UNIX
And the goals for next year are to have a 1000 TPS
database (didn't mention hardware) and also offer ORACLE
for $2000/TPS.
- The last issue for the next 2 years is to provide
conversion/transition utilities. This means writing
gateways for the SQL*Interconnect, already have DB2
gateway and will be looking at interfacing to
non-relational products like IMS, RMS and VSAM.
After Ellison were several more speakers, then we finally broke to the
concurrent sessions. I will group what I picked up the rest of the
week into specific topics: V6.0 Features and Architecture; New
Products; Futures; and Other Notes.
Page 3
o V6.0 Architecture and Features
- Architecture
Below is a diagram of the V6 system architecture and what
one database instance would look like.
+--------------------------------------+ M
| +--------------------+ +---------+ | SYSTEM E
| | database buffers | | redo | | GLOBAL M
| | | | buffers | | AREA O
| +------ /| ----------+ /----/-|-\+ | (BUFFERS) R
+------- / | -------------/----/--|--\-+ Y
/ | / / | \
/ | / / | \
/ | / / | \ P
/ | / / | \ R
+ / ---+ | ---+--- / +- / --+-- | -+--- \ + O
| USER | DBWR | LGWR | SMON | PMON | ARCH | C
+-- | -+- | --+---- \+------+------+ / | -+ E
| | \ / | S
| | \ / | S
| | \ / | E
| | \ / | S
| | \ / |
| | \ / |
+---------+ +| --- | -----------+ +\ / + + | ----------+ H
| control | | +------+ +----+ | |redo-|+ | tape drives | A
| file(s) | | | data | |roll|+ | | log ||+ +-------------+ R
+---------+ | | | +----+|+ | |files||| D
| | | +----+| | +-----+|| W
| +------+ +----+ | +-----+| A
| tables | +-----+ R
+-------------------+ E
database
ORACLE will have this for every accessible database on
the system. Note the 5 background processes, so if there
were 3 database on the system, there would be 15
background processes. Those 5 processes accomplish the
following:
1. DBWR - Database Writer, performs the writing of the
data to the buffers and also applying checkpointed
redo log files to the database.
2. LGWR - Log Writer, performs the writing of the redo
buffers to the redo log files.
3. SMON - System Monitor, monitors for system failures
(CPU and disk crashes, etc...).
Page 4
4. PMON - Process Monitor, monitors for process failures
(CTRL-Y, etc...).
5. ARCH - Archival, writes checkpointed redo log files
to tape for recovery purposes (if needed).
The User Process is the actually user(s). The control
file includes physical info about the database
(timestamps, list of files) and is updated at checkpoint
time and file addition. The idea is to keep multiple
control files on different disks for fault-tolerence. In
a cluster, ORACLE would have the instance information on
the other nodes as well. The redo log file is
partitioned into N segments for N nodes in the cluster,
when needed for recovery they go through a merge sort on
time and date stamps. Coordination among the System
Global Area is done through ASTs.
- Fast Commits
This is similar to Group AIJ Write, it piggybacks the
writing of the redo log buffers to the redo log file (the
file is a combination of an AIJ file and a deferred-write
file).
- Deferred Writes
They use a Least-Recently-Used algorithm to flush buffers
to redo buffers. So it can piggyback multiple
transactions into 1 buffer and write multiple buffers
with 1 request (fast commit).
- Array Interface
Moves multiple rows within a single packet
- PL/SQL (Procedural Language SQL)
This is the transaction processing language that handles
multi-statement database requests, they refer to it as
"powerful procedural extensions to SQL".
- Row level locking
This is accomplished by setting a bit in the record to
note that it is locked (not sure they are doing anything
with the VMS lock manager to accomplish this).
- Read Consistent Snapshots
Rollback Segments, which is really a relation within the
Page 5
database and also their before-image journal storage
structure, are used in conjunction with time and date
stamps to determine whether a "snapper" can see what's in
the data tables or has to go through an algorithm that
has the "snapper" looking in the global buffer, the redo
log buffer, the redo log file or the rollback segment to
find the record. You can have multiple rollback segments
but when they fill up and can't be flushed, the database
halts.
- High Availability
ORACLE now has Online Backup and Recovery. Backup is
accomplished by starting backup and all current
transactions will write to the redo log file and then be
applied after the backup completes. Control files cannot
be backed up online, therefore it is not truly 7x24.
Recovery is done by using a command procedure that
prompts for the archived redo log files (very error
prone, and you need to know which came first, etc...),
these files are applied while users are writing to the
current redo log files. They do not have anything
similar to an /UNTIL switch. You can have multiple redo
log files but if any of the above operations are running
those files can't apply the "new" data, and when all the
redo log files become full the database halts.
- DBA Facilities
SQL*DBA is a new facility that monitors dynamic
performance of users, table access, locks and I/O (to
users or database only, not per relation). It also
allows changes to tune performance (but not online) like
adjusting the buffer pool, redo log size, spreading a
table across disks and locating tables and indexes on
separate disks.
- SQL conformance
ORACLE will accept full addendum 1 syntax, but won't
enforce anything until V6.1. They've also added some
more extensions to their SQL.
o New products
- CASE Tools
In field test is CASE*Method (this is not a product, but
is a methodology to aid in development - consulting
services), CASE*Dictionary (organizes application
Page 6
specifications, currently models Entity-Relationship) and
CASE*Designer (edits the dictionary info into diagrams)
- Office Automation
ORACLE for All-in-1 (in field test for Europe), it's a
gateway between ORACLE and All-in-1. ORACLE*Mail, which
does less than VMS Mail, but is layered on the database
rather than flat files. Also ORACLE for 1-2-3 and
SQL*Reportwriter.
o Futures
This will focus on Security, V6.1 and V7.0 planned features.
- Security
ORACLE started a "Secure RDBMS" project 3 months ago,
expect it to be complete 2� years from now. It is
partially funded by an unnamed agency of the U.S.
Intelligence Community. First features will show up in
V6.1 and will include:
* Group level access controls
* Roles
* Separate DBA duties
* discretionary "need to know" security
* Auditing of individuals
They believe they will be at C2 with V6.1. V7.0 will
have B level security, they claim to involved with the
NCSC (National Computer Security Committee) on the
"trusted database interpretation".
- V6.1 Planned Features
This release is due in Mid-Calendar year 1989. The
features for V6.1 that I haven't already mentioned above
are:
* User defined datatypes
* Stored query procedures
* DB2/ANSI switch for SQL
Page 7
* and performance.
- V7.0 Planned Features
* Rewrite of precompilers
* Object oriented, user extensibility database
* SQL2 Support
* Two-phase commit
- And some new utilities like a Scheduler and Calendar for
Office Automation and a Project Manager for CASE.
o Other notes
In a session titled VMS Topics, it was stated that database
market for mainframes is growing at 12%, minicomputers at 30%
and micros at 28%. ORACLE's largest installed base is on
VAXen at 28% number of licenses, and 43% of ORACLE revenue
comes from licenses sold to DEC hardware.
The last session of the meeting was "Enhancements". At the
beginning of the week a survey was handed out with features
that should be added, users voted and the results were
announced here. I will list them here in their general sense
as to what users are most interested in.
1. Referential Integrity
2. Support (looking for better communication from ORACLE to
users)
3. More efficient backup and recovery
4. Better resource monitoring
5. Better Documentation
6. Dynamic Space Management (all of ORACLE's files are
pre-allocated and can't dynamically grow).
7. Better pricing structure (Users want PL/SQL without
paying the full price for TPS)
8. Better optimizer
Page 8
9. Windowing interface
10. Ability to override optimizer (ie chose the index
manually)
In conclusion, the meeting seemed more like a sales promotion than a
place for users to get together and discuss the product. A portion of
what they talked about was "vaporware". I was disappointed by the
lack of Question and Answer sessions (never got a good feeling as to
what customers thought of the product). I did get some good technical
information and a good feeling of where they are headed for the
future.
I have 25 pages of notes, if there are any outstanding questions or
clarification please let me know and I will address them.
|