relational DBMS


Also found in: Dictionary, Thesaurus.
Related to relational DBMS: database management system, Relational model

relational DBMS

This article is provided by FOLDOC - Free Online Dictionary of Computing (foldoc.org)

DBMS

(DataBase Management System) Software that controls the organization, storage, retrieval, security and integrity of data in a database. It accepts requests from the application and instructs the operating system to transfer the appropriate data. The major DBMS vendors are Oracle, IBM, Microsoft and Sybase (see Oracle Database, DB2, SQL Server and ASE). MySQL and SQLite are very popular open source products (see MySQL and SQLite).

A DBMS interfaces with applications written in traditional programming languages (C/C++, Java, etc.), and it may include its own programming language.

Major Features of a DBMS



Data Independence Flexibility
As an organization's data requirements change, a DBMS lets information systems be updated more easily. Applications access the DBMS by field name (column name); for example, a coded equivalent of "give me customer name and balance due" would be sent to the DBMS. Without a DBMS, programmers must reserve space within their programs for the full record structure in the file. Any change in structure such as adding a new field requires changing all the application programs that access any of the data. This flexibility is a major reason why a DBMS is used for storing data.

Indexes and Interactive Query
Another important feature of a DBMS is its indexing capability. One or more fields within the record (columns within the row) are defined as key fields, and the DBMS creates and maintains the indexes for those fields. The application requests a record from a database, and the index enables immediate access to the record. Indexes also let users interactively interrogate the database using a query language. See query language and report writer.

Data Security
The DBMS can prevent unauthorized users from viewing or updating the database. Using passwords, users are allowed access to the entire database or a subset of it known as a "subschema." For example, in an employee database, some users may be able to view salaries while others may view only work history and medical data. See database security.

Data Integrity
The DBMS can ensure that no more than one user can update the same record at the same time. It can keep duplicate records out of the database; for example, no two customers with the same customer number can be entered.

Interactive Data Entry and Updating
A DBMS typically provides a way to interactively create a database and enter data, allowing users to do their own record keeping. However, interactive operation does not leave an audit trail and does not provide the controls necessary in a large organization. These controls must be written into the applications that enter and update the data.

Database Design


A business information system is made up of subjects (customers, employees, vendors, etc.) and transactions (orders, payments, purchases, etc.). Database design is the process of organizing this data into related record types. A DBMS is able to maintain the linkage between these relationships (customers and orders, vendors and purchases, etc.) and process them as a single entity.

Organizations may use one kind of DBMS for daily transaction processing and then move the detail to another DBMS better suited for random inquiries and analysis.

Overall systems design decisions are performed by data administrators and systems analysts. Detailed database design is performed by database administrators. Developing business information systems require an understanding of database design and programming.

Hierarchical, Network & Relational


As mentioned above, information systems are made up of related files, and a key DBMS feature is its ability to manage these relationships.

Hierarchical databases link records like an organization chart. A record type can be owned by only one owner. In the following example, orders are owned by only one customer. Hierarchical structures were widely used with early mainframe systems; however, they are often restrictive in linking real-world structures.

DBMS and OS Interaction
This diagram shows the interaction between the DBMS with other system and application software running in memory.


In network databases, a record type can have multiple owners. In the example below, orders are owned by both customers and products, reflecting their natural relationship in business.

DBMS and OS Interaction
This diagram shows the interaction between the DBMS with other system and application software running in memory.


Relational databases do not link records together physically, but the design of the records must provide a common field, such as account number, to allow for matching. Often, the fields used for matching are indexed in order to speed up the process.

In the following example, customers, orders and products are linked by comparing data fields and/or indexes when information from more than one record type is needed. This method is more flexible for ad hoc inquiries. Many hierarchical and network DBMSs also provide this capability.

DBMS and OS Interaction
This diagram shows the interaction between the DBMS with other system and application software running in memory.




Object Databases


Certain information systems may have complex data structures not easily modeled by traditional data structures. An "object database" can be employed when hierarchical, network and relational structures are too restrictive. Object databases can easily handle many-to-many relationships.

