This month's column concludes our survey of freely redistributable database (and related) systems. The systems below range in size from a few hundred kilobytes to dozens of megabytes. Consequently, it would be worthwhile to "look before you leap", matching your needs against the likely storage space and administrative requirements of the package you choose.
The persistent object management system OBST was developed as a contribution to the STONE project. An essential feature of STONE is that the object oriented paradigm is pursued consequently as a key concept. OBST is the common persistent object store for all tools within the STONE environment.
The OBST data model can be characterized by the following properties:
OBST may be obtained from ftp://gate.fzi.de/pub/OBST/. For more information on STONE, send email to firstname.lastname@example.org.
OO7 is a benchmark for object-oriented database systems. The distribution implementations of the benchmark on several systems, test results, papers, etc. It can be found in ftp://ftp.cs.wisc.edu/OO7/. In point of fact, given the number of datbase-related systems on this site, a little judicious browsing is certain to be rewarding...
A number of attempts have been made to interface perl to database systems. These include ingperl (INGRES), interperl (INTERBASE), isqlperl (INFORMIX), oraperl (ORACLE 6, 7), pgperl (POSTGRES), sybperl (SYBASE 4), and uniperl (UNIFY 5.0). In addition, there is a perl RBDMS (rdb; see below), an interactive SQL database engine written in perl (SHQL), and more. For information on these, and on the proposed "New Standard Database Interface for Perl", check out ftp://ftp.demon.co.uk/pub/perl/db/. See also the entry for RDB, below.
POSTGRES is a follow-on to the INGRES Relational DBMS. It explores object-oriented extensions to INGRES, while maintaining a very similar conceptual structure for users. The language POSTQUEL is based on QUEL, and adds only a limited number of new elements.
If you're looking for a classy (sorry) replacement for INGRES, consider trying POSTGRES. POSTGRES is more efficient than INGRES at many operations, can handle arbitrary data types, and is generally a pretty nifty piece of work. More to the point, it is still under active development, so you may have better luck getting bugs fixed, features installed, or what have you.
Remember, however, that this is research code. The fine folks on the POSTGRES Project are writing all this stuff for their own reasons, and your needs may or may not match theirs.
Somewhat at the other end of the spectrum, we have QDDB, the "Quick and Dirty DataBase". It's not big, it's not fancy, and as the README file notes, there isn't a staffed support group: "If you remember that the code is written by one person in his spare time (occasionally :-), then life, the universe and everything will be just peachy." Nonetheless, QDDB (available in ftp://ftp.ms.uky.edu/pub/unix/) may suit your needs for a small, comprehensible database..
RDB is a fast, portable, Relational DataBase Management System without arbitrary limits, (other than memory and processor speed). RDB uses the 'operator/stream' DBMS paradigm described in Unix Review ("A 4GL Language", March, 1991). The operators are UNIX filters, i.e. they read STDIN and write STDOUT so they can be connected by pipes (the '|' char). RDB can be found in ftp://rand.org/pub/RDB-hobbs/. You will also need to get a copy of perl, which is available in many locations, including ftp://prep.ai.mit.edu/pub/gnu/.
The Refdbms system consists of a database of references for approximately 3500 academic papers in computer graphics and computer systems, with a smattering of other topics. The system includes tools to query the database, to produce bibliographies for LaTeX documents, and to enter new references into the database. A reference database can be replicated at several sites, using TCP to communicate updates between servers. Refdbms is available in ftp://ftp.cse.ucsc.edu/pub/refdbms/.
Rim is a relational database management written in Fortran-77. The README counsels that:
Experience has convinced me that Rim is best for databases that will be updated by programs. It provides a convenient program interface and much support for loading and unloading and maintaining databases. It does not, however, present a very convenient user interface for adding or changing data. It has no screens. It does allow applications to be very portable -- as long as you keep them clean of system dependencies.
Rim can be found in ftp://ftp.u.washington.edu/pub/. The archive file will be named something like rim-1.24.tar.Z.