Database Management System

What is Database Management System (DBMS) ?

Meaning of Database Management System

Data is one of the most important business assets. It is only useful when it is suitably managed. When data is properly managed, it transforms into information which can be utilized in making business decisions. Organisations can only survive when it takes optimized decisions in the highly competitive market. The optimal business decisions can be made only if organisation is able to efficiently collect, organise, analyse and interpret data and get proper information. Now we can understand the importance of data management in all business operations. The data is efficiently managed in a database by using a database management system. The database management system is a software package which efficiently manages a database.

The database is created and maintained by an integrated set of programs termed as the Database Management System (DBMS). Conveniently and effectively defining, storing, retrieving and manipulating the data contained in the database, is the major aim of the DBMS.

A Database Management System (DBMS) is a software tool used to perform various types of operations on Data in a database and creates a convenient and efficient environment which helps the user to access data easily.

"The DBMS (Database Management software that helps in efficient and convenient use of database by utilizing and maintaining huge collections of data".

Some commercial databases are ORACLE, INGRESS, MySQL and SYBASE etc. The figure illustrates the overview of DBMS.

Database Management System

What is Database ?

Database is as an organized collection of data, so that a computer program can easily and quickly access the needed data, so, multiple users can share it for various purposes.

"A collection of information that is grouped and stored in structured way is called database".

The gathered information which is helpful in retrieving the necessary information is termed as a database. Various categories of information such as electronic, printed, graphic, audio, statistical, combinations can be part of the gathered information. Two types of databases are physical and electronic databases. The database can either be very complex or simple. Simple database example includes, in an address book alphabetical arrangement of names whereas complex example is a database providing information in a combination of format.

Non-computerized database examples are: a dictionary, a phone book, a collection of recipes and a TV guide, whereas the computerized database examples are, customer files, books catalog, employee rosters, sales transactions and equipment inventories. Other than storing and retrieving data, the database supports various other operations such as, addition, updation and deletion of the data. A database management system (DBMS) is used to perform such operations.

A database is described as a suitably managed collection of related data elements. It must fulfill information needs of the organisation. A database is normally designed to be shared among multiple users, as described in figure.

Organization of Database Management System (DBMS)

DBMS are organised as shown in figure below:

Organization of DBMS

1) Character : 
The most basic data element which can be observed and manipulated is the character. It may comprise a single alphabetic, numeric or other symbol.

2) Field : 
This is the smallest unit in a database as it contains single piece of information.

3) Record : 
Related fields for a specific event are referred to as a record which means it is a collection of logically related fields.

4) File : 
The collection of related records is a file. Usually, all records are of the same size and type but there can be exceptions too. This depends on the size of records in a file. Telephone directory containing records of various telephone holders can be considered to be an example of a file.

Types of Files :

In the database systems, the following three types of files are used :

i) Master File : 
This is the file which contains permanent information about the entities. This acts as a reference point for transaction processing where information is collected on the basis of transaction data.

ii) Transaction File : 
These contain records of description of activities by an organisation. This gets created at the time of transaction processing and preparation of transaction documents. It is also used for permanent updation of master file.

iii) Report File : 
This gets created by data extraction form various records for report creation. Example, report file about weekly sales of a particular item.

5) Databases : 
This is a collection which comprises description of activities of one or more related organisations. Thus, all such data is made available to users where redundant data is removed or minimized. A database handles business inventory and accounting information in its files to prepare summaries, estimates and other reports. There might also be a database which will store newspaper articles and magazines.

Characteristics of Database Management System 

There are various Characteristics of DBMS are as follows : 

1) Non Redundant Data : 
It is possible to reduce the occurrence of duplicate data if a DBA (Database Administrator) controls the data centrally. Centralization of data also reduces the amount of storage space (that is required to store the data) and amount of processing (required for finding the data from a large mass of data).

Inconsistencies are also observed if data files are redundant. Avoiding duplication eliminates redundancy. In case some redundancy is found in the database then it is controlled. It is noted that the multiple copies of the same data are consistent in such a situation. DBMS also possess some additional abilities such as :
  • Sorting
  • Query
  • Integrity checking

2) Sharing Data : 
Multiple numbers of users and applications are allowed to share the data under the control of the database.

