RDBMS have been the workhorse for data management
operations for over a decade and continue to evolve and mature, providing sophisticated
storage, retrieval, and distribution functions to enterprise-wide data processing and
information management systems.
Compared to the file systems, relational
database management systems provide organizations with the capability to easily integrate
and leverage the massive amounts of operational data into meaningful information systems.
The evolution of high-powered database engines such as Oracle, SAP, SQL Server, Bann,
Informix, Sybase etc has fostered the development of advanced "enabling"
technologies including client / server, data warehousing, and online analytical
processing, all of which comprise the core of today's state-of-the-art information
management systems.
The Relational Database Model
Database is an integrated collection of related data. Given a specific
data item, the structure of a database facilitates the access to data related to it.
Relational database is a type of database based in the relational model; non-relational
databases commonly use a hierarchical, network, or object-oriented model as their basis.
Finally,a relational database management system is the software
that manages a relational database. These systems come in several varieties, ranging from
single-user desktop systems to full-featured, global, enterprise-wide systems.
Hierarchical and Network Models
Most of the database management systems used by commercial applications
today are based on one of three basic models: the hierarchical model, the network model,
or the relational model.
The first commercially available database
management systems were of the CODASYL type, and many of them are still in use with
mainframe-based, COBOL applications. Both network and hierarchical databases are quite
complex in that they rely on the use of permanent internal pointers to relate records to
each other. For example, in an accounts payable application, a vendor record might contain
a physical pointer in its record structure that points to purchase order records. Each
purchase order record in turn contains pointers to purchase order line item records.
The process of inserting, updating, and deleting records using these
types of databases requires synchronization of the pointers, a task that must be performed
by the application. As you might imagine, this pointer maintenance requires a significant
amount of application code (usually written in COBOL) that at times can be quite
cumbersome.
Elements of the Relational Model
Relational databases rely on the actual attribute values as opposed to
internal pointers to link records. Instead of using an internal pointer from the vendor
record to purchase order records, you would link the purchase order record to the vendor
record using a common attribute from each record, such as the vendor identification
number.
There are three basic components of the relational model: