The Database Approach
In order to overcome the limits of a file system, a new approach was needed. Hence a database approach emerged. A database is a persistent collection of logically related data. The initial attempts were to give a centralised collection of data. A database has a self-describing nature. It has not only the data but also the full definition of the database structure and constraints, which are stored in a system catalog. A DBMS manages this data. It permits data sharing and integration of data of an organisation in a single database. DBMS controls access to this data and therefore needs to give features for data manipulation, database creation such as data value modification, data integrity , data retrieval and security etc. Let us explain some of the benefits of the database approac
The database approach has many benefits. Let us talk about these in more detail.
Reduction of Redundancies
In a file processing system, every user group keeps its own files resulting in a considerable amount of redundancy of the stored data. These results in wastage of storage space but more importantly might result in data inconsistencies. Also, the similar data has to be updated more than once resulting in duplication of effort. The files that represent the similar data may become inconsistent as some may be updated whereas others may not be.
In database approach data can be stored at a one place or with controlled redundancy under DBMS, which saves space and does not allow inconsistency.
A DBMS permits the sharing of database under its control by any number of users or application programs. A database belongs to the whole organisation and is shared by all authorised users (may not be the complete data, why?). This scheme can be best described with the help of a logical diagram. New applications can be built and added to the present system and data not at present stored can be stored.
In the file-based system, the explanations of data and logic for accessing the data are built into each application program making the program more dependent on data. A change in the structure of data may need alterations to programs. Database Management systems divides data descriptions from data. Therefore, it is not affected by changes. This is known as Data Independence, where details of data are not shown. DBMS gives an abstract view and hides details. For instance, logically we can say that the interface or window to data given by DBMS to a user may still be the similar although the internal structure of the data may be changed.
Data Integrity refers to consistency and validity of data. Data Integrity means that the data should be consistent and accurate. This is done by giving some constraints or checks. These are consistency rules that the database is not allowing to violate. Constraints may apply to data items within a record or relationships among records. For instance, the age of an employee can be between 18 years and 70 years only. While entering the data for the age of an employee, the database should check this. Therfore, if Grades of any student are entered, the data can be erroneously entered as Grade C for Grade A. In this situation DBMS will not be able to give any check as both A and C are of the similar data type and are valid values.
Efficient Data Access
DBMS utilises techniques to retrieve and store the data efficiently at least for unforeseen queries. A difficult DBMS should be able to gives services to end users, where they can efficiently find the data almost instantly.
Multiple User Interfaces
Since a lot of users having varying levels of technical knowledge use a database, a DBMS should be able to give a variety of interfaces. This contains -
A. Programming language interfaces for application programmers,
B. Query language for casual users,
C. Codes and forms for parametric users,
D. menu driven interfaces, and
E. Natural language interfaces for standalone users, these interfaces do still not exist in standard form with commercial database.