3) Data Integrity : 
It also ensures the data integrity because necessary checks can be implemented in the DBMS. Data integrity ensures the consistency and accuracy of data in the DBMS. To do this it is necessary to check the data values that are being entered into the database whether they are in the right format and lie in the specified range.

4) Data Security : 
Data is very important for any organization. Most of the time data confidential and must be kept protected from the unauthorized access. To secure the data DBA ensures that the proper authentication schema are applied and also checks that proper access procedures have to be followed at the time of accessing of the data. Additional checks must be performed when access requests to the sensitive data are made. The access of operations and data could be controlled by various security levels. Security can be also enforced depending on the value of the data. 
For example, the manager of a particular, department has access to only the salary details of those employees who work in his department. Security can also depend on the type of data being handled. For example, the manager cannot access the medical details of any employee though the concerned employee belongs to his/her department.

5) Conflict Resolution : 
It is the task of the Database Administrator to resolve conflicts regarding the requirements of the various applications or users because the database is under his/her control. So that the best performance is achieved in case of response critical applications, because DBA chooses the best access method and file structure. The applications that are less critical in nature are permitted to use the die database. This is because their relatively slower performance does not have much effect on the efficiency of the system.

Objectives of Database Management System

The purpose of the database system. It serves as a guide to database requirements process and data modeling.

1) Availability :
Data must be available for applications & queries.

2) Share-Ability :
Data items prepared by one application must be available to all other applications or queries. No data items are exclusive to an application.

3) Evolve-ability :
The database must evolve as application usage and query needs evolve. 

4) Data Independence :
The users of the database ascertain their view of the data and its structure not considering the actual physical storage of the data.

5) Data Integrity :
The database sets a consistent high level of accuracy. Validation rules are imposed by the database management system to insure the integrity.

Role of Database Management System

Between the users and the database it acts as intermediary interface. This is similar to the role that is played by a salesperson in a 'product or service distribution system'. An order form (contains items names which is required to the customer) is submitted to the salesperson (present at the counter). After retrieving the specified items from the storage room, sales person disburse the items to the customer. The customer who is placing the order is unaware of the location of the items in the storage room. The only thing that he does is he/she selects the items from a catalogue where the items are listed in alphabetical order.

However, there is no relationship among the location of the inventory in the storage room with how the goods are logically ordered in the catalog. In the same way the user of the database is only required to know what data is to be retrieved and DBMS carries out the task of retrieving.

Role of Database Management System

Database Management System (DBMS) Architecture

The common components/ Types of DBMS Architecture are mentioned below :

DBMS architecture with diagram

1) DML Pre-Compiler : 
DML pre-compiler is used to convert the DML statements (embedded in an application program) into regular function (languages are called in the host language). To produce the suitable code, it needs to interact with the DML compiler.

2) DDL Interpreter : 
It interprets and converts the DDL statements into a set of tables to record metadata (such as the name of the files, data items, storage details of each file, mapping information and constraints, etc.). The schema definitions stated in DDL statements are processed.

3) File Manager : 
The task of the file manager is space allocation on disk storage and data structure which represents the information stored. on the disk. It is implemented using an interface to the current file subsystem of the host computer or it is included in a file subsystem written exclusively for DBMS.

4) Database Manager : 
The database manager is a program module which acts like an interface between low level data and application programs and queries. It has the onus of interfacing with the file system.

5) Query Processor : 
Query processor is used to interpret the user's queries and convert it into understandable form by the data manager for further execution A Data dictionary is used by the query processor to find the format of the relevant portion of the query. Query processor uses this information to modify the query.

6) Database Administrator (DBA) : 
This is a high level function which manages all data resources in an organisation and also includes maintaining corporate wide data definitions and standards.

Responsibilities of Database Administrator (DBA) :

i) Schema Definition : 
The creation of the original database schema is achieved by definition writing which is translated by the DDL compiler to tables. These are then permanently stored in the data dictionary.

ii) Performance Monitoring and Tuning : 
It is the DBA's responsibility to ensure that databases are fast and responsive. A slow database means that it is not functioning to its optimum capacity. In order to enhance this, DBA monitors the state of database by checking the error or event log for database errors. Monitoring is performance enhancement. important for

