Multics Relational Data Store (MRDS)

The Multics Relational Data Store (MRDS) was first released in June
1976. This is believed to be the first relational database management
system offered by a major computer vendor, namely Honeywell Information
Systems, Incorporated. The designers were familiar with, and influenced
by, the work of Codd, the Ingres project at U.C. Berkeley, and the
System R project at IBM San Jose.

MRDS provided a command-level interface for defining databases and
views (called data submodels), and a call-level interface for queries
and data manipulation. A separate Logical Inquiry and Update System
(LINUS) provided an online query and update interface. The MRDS query
language was similar to SEQUEL (as SQL was first called), with -range,
-select, and -where clauses corresponding approximately to the FROM,
SELECT, and WHERE clauses of SQL. Explicit set operations
(intersection, union, and difference) were provided; there was no
direct sorting support. A query was passed as a character string to the
MRDS at runtime; there was no precompilation mechanism. Concurrent
access to a database by multiple processes was supported; each process
was required to explicitly declare the type of access (retrieval or
update) and, for update, the scope (set of relations) of the update.
The database could be quiesced and backed up in its entirety. A
transaction mechanism for atomically committing multiple updates was
added in a later release.

As its name implies, MRDS ran on the Multics operating system, and
its implementation took advantage of Multics mechanisms for security
and virtual memory-based storage. MRDS was written in PL/1.

When MRDS was released in June 1976, it was actually marketed as one
of two components of a package called the Multics Data Base Manager
(MDBM). The other component was the Multics Integrated Data Store
(MIDS), which was a CODASYL database implemented as a layer on top of
MRDS.