Page 20 - DCAP402_DCAO204_DATABASE MANAGEMENT SYSTEM_MANAGING DATABASE
P. 20
Unit 2: Database Relational Model
Notes
Figure 2.1: Relational Model
Its core idea is to describe a database as a collection of predicates over a finite set of predicate
variables, describing constraints on the possible values and combinations of values. The content
of the database at any given time is a finite model (logic) of the database, i.e. a set of relations,
one per predicate variable, such that all predicates are satisfied. A request for information from
the database (a database query) is also a predicate.
2.1.1 Relational Model Concepts
The purpose of the relational model is to provide a declarative method for specifying data and
queries: we directly state what information the database contains and what information we
want from it, and let the database management system software take care of describing data
structures for storing the data and retrieval procedures for getting queries answered.
IBM implemented Codd’s ideas with the DB2 database management system; it introduced the
SQL data definition and query language. Other relational database management systems
followed, most of them using SQL as well. A table in an SQL database schema corresponds to a
predicate variable; the contents of a table to a relation; key constraints, other constraints, and
SQL queries correspond to predicates. However, it must be noted that SQL databases, including
DB2, deviate from the relational model in many details; Codd fiercely argued against deviations
that compromise the original principles.
2.1.2 Alternatives to the Relational Model
Other models are the hierarchical model and network model. Some systems using these older
architectures are still in use today in data centers with high data volume needs or where existing
systems are so complex and abstract it would be cost prohibitive to migrate to systems employing
the relational model; also of note are newer object-oriented databases, even though many of
them are DBMS-construction kits, rather than proper DBMSs. A recent development is the Object-
Relation type-Object model, which is based on the assumption that any fact can be expressed in
the form of one or more binary relationships. The model is used in Object Role Modeling
(ORM), RDF/Notation 3 (N3) and in Gellish English.
The relational model was the first formal database model. After it was defined, informal models
were made to describe hierarchical databases (the hierarchical model) and network databases
(the network model). Hierarchical and network databases existed before relational databases,
LOVELY PROFESSIONAL UNIVERSITY 13