iii) Schema and Physical Organisation Modification : 
Modification to the database schema or the explanation of the physical storage organisation is achieved by writing a definition set. This is used by the DDL compiler or data storage and definition language compiler for making modifications in the internal system tables. For example, the data dictionary.

iv) Granting of Authorization for Data Access : 
DBA is also responsible for granting authorization access to different users of the database.

v) Availability, Backup and Recovery : 
The most significant job of Database Administrator is of availability, backup and recovery of data. Since electronic data is of great value, it must be protected from hardware, software and human failure.

vi) Integrity Constraint Specification : 
The constraints are contained in a special system structure which the database manager consults whenever DBA uses tools for data administration in a data dictionary.

vii) User and Data Security : 
Database Administrator has the responsibility for determining the security level of each user and granting them access to databases accordingly. This activity is carried out for production and test databases.

viii) Working with Developers and Network Administrators : 
For ensuring optimum database performance level, DBA must work closely with other systems staff.

7) Data Dictionary : 
The data dictionary data repository is a significant part of DBMS which contains data about data or metadata. It contains the real database descriptions used by DBMS where the data dictionary is active (checks database rack time database is accessed) and integrated.

8) Storage Manager : 
It creates the interface between the low-level data (stores in the database), application programs and queries. Data storage, their retrieval and updation is the main job of storage manager.

9) Buffer Manager : 
A buffer is the area in which a block from a file is read. Buffer management comes with the objective of optimum performance with minimum demand on CPU resources. When two or more buffers are used for a file, it permits the transfer of data to be relaxed with the processing of data.

10) Database Users : 
Database users are the end users who retrieve the information from database. They access the database for querying. updating and generating reports.

Types of Users :

i) Casual End Users : 
A casual user has occasional access with different requirements each time and uses a high level query language like SQL which is the standard query language for relational database systems.

ii) Naive and Parametric End Users : 
These are the people who use permanent application programs. Examples of such users are airline reservation clerk, bank teller, data entry clerks, etc.

iii) Sophisticated End Users : 
These are the users who are familiar with the DBMS facilities like engineers and business analysts.

iv) Application Programmers : 
They execute applications like canned (standard types of queries and updates used by Naive or parametric end users to regularly querying and updating) transactions on top of DBMS for providing convenient access to naive and parametric end users.

Types of Database Management System

The different Types of Database System are as follows :

1) Active Database : 
An active database is governed by an event-driven architecture. Such a system can respond to both external and internal conditions to the database. Such databases are mainly used for statistics gathering, monitoring, authorizing and alerting.

2) Cloud Database : 
The database that relies on cloud technology is cloud database. The database and a great portion of the DBMS are situated in the cloud remotely. To develop the applications for the database the programmers use web browsers and open APIs. The same are used by the users to utilize the database.

3) Centralized Database System :
In a centralized database system, there is a single processor along with the peripherals and the storage devices. The whole database system is physically located at a single point. The users located at the site are able to get data processing services from the system. The system also offers services to users who are located at geographically distant places. They are able to access it with the help of remote terminals.

4) Parallel Database System : 
In a parallel database the performance is improved by the parallelization of various operations such as evaluating queries, loading data and building indexes. There are multiple disks and processors in parallel databases. This increases the speed of input/output and processing. Such applications cannot be efficiently handled by client-server or centralised databases as they are not powerful enough. In serial processing the steps are carried out one after another, whereas, in parallel processing multiple steps are carried out simultaneously.
In a parallel database system a number of microprocessors are connected using a high speed internet connection. It is necessary to use both processing parallelism and I/O parallelism so that the adequate support can be provided for inter and intra-transaction parallelism

5) Client/Server Database System : 
In order to deal with those environments where a large number of workstations, PCs, web servers. printers, file servers, database servers and other devices are connected using network, the client/server architecture was designed. The prime idea was to assign certain tasks to specific servers that have some specialized capability.

6) Distributed Database System : 
When a database has many parts and the parts are stored in different computers then it said to be a distributed database. With the help of a distributed database system it is possible to create and maintain distributed databases.

7) Data Warehouse : 
The task of reporting and data analysis can be carried out with the help of a special database called data warehouse. Data from multiple separated sources are integrated together and stored in the central repository. Both current and historical data are stored in the data warehouse. These can be used for creating quarterly or annual reports for the senior management.

