How Database Approach Differs from Traditional File System
Concepts?
A database is a collection of interrelated data's stored in a
database server; these data's will be stored in the form of
tables. The primary aim of database is to provide a way to store
and retrieve database information in fast and efficient manner.
There are number of characteristics that differs from
traditional file management system. In file system approach,
each user defines and implements the needed files for a specific
application to run. For example in sales department of an
enterprise, One user will be maintaining the details of how many
sales personnel are there in the sales department and their
grades, these details will be stored and maintained in a
separate file.
Another user will be maintaining the salesperson salary details
working in the concern, the detailed salary report will be
stored and maintained in a separate file. Although both of the
users are interested in the data's of the salespersons they will
be having their details in a separate files and they need
different programs to manipulate their files. This will lead to
wastage of space and redundancy or replication of data's, which
may lead to confusion, sharing of data among various users is
not possible, data inconsistency may occur. These files will not
be having any inter-relationship among the data's stored in
these files. Therefore in traditional file processing every user
will be defining their own constraints and implement the files
needed for the applications.
In database approach, a single repository of data is maintained
that is defined once and then accessed by many users. The
fundamental characteristic of database approach is that the
database system not only contains data's but it contains
complete definition or description of the database structure and
constraints. These definitions are stored in a system catalog,
which contains the information about the structure and
definitions of the database. The information stored in the
catalog is called the metadata, it describes the primary
database. Hence this approach will work on any type of database
for example, insurance database, Airlines, banking database,
Finance details, and Enterprise information database. But in
traditional file processing system the application is developed
for a specific purpose and they will access specific database
only.
The other main characteristic of the database is that it will
allow multiple users to access the database at the same time and
sharing of data is possible. The database must include
concurrency control software to ensure that several users trying
to update the same data at the same time, it should maintain in
a controlled manner. In file system approach many programmers
will be creating files over a long period and various files have
different format, in various application languages.
Therefore there is possibility of information getting
duplicated, this redundancy is storing same data multiple times
leads to higher costs and wastage of space. This may result in
data inconsistency in the application, this is because update is
done to some of the files only and not all the files. Moreover
in database approach multiple views can be created. View is a
tailored representation of information contained in one or more
tables. View is also called as "Virtual table" because view does
not contain physically stored records and will not occupy any
space.
A multi-user database whose users have variety of applications
must provide facilities for defining multiple views. In
traditional file system, if any changes are made to the
structure of the files if will affect all the programs, so
changes to the structure of a file may require changing of all
programs that access the file. But in case of database approach
the structure of the database is stored separately in the system
catalog from the access of the application programs. This
property is known as program-data independence.
Database can be used to provide persistent storage for program
objects and data structures that resulted in object oriented
database approach. Traditional systems suffered from impedance
mismatch problem and difficulty in accessing the data, which is
avoided in object oriented database system. Database can be used
to represent complex relationships among data's as well as to
retrieve and update related data easily and efficiently.
It is possible to define and enforce integrity constraints for
the data's stored in the database. The database also provides
facilities for recovering hardware and software failures. The
backup and recovery subsystem is responsible for recovery. It
reduces the application development time considerably when
compared to the file system approach and availability of
up-to-date information of all the users. It also provides
security to the data's stored in the database system.