Database Management Systems: Concepts and Users

Database Definition and the Database

The database aims at resolving the problems of storage and data management. Databases also have file management systems. A file management system presents different problems of management and storage of information, such as:

  • Redundancy and inconsistency of data
  • Difficulty in searching
  • Data isolation within programs
  • Security problems

A database is a system formed by a collection of files that controls the storage of redundant data. Data is independent of programs and can be viewed in different ways. A DBMS must meet these requirements:

  • Multiple users can access the information
  • Control exists on the data that each user can access, not allowing the storage of redundant data
  • Various access methods can be used
  • Mechanisms exist for data retrieval

Basic Concepts

  • Entity: A real or abstract object that has several distinguishing characteristics that differentiate it from other objects and is stored in the database.
  • Attributes: A set of differentiating features of an entity.
  • Record: Structure used in the database to store the information about an entity.
  • Occurrence: Information that is stored in a record of each entity.
  • Field: Structure used in the database to store information on an attribute.
  • Superkey: The attribute or set of attributes that identifies an occurrence of an entity.
  • Candidate key: A superkey that has no subset of attributes that is itself a superkey.
  • Primary key: The key selected by the database designer from all the candidates to identify the occurrences of an entity.
  • Alternative key: A candidate key that is not the primary key.
  • Foreign key: An attribute that is a primary key of another entity.
  • Relationship:
    • 1:1 (One-to-one): Each occurrence of an entity belongs to no more than one occurrence of another.
    • 1:N (One-to-many): Each occurrence of the first entity corresponds to more than one occurrence of the second.
    • N:M (Many-to-many): Each occurrence of the first entity may correspond to several of the second and vice versa.

Data Abstraction

To make the data manageable, the system should be removed efficiently. This requirement means that the design of the database carries the construction of a complex data structure for the representation of the information in the database. Many users of these systems are not computer experts, so the complexity of such a structure is hidden through various levels of abstraction to simplify the use of the system.

  • Physical Layer: This is the lowest level of abstraction, showing how the data is actually stored.
  • Conceptual Layer: This is a higher level of abstraction, showing what data is actually stored in the database and the relationships between them.
  • View Layer: This is the highest abstraction level, showing only a portion of the full database.

Types of Databases (Relational Model)

There are different types of databases. The three most widely accepted database models are the relational, network, and hierarchical models. The relational model is the most used, while the network and hierarchical models were the first models used and are still used by a large number of older databases.

In the relational model, data and relationships are represented by different tables. Each table stores information of an entity from the database, so that each row of the table is a record of the entity and each column is a field of it. The following requirements must be met:

  • All records are of the same type.
  • Each column is identified by a name.
  • A table cannot have two columns with the same name.
  • A table cannot have duplicate records.
  • Each table has a primary key.

The relational model is one of the most widely used in the design and management of databases.

Database Users

A DBMS is accessed by a large number of users, each of whom may have different requirements of the database or may have different obligations to it. Users of a database are:

  • Database Administrator: The person responsible for carrying out the tasks for centralized data control and the programs that access this data in the database, such as defining the schema of the database, defining the structure, and modifying the schema.
  • Application Programmer: The user responsible for writing application programs using the database. These programs are designed to support end-users.
  • End User: The user accessing the database using a query language (DML) or through an application program.

Database Management Systems

Database management systems are the set of software for creating, managing, controlling, and handling information in a database. The purpose of a DBMS is to simplify and facilitate access to data. The high-level view can help.

A DBMS must allow:

  • Defining the schema of the database
  • Accessing information using a data manipulation language (DML)
  • DML statements are included in programs written in high-level programming languages
  • DML is used in the development of programs that use DML
  • Only used to access the information in a conversational manner
  • Managing files