What is Database
A database is a collection of related data and data is a collection of facts and figures that can be processed to produce information.
Mostly data represents recordable facts. Data aids in producing information, which is based on facts. For example, if we have data about marks obtained by all students, we can then conclude about toppers and average marks.
A database management system stores data in such a way that it becomes easier to retrieve, manipulate, and produce information.
- Store, retrieve, and update data.
- Provide integrity services to enforce database.
- Provide a user-accessible catalog of data descriptions.
- Control concurrent processing.
- Support logical transactions.
- Recover form failure.
- Interface with communication control programs.
- Provide utility services.
Advantages of DBMS
- Reduced data redundancy
- Reduced updating errors and increased consistency
- Greater data integrity and independence from applications programs
- Improved data access to users through use of host and query languages
- Improved data security
- Reduced data entry, storage, and retrieval costs
- Facilitated development of new applications program
Disadvantages of DBMS
- Database systems are complex, difficult, and time-consuming to design
- Substantial hardware and software start-up costs
- Damage to database affects virtually all applications programs
- Extensive conversion costs in moving form a file-based system to a database system
- Initial training required for all programmers and users
Characteristics of Database Management System
1. Real-world entity
A modern DBMS is more realistic and uses real-world entities to design its architecture. It uses the behavior and attributes too.
For example, a school database may use students as an entity and their age as an attribute.
2. Relation-based tables
DBMS allows entities and relations among them to form tables. A user can understand the architecture of a database just by looking at the table names.
Isolation of data and application: A database system is entirely different than its data. A database is an active entity, whereas data is said to be passive, on which the database works and organizes.
DBMS also stores metadata, which is data about data, to ease its own process.
3. Less redundancy
DBMS follows the rules of normalization, which splits a relation when any of its attributes is having redundancy in values.
Normalization is a mathematically rich and scientific process that reduces data redundancy.
Consistency is a state where every relation in a database remains consistent. There exist methods and techniques, which can detect attempt of leaving database in inconsistent state.
A DBMS can provide greater consistency as compared to earlier forms of data storing applications like file-processing systems.
5. Query Language
DBMS is equipped with query language, which makes it more efficient to retrieve and manipulate data. A user can apply as many and as different filtering options as required to retrieve a set of data.
Traditionally it was not possible where file-processing system was used
6. ACID Properties
DBMS follows the concepts of Atomicity, Consistency, Isolation, and Durability (normally shortened as ACID). These concepts are applied on transactions, which manipulate data in a database.
ACID properties help the database stay healthy in multi-transactional environments and in case of failure.
7. Multiuser and Concurrent Access
DBMS supports multi-user environment and allows them to access and manipulate data in parallel.
Though there are restrictions on transactions when users attempt to handle the same data item, but users are always unaware of them.
8. Multiple views
DBMS offers multiple views for different users. A user who is in the Sales department will have a different view of database than a person working in the Production department.
This feature enables the users to have a concentrate view of the database according to their requirements.
Features like multiple views offer security to some extent where users are unable to access data of other users and departments.
DBMS offers methods to impose constraints while entering data into the database and retrieving the same at a later stage. DBMS offers many different levels of security features, which enables multiple users to have different views with different features.