DBMS and OS Interaction
This diagram shows the interaction between the DBMS with other system and application software running in memory.




Intelligent Databases


All DBMSs provide some data validation; for example, they can reject invalid dates or alphabetic data entered into money fields. But most validation is left up to the application programs.

Intelligent databases provide more validation; for example, table lookups can reject bad spelling or coding of items. Common algorithms can also be used such as one that computes sales tax for an order based on zip code.

When validation is left up to each application program, one program could allow an item to be entered while another program rejects it. Data integrity is better served when data validation is done in only one place. Mainframe DBMSs were the first to become intelligent, and all the others followed suit.


DBMS and OS Interaction
This diagram shows the interaction between the DBMS with other system and application software running in memory.

relational database

A database that maintains a set of separate, related files (tables), but combines data elements from the files for queries and reports when required. The concept was developed in 1970 by Edgar Codd, whose objective was to accommodate a user's ad hoc request for selected data. Most every business database management system (DBMS), including Oracle, DB2, SQL Server, MySQL, etc., is a relational DBMS (RDBMS) (see DBMS).

Hierarchical, Network and Object Databases
In non-relational "hierarchical" and "network" databases, records in one file contain embedded pointers to the locations of records in another, such as customers to orders and vendors to purchases. These are fixed links set up ahead of time to speed up daily processing. Another type of non-relational database is the "object database," which stores data consistent with their object model (see object database).

Comparing and Joining
Routine queries to a relational database often require data from more than one file. For example, to obtain the names of customers who purchased a particular product, data must be extracted from both the customer and order files. A relational DBMS has the flexibility to "join" two or more files by comparing key fields such as account number and name and generating a new file from the records that meet the matching criteria (see join).

Indexes Are Used
In practice, a pure relational query can be very slow. In order to speed up the process, indexes are built and maintained on the key fields used for matching. Sometimes, indexes are created "on the fly" when the data are requested.

Relational Terms       Common Term

  Table or Relation      File

  Row or Tuple           Record

  Column or Attribute    Field



Copyright © 1981-2019 by The Computer Language Company Inc. All Rights reserved. THIS DEFINITION IS FOR PERSONAL USE ONLY. All other reproduction is strictly prohibited without permission from the publisher.
References in periodicals archive ?
AceDB is also used as a front-end for the Integrated Genome Database (IGD) (Durbin and Thierry, 1994) which integrates existing heterogeneous genome databases and is implemented on top of a relational DBMS.
The variety of relational DBMS software available today also continues to grow as businesses create new computing applications to meet special needs.
In registering a DBMS to CORBA, a row in a relational DBMS, an object in an OODBMS, a group of objects, or a whole database can be an individual CORBA object.
Thus, a minimum extension of current relational DBMS technology could implement only simple evaluation; if there is no PRA expression for an SQL query for which simple evaluation works, the system could refuse to process such a query (or give a warning to the user).
In contrast, with client/server database management, only the server needs to have the extremely fast hard drives, powerful CPUs and large amount of RAM needed to run a relational DBMS. Client stations can be quite modest, yet perform the application well.
Oracle's integrated family of portable software includes the ORACLE Distributed Relational DBMS, tools for CASE, application development, and office automation, plus application packages for accounting, manufacturing and other vertical applications.
The age of trying to force everything into a relational DBMS is over, and we now have NoSQL, NewSQL, in-memory, and Hadoop-based offerings that are being used to store data.
When fast transaction processing is required, it is hard to beat a relational DBMS for most use cases.
As an example let us consider the SQL query in Relational DBMS:
Most of the tools for creating distributed applications have been sold by the relational DBMS vendors, such as Oracle and Sybase, who have an edge because of their ability to optimize the development software for use with their own data base systems.
Unfortunately, all existing commercial relational DBMS products do not allow a proper specification and an automatic enforcement of these constraints.
One vendor lauds striping data content across storage devices as being a NoSQL improvement, completely ignoring the fact that several relational DBMS vendors employ that tactic as well.

Full browser ?