[Info-vax] Oracle Database vs Oracle/Rdb

Jan-Erik Söderholm jan-erik.soderholm at telia.com
Sat Jul 13 00:30:08 EDT 2019


Den 2019-06-22 kl. 18:52, skrev Neil Rieck:
> On Wednesday, June 19, 2019 at 1:18:05 AM UTC-4, DTL wrote:
>> from application/VMS--(local)--RDB/VMS to 
>> application/VMS--(local)--OraDB/VMS.
>> 
>> The Customer wants (why? dunno yet) to "move from Rdb to Oracle" (sic)
>> in the same environment, with no modifications whatsoever.
> 
> That may not be possible depending upon how the customer is using 
> Oracle-RDB. Recall that RDB was developed by DEC as a successor to RMS.
>  Certain DEC languages, like COBOL and BASIC, have builtin support for 
> RMS while other DEC languages provide indirect RMS support via the 
> linker.
> 
> To the best of my knowledge, no so-called DEC languages provide builtin
>  support of RDB...

Not for Oracle either.

> ...but some very cool developer tools exist which will allow you to 
> compile-in RDB support.

It is the standard Embedded SQL compiler (similar to what Oracle has) for
the usual languages and the SQL Modular Language compiler (I do not think
there is something similar for Oracle) that compiles pure SQL files into
standard VMS object (OBJ) files.

Now, the main difference between Rdb and Oracle is the architecture.

Oracle has one (or multiple) central "database engine(s)" that does all
the physical database file accesses, all the "DB-work". User processes
sends their SQLs over to this central process to have it executed.

Rdb links the database handling code into each application and thus is
running in the user process space. So after the locks has been got, all
processing can be done in parallel from each process. And if that is
against different storage areas (DB files), there is close to no resources
shared between the different processes. One process can have fewer local
buffers to cope with normal work and some other can have more buffers to
cope with a larger batch run. All that (buffer and other configurations)
is central in the DB engines in Oracle.

There is a central "Rdb Monitor" process, but that doesn't do any work,
it just monitors Rdb and starts rollback processes if a user process
dies, and similar servicing tasks.

> If your customer is not doing this then RDB is no different than 
> Oracle-db or any other SQL product which means you will access the 
> engine with a connector.
> 

It would be highly surpricing if a long time Rdb user does not
use either embedded SQL or the SQL Modular Language compiler.
You can write calls using the SQL/Services (similar to SQL*Net
in Oracle), but there is no reason as long as you stay within
the local system.


> Neil Rieck Waterloo, Ontario, Canada 
> http://neilrieck.net/docs/openvms_notes_rms_rdb.html#rdb
> 




More information about the Info-vax mailing list