Model 204 is a DBMS for IBM and compatible mainframes, which was first deployed as a product in 1972. Formerly owned by Computer Corporation of America (CCA), Model 204 was purchased in 2010 by Rocket Software, of Newton, Massachusetts.
Model 204 is a database management system (DBMS) that provides facilities for the creation, control, query and maintenance of database files. Access to the data is provided by an internal language known as SOUL (formerly User Language), by a variety of Host Language Interfaces (for example, you can embed queries to Model 204 data in COBOL, Assembler, Fortran, etc.), and via SQL using Horizon and CRAM interfaces.
Model 204 contains an embedded TP monitor that provides for user sessions directly in the DBMS address space. Note that this makes Model 204 unique in the DBMS world: Rather than users viewing the data from an external application, Model 204 users typically hold full-screen sessions directly inside Model 204.
Model 204 is highly parameterized and can be configured for environments that are quite compact and also for environments spanning the largest IBM and IBM-compatible multiprocessor machines. Model 204's strengths lie in its ability to handle very large volumes of data accessed by very large numbers of users, processing very high volumes of transactions. In addition, Model 204 is characterized by its high level of integration and the ease and variety of programming approaches for application development.
The internal structure of Model 204 database files is based on a set of tables which hold file parameters, data records, indexes, procedures and binary large objects. The sizing of the tables is based on expected use of the file. Typically, procedures are held in separate files from data, but this is more of a standard practice and is not enforced by Model 204.
While a Model 204 database can be fully Normalized, this too is not enforced by the structure of Model 204. In fact, Model 204 records can be completely free-form, with varying lengths of records and varying numbers of occurrences of same-named fields. Because records, and the fields that are populated on records, do not require or use any preallocated space, Model 204 lends itself to applications where record sizes vary greatly and where the largest records or greatest number of occurrences of any field or set of fields, is unpredictable. Family records, for instance, are well-suited to Model 204 databases, as the average family might have two or three children, but many will have none, and a few will have dozens, or even hundreds. In a Model 204 file, the smallest "Family" record takes up only the space that it requires, and lives happily alongside other "Family" records that are many times larger.
The Model 204 documentation has largely been coverted from PDF manuals to M204wiki articles.
Additionally, these wiki articles introduce Model 204 commands, parameters, and core functionality.