[comp.databases] /rdb information

greg@btree.uucp (greg santos) (03/07/88)

Greetings, NetLanders.

I have seen a few queries on the relational data base system /rdb
go by in the past few months.  Since we are in the process of 
evaluating relational data base packages for installation on our
UNIX(tm) systems, I will spill what I have found out.  I am in no way
connected with the company who supplies /rdb or with the author,
Rod Manis, and anything I say here is subject to correction by
the aforementioned supplier and author.

The supplier of /rdb is a Santa Cruz-based firm called Robinson 
Schaffer Wright.  When I telephoned I reached Mr. William Wright,
who chatted pleasantly with me about the philosophy of /rdb.  He
since has sent me a sales flyer and manual.  I paid thirty dollars
for the manual, and feel almost completely informed on the style
and capabilities of /rdb.  To begin, here is a direct quote from 
the sales flyer:

    'There are many database systems available for UNIX.  But all of
     the others are software prisons that you must go into and leave
     the power of UNIX behind.  Most were developed on operating sys-
     tems other than UNIX and consequently their developers had very
     few software features to build upon.  As a result, most database
     developers wrote the functionality they needed directly into their
     applications without regard for the features provided by the
     operating system.  The resulting database systems are large, com-
     plex programs which degrade total system performance when they
     are run in a multi-user environment.

    'UNIX provides hundreds of programs that can be piped together
     to easily perform almost any function imaginable.  No one comes
     close to providing the functions that come standard with UNIX.
     Programs and philosophies carried over from other systems put
     walls between the user and UNIX.  Thus the power of UNIX is
     thrown away.'

The flyer then goes on to explain about pipes, redirection of input/
output, etc., and how these can be used as elements in a powerful
4thGL, i.e., the shell.  All /rdb tables are simple flat ascii files, 
with two header lines in each file supplying name and length infor-
mation.  /rdb is a collection of UNIX programs which, when piped
together, provide a 'relationally complete' working environment,
possessing, the supplier claims, the 'uniform relational property'
when operating on said files.

The relational commands do seem to be all there (e.g., project, select,
join, sort, compute, etc.) and there are some clever additional 
features, such as allowing data to be optionally stored as lists
rather than as a table, with conversion routines from one to the 
other.  Many functions are also available as C library routines,
which the /rdb manual advises the user to eschew, in favor of 
shell programs with pipes and redirection.

A sample /rdb extract and print of two elements from a customer 
information table might look like:

$ select 'Sales > 1000' < custtable | project CustId Name Sales |
> sorttable | lp

which might print the following:

CustId       Name                Sales
----------   ------------------  ----------
10101        Foozl Widget Co.       1200.00
10104        Bayreth Singers       10033.72


and so on.  There are over a hundred /rdb programs for almost every
conceivable transformation of data, but in practice, it looks as
though a smaller percentage would be used frequently.  There are
several direct accessing schemes supported, and a simple but power-
ful table editor called ve, a kind of superset of vi, is supplied
with the product.  It is a database system for UNIX lovers, those
who cannot or will not leave the power of the UNIX shell and utilities
behind, and who cannot or will not sacrifice the highest level of
performance from their systems.

I like it so far.

Hope this helps understanding of /rdb out there.  For further information,
please contact the suppliers of /rdb:

          Robinson Schaffer Wright
          711 California Street
          Santa Cruz, CA 95060
          (408) 429-6229


Greg Santos
Brooktree Corporation
San Diego CA
...sdcsvax!ucsd!btree