What is DBMS? it's Advantages and disadvantages.
Intro-
Database Management System (DBMS) is a collection of programs that allows a user to create and maintain the database. DBMS facilities to defining, constructing, manipulating and sharing, protecting the database.
Here, defining means, it specifies the data types, constraints, structures etc. Constructing means to store the data in storage medium. Manipulating means how to change the data, update, add, and retrieve the data, inform the table. Sharing means, this term involve data base to allow multiple user and program to access the database.
Protection involves, both Hardware and Software protection security provide database security and protection against unauthorized and malicious access. DBMS is a system software that is design to manage and organize data in a structured manner. It allow users to create modify and query in database as well as manage the security and access control for that database.
Characteristics of Database System :
The main characteristics of a database approach, which distinguish it form a file-processing approach are:
1. Self-Describing Nature of a Database System-
A database contains not only the data, but also a complete definition of the data structure, data types and data constraints. The information stored in the data Dictionary is accessible to the DBMS software. This features enables the DBMS software to be adapted for any application. the same DBMS will work for a college, a bank or a factory.
2. Data Abstraction -
In a traditional file processing system, the structure of the data files is hard coded in the application programs; thus any changes in structure would need the related application programs to be modified accordingly. whereas in a database System, the application programs are insulated form the data stored in the database.
3. Support for Multiple View of the Data-
Depending on different needs and different levels authorizations, different users would be provided different perspectives of the same data, called views. A View refers to a subset of the stored data or a set of virtual data i.e. data derived from the stored data.
4. Multi-User Access and Concurrency Control-
A Multi-User DBMS allows multiple users to access the same database concurrently. This is achieved by including Concurrency Control Software in the DBMS, to ensure that database remains consistent despite access by multiple users concurrently.
5. Effective System Protection Through Grant of Access Rights-
Access rights are granted to the users, to the extent required for there roles in the organization. These rights are stored in the data dictionary itself. When a query is to be processed, the DBMS will the first ensure that the user submitting the query has sufficient rights for the processing of that query: only then the query is processed.
6. Support for Efficient Recovery -
When a system is restarted after a failure, log based recovery recovers the database efficiently.
A database contains not only the data, but also a complete definition of the data structure, data types and data constraints. The information stored in the data Dictionary is accessible to the DBMS software. This features enables the DBMS software to be adapted for any application. the same DBMS will work for a college, a bank or a factory.
2. Data Abstraction -
In a traditional file processing system, the structure of the data files is hard coded in the application programs; thus any changes in structure would need the related application programs to be modified accordingly. whereas in a database System, the application programs are insulated form the data stored in the database.
3. Support for Multiple View of the Data-
Depending on different needs and different levels authorizations, different users would be provided different perspectives of the same data, called views. A View refers to a subset of the stored data or a set of virtual data i.e. data derived from the stored data.
4. Multi-User Access and Concurrency Control-
A Multi-User DBMS allows multiple users to access the same database concurrently. This is achieved by including Concurrency Control Software in the DBMS, to ensure that database remains consistent despite access by multiple users concurrently.
5. Effective System Protection Through Grant of Access Rights-
Access rights are granted to the users, to the extent required for there roles in the organization. These rights are stored in the data dictionary itself. When a query is to be processed, the DBMS will the first ensure that the user submitting the query has sufficient rights for the processing of that query: only then the query is processed.
6. Support for Efficient Recovery -
When a system is restarted after a failure, log based recovery recovers the database efficiently.
Advantages of DBMS-
One of the main advantages of using a database management system is that the organization can exert via the 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 DBA 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.
Disadvantages of DBMS-
The disadvantage of the DBMS system is overhead cost. The processing overhead introduced by
the DBMS to implement security, integrity, and sharing of the data causes a degradation of the
response and throughput times.
An additional cost is that of migration from a traditionally
separate application environment to an integrated one.
Even though centralization reduces duplication, the lack of duplication requires that the database
be adequately backup so that in the case of failure the data can be recovered.
- Cost of Hardware and Software: It requires a high speed of data processor and large memory size to run DBMS Software.
- Size: It occupies the large space of disks and large memory to run them efficiently.
- Complexity: Database system creates additional complexity and requirements.
- Higher impact of failure: Failure is highly impacted the database because in most of the organization, all the data stored in a single database and if the database is damage due to electric failure or database corruption when the data may be lost forever.
Conclusion-
These were some of the point discussed in the post- What is DBMS?, Advantages and Disadvantages DBMS, and its Characteristics.
There is more coming with the next post keep reading...
.
2 Comments
hii
ReplyDeletehello
Delete