Introduction to DBMS
The developer builds an application or software, but Software needs Data to perform day to day operations and analytics over-processed data and data is something which is driving the business nowadays to excel in their respective areas of operations. So as a developer, we need a DataBase Management System (DBMS) where we can create, update, delete, administer and moreover to do an analysis of the data. A Database Management System (DBMS) is a software package designed to define, manipulate, retrieve and manage data in a database. let us look at this introduction to DBMS article in detail.
Components of DBMS
After we learned about the introduction to DBMS we are going to learn about the main components of the systems are as follows:
1. Hardware: All the physical devices that are being used in DBMS operations are called the hardware. For example, if we run MySQL server, then the hard disk, RAM, the keyboard comes under Hardware component
2. Software: This is one of the most important components as it contains all the programs that will drive the DBMS functionality. The job of this software is to understand the Database access language and interpret into actual database commands to execute them on the DB.
3. Data: The DBMS system collects, store, process and reads the data. This is yet another important component of the DBMS system. The DBMS contains the actual, operation or the metadata.
4. Procedures: Procedure is the general instructions and rules that help in using a DBMS.
5. Database Access Language: It is a query language which is used to write commands to perform CRUD operations like create, read, update and delete.
Characteristics of DBMS
As we have already learned about the Introduction of DBMS. Now, we are going to discuss the Characteristics
- DBMS supports ACID properties.
- It stores any kind of Data.
- Automatically backup the data and supports recovery.
- It maintains Data Integrity.
- It controls Data Redundancy to a great extent.
- It enables the sharing of data with much ease.
- It supports Data Security and prevents restriction of unauthorized access.
- It also represents the complex relationship between Data and views.
Applications of DBMS
After we learned about the introduction to DBMS we are going to learn about the main applications:
1. Banking System: DBMS stores customers’ usual and vital information, stores the transactions, user’s activities, loans, accounts, etc.
2. Telecom: It keeps a track of the calls that are made, network usage, details of the customer, bills, and balances, etc.
3. Airlines: It stores flight information, customer details, flight timings, reservation and booking information, etc.
4. Online Shopping: It stores product information, user’s information, credit information, etc.
5. Educational and Corporate: It stores students and employee information, client’s details, training and course information, student/employee performance, etc.
6. Manufacturing and Industry: It is used to keep a track of all units that are manufactured, products that go out and the ingredients that come in, etc.
Advantage and Disadvantage of DBMS
we are going to explore the advantages and disadvantages of DBMS:
Advantages of DBMS
Let’s see some advantages:
1. Data Redundancy
Unlike traditional file-system storage, Data Redundancy in DBMS is very less or not present. Data Redundancy occurs when the same data are stored unnecessarily at different places. Data Redundancy is reduced or eliminated in DBMS because all data are stored at a centralized location rather than being created by individual users and for each application. For e.g. Application A and Application B have the same user MARVEL, and we need to store personal information about the user such as Name, age, address, Date of Birth, etc. Not to mention, this user has also access to the different application, so in the traditional file-based system, there is a need to maintain separate file system for each of the application to store user’s information while in DBMS approach, there could be just one centralized location where information can be down streamed to the different application as and when needed.
2. Data Inconsistency
In traditional file system storage, the changes made by one user in one application doesn’t update the changes in other application, given both have the same set of details. While this is not the case with DBMS systems as there is a single repository of data that is defined once and is accessed by many users, and data are consistent.
3. Data Sharing
Data Sharing is the primary feature of Database management systems. DBMS system allows users and applications to share Data with multiple applications and users. Data are stored in one or more servers in the network and there is some software locking mechanism that prevents the same set of data from being changed by two people at the same time. While the file system doesn’t have this capability.
4. Data Searching
Searching and retrieving of data is very easy in DBMS systems. The need to write separate programs for each of the search is eliminated as in the case with a traditional file-based approach. In DBMS, we can write small queries to search for multiple information at a time from the data from DB servers.
5. Data Security
DBMS systems provide a strong framework to protect data privacy and security. DBMS ensures that only authorized users have access to data and there is a mechanism to define access privileges.
6. Data Concurrency
In DBMS, Data are stored in one or more servers in the network and that there is some software locking mechanism that prevents the same set of data from being changed by two people at the same time.
7. Data Integration
Data integration is a process of combining the data residing at different locations and present the user with a unified view of data. DBMS systems allow Data Integration with much feasibility.
8. Data Access
While in a traditional file-based approach, it might take hours to look for very specific information that might be needed in the context of some business emergency, while DBMS reduces this time to a few seconds. We can write small queries which will search the Database for you and it will retrieve the information in the fastest way possible due to its inbuilt searching operations.
9. Decision making
Improved Data Sharing and better-managed data allow the business to make quality business decisions which will promote the growth of the organization.
10. Data Backup and Recovery
DBMS provides a strong framework for Data backup, users are not required to back up their data periodically and manually, it is automatically taken care by DBMS. Moreover, in case of a server crash, DBMS restores the Database to its previous condition.
11. Data Migration
There are some data that are accessed very frequently while there are few that aren’t. So, DBMS provides the capability to access the frequently accessed data as quickly as possible.
12. Data Tuning
DBMS allows the user to fine-tune their data i.e. to improve performance.
13. Low Maintenance Cost
Though DBMS systems might be costly at the time of purchase but their maintenance involves a very minimal cost.
14. Data Loss is almost eliminated
With DBMS, one can keep information for thousands of years, provided we don’t see the doomsday. Data security and very low storage cost (as compared to our previous generations) in the current century cut any possibility of Data Loss.
15. Data Atomicity
An atomic transaction is one in which all of the database actions occur or none of them do. It is the duty of DBMS to store a complete transaction in the database. If any transaction is partially completed, then it rolls backs them. For e.g. if we make an online purchase, money is deducted from our account while if the purchase is somehow failed, then no money is deducted or if it gets deducted, it gets returned within few days.
Image Source: https://www.geeksforgeeks.org/acid-properties-in-dbms/
Disadvantages of DBMS
Let’s see some disadvantages:
- Cost of hardware and software
- Technical staff requirement
- Management Complexity
- Frequent upgrade/Management cycles
This has been a guide on Introduction to DBMS. Here we have discussed the main components, characteristics, advantages, and disadvantages of DBMS. You may also look at the following articles to learn more –