One of the main advantages of using a database management system is that the organization can exert via the Database Administrator (DBA), centralized management and control over the data. The database administrator is the focus of the centralized control. If any application requiring a change in the structure of a data record, the Database Administrator makes the necessary modifications, which do not affect other applications or users of the record in question.
The following are the major advantages of using a Database Management System (DBMS):
1. Reduction of Redundancies
Centralized control of data by the DBA avoids unnecessary duplication of data and effectively reduces the total amount of data storage required. It also eliminates the extra processing necessary to trace the required data in a large mass of data. Another advantage of avoiding duplication is the elimination of the inconsistencies that tend to be present in redundant data files.
2. Data Independence and Efficient Access
Database application programs are independent of the details of auto representation and storage. In addition a DBMS provides efficient storage and retrieval mechanisms, including support for very large files, index structures and query optimization.
3. Data Integrity
Centralized control can also ensure that adequate checks are incorporated in the DBMS to provide data integrity, which means that the data contained in the database is both accurate and consistent. Therefore, data values being entered for storage could be checked to ensure that they fall within a specified range and are of the correct format. For example, the value for the age of an employee may be in the range of 16 and 75. Also it should be ensured that if there is a reference to certain object, that object must exist. In the case of an automatic teller machine, for example a user is not allowed to transfer funds from a nonexistent savings account to a checking account.
4. Data Security
Confidential data must not be accessed by unauthorized persons. Different levels of security could be implemented for various types of data and operations.
5. Reduced Application Development Time
Since the DBMS provides several important functions required by applications, such as concurrency control and crash recovery, high level query facilities, etc., only application-specific code needs to be written.
6. Conflict Resolution
Since the database is under the control of the DBA, he should resolve the conflicting requirements of various users and applications.
The DBA chooses the best file structure and access method to get optimal performance for the response-critical applications, while permitting less critical applications to continue to use the database, though with a relatively slower response.
7. Data Administration
By providing common base for a large collection of data that is shared by several users, a DBMS facilitates maintenance and data administration tasks. A good DBA can effectively ensure the fine-tuning, the data representation, periodic backups etc.
8. Concurrent Access and Crash Recovery
A DBMS supports the notion of a transaction and executes the actions of transactions in an interleaved fashion to obtain good performance, but schedules them in such a way as to ensure that conflicting operations are not permitted to proceed concurrently. Further, the DBMS maintains a continuous log of the changes to the data, and if there is a system crash, it can restore the database to a transaction- consistent state. That is, the actions of incomplete transactions are undone. Thus, if each complete transaction, executing alone, maintains the consistent of criteria, then the database state after recovery from a crash is consistent.