A Database management system (DBMS) is software designed to manage and maintain large quantities of data. The DBMS serves as the mediator between the user and the database. The database structure itself is stored as a collection of files. The data in these files can only be accessed through the DBMS. A single, integrated view of the data in the database is shown to the user by the DBMS. All application requests received by the DBMS are translated into complex operations required to fulfill these requests. The database’s internal complexity is hidden by the DBMS from the application programs and users. The application program might be written by a computer programmer using a programming language, such as Visual Basic, NET, Java, or C#, or it might be created through a DBMS utility program.
Components of a Database Management System
A data definition language (DDL) allows users to define the database. The DDL allows users to choose specific data types and structures and implement constraints on the data to be stored in the database. The Database management system (DBMS) also allows users to insert, update, delete, and retrieve data from the database, usually through a Data Manipulation Language (DML). Structured Query Language (SQL) is the most common query language used. A Database management system (DBMS) has five main components – Hardware, software, data, procedures, and people.
- Hardware: Hardware can range from one personal computer to a network of computers. The hardware will depend on the organization’s requirements and the type of DBMS used. Some DBMS’s will only run on particular hardware or operating system while others will run on many different varieties of hardware and operating systems.
- Software: Software includes the DBMS software itself, application programs, and the operating system, including network software if the DBMS is being used over a network.
- Data: Word data covers the collection of information stored in the database. Determining which data to enter into the database and how to organize that data is a vital part of the database designer’s job because data is the raw material from which information is created.
- Procedures: Procedures refer to the instructions and rules that control the design and use of the database.
- People: People refers to the users of the DBMS. Five types of users can be identified in a database system: system administrators, database administrators, database designers, system analysts and programmers, and end-users.
Advantages of a DBMS
Database management systems (DBMS) are very important for businesses as they provide a highly efficient method for storing and managing different types of data e.g.(employee records, customer records, payroll, project management, and inventory). By using a DBMS sales, product, customer, financial and employee information could be managed more efficiently. This would prevent information from being lost and extracting data will be a lot less time-consuming. Data can be categorized and structured to meet the needs of the business.
There are many advantages to a DBMS.
- Data storage management: The complex structures required for data storage are created and managed by the DBMS. This saves the user from having to define and program the physical data characteristics.
- Efficient data access: A DBMS uses a number of practice methods to store and retrieve data quickly.
- Data integrity and security: A DBMS can carry out integrity constraints on data if data is always accessed through the DBMS. For example, before entering an employee’s salary information, the DBMS can check that the department’s budget is not exceeded.
- Multiuser access control: The DBMS uses sophisticated algorithms that allow multiple users to access the database simultaneously without compromising its integrity.
- Backup and recovery management: Backup and recovery is provided by the DBMS. Current DBMS systems provide special services that allow the Database Administrator (DBA) to execute routine and special backup and restore procedures. Recovery management deals with the recovery of the database after a failure, such as a power failure. This is essential to retaining the database’s integrity.
- Data independence: The DBMS separates data descriptions from the applications, making the applications immune to any changes made to the data. In file-based systems data descriptions are built into the applications meaning applications will be changed if data descriptions are changed.
Disadvantages of a DBMS
There are many advantages to the DBMS as mentioned but there are also some instances when a DBMS’s performance may not be suitable for some specialized applications. Examples include applications with only a few well-defined critical operations for which custom code must be written or applications with inflexible real-time constraints. Another example is that an application may need to manipulate the data in a way that is not supported by the query language used. A DBMS may not be used if data manipulation requirements or specialized performance are important to an application especially if the advantages mentioned above are not required.
There are also some significant disadvantages of DBMS’s that need to be considered:
- Size: The complexity of functionality of a DBMS makes it a very large item of software. It requires large amounts of memory to run efficiently.
- Increased costs: A DBMS requires advanced hardware and software and highly skilled personnel which can be easily overlooked when setting up.
- Frequent upgrade/replacement costs: Vendors frequently upgrade their products by adding new functionality and features. This results in additional costs to the business to upgrade as new hardware may be required and new training may need to be carried out for database users to enable them to be able to use the new features.
- Higher impact of a failure: The failure of certain components could bring operations to halt as the availability of the DBMS is relied on by all users and applications.