Characteristics of The Database Approach
Characteristics of The Database Approach
In traditional file processing, each user defines and implements the files correctly.
needed for a specific application as part of programming the application. In
the database approach, a single repository of data is maintained that is
Actors on the Scene
defined once and then is accessed by various users. Characteristics are
1. Self-Describing Nature of a Database System 1. Database Administrators - In a database environment, the primary
2. Insulation between Programs and Data, and Data Abstraction resource is the database itself and the secondary resource is the DBMS and
3. Support of Multiple Views of the Data related software. Administering these resources is the responsibility of the
4. Sharing of Data and Multiuser Transaction Processing database administrator (DBA).
1. Self – Describing nature of a database system 2. Database Designers - Database designers are responsible for identifying
Database system contains not only the database itself but also a complete the data to be stored in the database and for choosing appropriate
definition or description of the database structure and constraints. This structures to represent and store this data
definition is stored in the system catalog, which contains information such 3. End Users - End users are the people whose jobs require access to the
as the structure of each file, the type and storage format of each data item, database for querying, updating, and generating reports; the database
and various constraints on the data. The information stored in the catalog is primarily exists for their use
called meta-data, and it describes the structure of the primary database. 4. System Analysts and Application Programmers (Software Engineers)-
The catalog is used by the DBMS software and also by database users determine the requirements of end users, especially naive and parametric
who need information about the database structure. A general purpose end users. , Sophisticated end users and Stand-alone
DBMS software package is not written for a specific database application,
and hence it must refer to the catalog to know the structure of the files in a Workers behind the Scene
specific database, such as the type and format of data it will access. The In addition to those who design, use, and administer a database, others are
DBMS software must work equally well with any number of database associated with the design, development, and operation of the DBMS
application. software and system environment. These persons are typically not
In traditional file processing, data definition is typically part of the interested in the database itself. We call them the "workers behind the
application programs themselves. Hence, these programs are constrained scene," and they include the following categories.
to work with only one specific database, whose structure is declared in the • DBMS system designers and implementers are persons who design and
application programs. implement the DBMS modules and interfaces as a software package. A
DBMS is a complex software system that consists of many components or
modules, including modules for implementing the catalog, query language,
2. Insulation between Programs and Data, and Data Abstraction
interface processors, data access, concurrency control, recovery, and
In traditional file processing, the structure of data files is embedded in the security. The DBMS must interface with other system software, such as the
access programs, so any changes to the structure of a file may require operating system and compilers for various programming languages.
changing all programs that access this file. By contrast, DBMS access • Tool developers include persons who design and implement tools—the
programs do not require such changes in most cases. The structure of data software packages that facilitate database system design and use, and help
files is stored in the DBMS catalog separately from the access programs. We improve performance. Tools are optional packages that are often
call this property program-data independence. purchased separately. They include packages for database design,
performance monitoring, natural language or graphical interfaces,
prototyping, simulation, and test data generation. In many cases,
In object-oriented and object-relational databases (see Part III), users can
independent software vendors develop and market these tools.
define operations on data as part of the database definitions. An operation
• Operators and maintenance personnel are the system administration
(also called a function) is specified in two parts. The interface (or signature)
of an operation includes the operation name and the data types of its personnel who are responsible for the actual running and maintenance of
arguments (or parameters). The implementation (or method) of the operation the hardware and software environment for the database system.
is specified separately and can be changed without affecting the interface.
User application programs can operate on the data by invoking these Advantages of Using a DBMS
operations through their names and arguments, regardless of how the 1. Controlling Redundancy
operations are implemented. This may be termed program-operation 2. Restricting Unauthorized Access
independence. 3. Providing Persistent Storage for Program Objects and Data
The characteristic that allows program-data independence and program- Structures
operation independence is called data abstraction. A DBMS provides users 4. Permitting Inferencing and Actions Using Rules
with a conceptual representation of data that does not include many of the 5. Providing Multiple User Interfaces
details of how the data is stored or how the operations are implemented. 6. Representing Complex Relationships Among Data
7. Enforcing Integrity Constraints
8. Providing Backup and Recovery
3. Support of Multiple Views of the Data
A database typically has many users, each of whom may require a different
perspective or view of the database. A view may be a subset of the
database or it may contain virtual data that is derived from the database
files but is not explicitly stored. Some users may not need to be aware of
whether the data they refer to is stored or derived. A multiuser DBMS
whose users have a variety of applications must provide facilities for
defining multiple views.