8) Data Mining : 
The process of data mining involves data analysis from various perspectives and the making a summary from it, which contains only useful information. Such information can then be used by the management to cut cost, increase revenue or do both. Data mining can also be used to find patterns or correlations among a number of fields that are found in huge databases.

9) Spatial Database : 
Using a spatial database it is possible to store and query data about objects which include points, space, polygons and lines. In a spatial database data acting as real models are spatially referenced and stored. So, to process spatial data types databases are required additional functionalities. This because they are different from general databases that process different types of characters and numeric data types only.

10) Multimedia Database : 
Apart from supporting the functionalities of the traditional database systems like data independence, data organisation and access, database creation, data retrieval and data modeling, there must be support for multimedia data types in a Multimedia Database Management System (MMDBMS). There has been notable growth in the application of such databases due to the rapid advancement in network technology. Recently the exchange of multimedia information has also grown rapidly.

11) Mobile Databases : 
A database that can be connected with the help of a mobile device via a mobile network is called a mobile database. The server and client are connected wirelessly. In order to preserve data during the connection failure a cache is present to hold data and transactions that occur frequently. Information is organised in a structured way using database. 
For example, distance traveled, list of contacts or price of articles.

Advantages of Database Management System (DBMS)

There are some advantages of DBMS. These are as follows :

1) Redundancy can be Reduced : 
DBMS reduces the duplicacy (redundancy) and is aware of the redundancy and takes up the updates responsibility (i.e., it automatic change at other places in case of duplicate data).

2) Inconsistency can be Avoided : 
It also controls the inconsistency (mismatch of two entries with same data). Database controls the redundancy which automatically controls inconsistency.

3) Data can be Shared : 
Data stored in the database can be used with the other applications and because stored data satisfies all its need so there is no need of creating new file.

4) Standards can be Enforced : 
To represent the data, standards are used such as company, installation, departmental, industry, national and international standards. It is useful when user wants to migrate and interchange between systems.

5) Security Restriction can be Applied : 
Various authorization checks (while using sensitive data) and proper channels are required to access the database.

6) Integrity can be Maintained : 
Data integrity is important because databases are used in the shareable mode. Databases provide the data integrity and ensure that they are accurate.

Disadvantages of Database Management System

There are some limitations/ Disadvantages of DBMS. These are :

1) High Cost :
Cost is the one of the significant disadvantage of database system because to use a database, organisation requires upgrade or a new hardware. So organisation will have to pay different costs such as developing and hardware.

2) Problems Associated with Centralization : 
There is less security when data is accessed in centralized (data is accessed by every user) manner. So data can be lost and damaged.

3) Complexity of Back-Up and Recovery : 
In a multi-user database system when backup is loading, it may lead to duplication of data. If one takes the database back-up then it may affect the multi-user database system (which is in operation).

4) Confidentiality, Privacy and Security : 
When data is accessible from the remote location (i.e.,database system is centralised) then the possibilities of misuse of data increases compared to conventional database. To secure the unauthorized access of data, it is mandatory to take technical, administrative, and legal measures.

5) Data Quality : 
Suitable and sufficient controls are required to control the users who are updating the data and control the data quality. Direct access of data by various users leads to massive opportunities for users to damage the data. So if no suitable controls are available then it may be possible that data is comprised.

Applications of Database Management System

There are various applications of DBMS. Some of them are as follows : 

1) Airlines and Railways : 
Online database management system is used in airlines and railways seat reservations, as well as to display the flight and train schedules.

2) Banking : 
Core Banking System used in banks consists of database for storing and managing customer accounts, loans, enquiries and different transactions. 

3) Education : 
School Management Systems employed in schools and colleges consists of databases for different operations such as student registration, result processing, fee management etc.

4) Telecommunication : 
Telecom companies use database management system to store call records, customer bills and payment information, SIM card information, phone numbers, etc.

5) Government : 
Different departments of Government use database management system like Income Tax department, Sales and Excise department, Municipal Corporations. Health department, Housing Development Authorities etc. 

6) Private Organisations : 
Private organisations maintain DBMS for storing and managing records of their customer, suppliers, employees. inventory, orders, sales, expenses, income, etc. DBMS provide efficient storage of records, easy access to information, and better security as compared to manual system.