Question :: Explain the Advantages of DBMS over File Processing System.
Answer ::
This typical file-processing system is supported by a conventional operating
system. The system stores permanent records in various files, and it needs
different application programs to extract records from, and add records to, the
appropriate files. Before database management systems (DBMSs) came along,
organizations usually stored information in such systems.
Keeping organizational information in a file-processing system has a number of
major disadvantages:
1) Data redundancy and inconsistency. Since different programmers create
the files and application programs over a long period, the various files are
likely to have different formats and the programs may be written in several
programming languages. Moreover, the same information may be duplicated
in several places (files). For example, the address and telephone number of a
particular customer may appear in a file that consists of savings-account
records and in a file that consists of checking-account records. This
redundancy leads to higher storage and access cost. In addition, it may lead
to data inconsistency; that is, the various copies of the same data may no
longer agree. For example, a changed customer address may be reflected in
savings-account records but not elsewhere in the system.
2) Difficulty in accessing data : Conventional file-processing environments do
not allow Needed data to be retrieved in a convenient and efficient manner.
More Responsive data-retrieval systems are required for general use.This
problem can be easily accommodate by Databast management system.
3) Data isolation :: Because data are scattered in various files, and files may
be in different formats, writing new application programs to retrieve the
appropriate data is difficult.
4) Integrity problems. The data values stored in the database must satisfy
certain types of consistency constraints. For example, the balance of a
bank account may never fall below a prescribed amount (say, $25).
Developers enforce these constraints in the system by adding appropriate
code in the various application programs. However, when new constraints are
added, it is difficult to change the programs to enforce them. The problem is
harder when constraints involve several data items from different files.
5) Atomicity problems. A computer system, like any other mechanical or
electrical device, is subject to failure. In many applications, it is crucial that,
if a failure occurs, the data be restored to the consistent state that existed
prior to the failure. Consider a program to transfer $50 from account A to
account B.
If a system failure occurs during the execution of the program, it is
possible that the $50 was removed from account A but was not credited to
account B, resulting in an inconsistent database state. This inconsistent state
must be removed. The fund transfer must be atomic that is if failure occurs
whatever updates performed must be reversible. It is difficult to ensure
atomicity in a conventional file-processing system.
6) Concurrent-access anomalies :: For the sake of overall performance of the
system and faster response, many systems allow multiple users to update
the data simultaneously. In such an environment, interaction of concurrent
updates may result in inconsistent data. Consider bank account A, containing
$500. If two customers withdraw funds (say $50 and $100 respectively) from
account A at about the same time, the result of the concurrent executions
may leave the account in an incorrect (or inconsistent) state.
To guard against this possibility, the system must maintain some form
of supervision. But supervision is difficult to provide because data may be
accessed by many different application programs that have not been
coordinated.
DBMS provides locking mechanism to guard such a anomalies.
7) Security Problem:: Not every user of the database system should be able
to access all the data. Based on user’s role or privilege users are restricted to
access all data.