1.1 Introduction to DBMS

Ayush Solanki
Database Management System
4 min readSep 6, 2021

--

What is DBMS?

Database Management System (DBMS) is a collection of interrelated data and a set of programs to access those data. The collection of data, usually referred to as the database, contains information relevant to an enterprise. The primary goal of a DBMS is to provide a way to store and retrieve database information that is both convenient and efficient.

Use of DBMS

Database systems are designed to manage large bodies of information. Database systems are used to manage collections of data that are highly valuable, are relatively large and are accessed by multiple users and applications at a same time.

Data V.S Information V.S Knowledge

By Data, we mean raw facts which can be recorded and that have an implicit meaning. Information means interpreted data i.e. data supplied with semantics. Knowledge refers to practical use of information. A database is a collection of data, usually stored in electronic form.

Application of Database

  • Banking: To keep track of all the transactions.
  • Human Resource: Employee’s information, records and salaries, tax deduction etc..
  • Airlines: Reservation and Scheduling.
  • Universities: Registration and Grade records.
  • Online Retailers: Purchase, Customer’s order, Sales, Products.
  • Enterprise: Sales, Profit, Accounting, Human resources.
  • Manufacturing: production, inventory, orders, supply chain.
  • Social Media: For keeping records of user activity.
  • Games: For saving user’s progress.
  • Navigation System: For storing routes.

And many more…..

Need of Database Management System

  • To manage large amounts of data: A database stores and manages a large amount of data on a daily basis. This would not be possible using any other tool such as a spreadsheet as they would simply not work.
  • Accuracy: A database is pretty accurate as it has all sorts of build in constraints, checks etc. This means that the information available in a database is guaranteed to be correct in most cases.
  • Easy to update data: In a database, it is easy to update data using various Data Manipulation languages (DML) available.
  • Security of data: Databases have various methods to ensure security of data. There are user logins required before accessing a database and various access specifiers. These allow only authorised users to access the database.
  • Data integrity: This is ensured in databases by using various constraints for data. Data integrity in databases makes sure that the data is accurate and consistent in a database.
  • Easy to research data: It is very easy to access and research data in a database. This is done using Data Query Languages (DQL) which allow searching of any data in the database and performing computations on it.

Drawbacks of Traditional File System

  1. Data redundancy and inconsistency: Since different programmers create the files and application programs over a long period, the various files are likely to have different structures, and the programs may have been written in different programming languages. Moreover the same information may be duplicated in several places. This redundancy leads to higher storage and access cost. In adiition it may lead to data inconsistency i.e. various copies of the same data may not be similar.
  2. Difficulty in accessing data: Due to multiple files it may become difficult to access data. Application programs written to read files might not be sufficient for future requests. If more different sorted or filtered data is needed then the programmers need to write different programs to access paritcular data. This might be time consuming as well as resource consuming. The point here is that the conventional file processing enviroments do not allow needed data to be retrieved in a convenient and efficient manner. More responsive data to be retrieved in a convenient and efficient manner. More responsive data retrieval systems are required for general use.There is need to write new program to carry out each task.
  3. Data Isolation: Because data is scattered in various files and files may be in different formats, writing new application programs to retrieve the appropriate data is diificult.
  4. Integrity Problems: The data values stored in the databse must satisfy certain types of consistency constraints. Constrainst means providing condition for the data to be stored (For ex: Age >= 18 etc..). Integrity constraints get burried in program code rather than being state explicitly. Difficult to add new constraints or edit the previous ones.
  5. Atomicity Promblems: A computer system like any other device is subject to fialure in many applications, it is crucial that if failure occurs the data should be restored to the consistent state that existed prior to the failure. Failures may leave database in an inconsistent state with partial updates carried out. Transactions should be atomic i.e It should either complete or not happen at all. If the transaction fails then it should be restored to consistent state. Atomicity means it must happen entirely or not at all. It is difficut to ensure atomicity in conventional files.
  6. Concurrent access anomalies: For the sake of overall performance of the system and faster response, many systems allow multiple users to update the data simultaneously. Concurrent access is needed for better performance and user experience. Uncontrolled concurrent access can lead to data inconsistencies. So it is necessaryt o have acess control too. In file systems, it is difficult to give users concureent access. Even if we provide users concurrent access, data inconsistency can occur in traditional file systems.
  7. Security Problems: Not every user of the database system should be able to acess all the data. Since application programs are added to file processing system in an ad hoc manner then enforcing secuirty constraints is difficult.

So this was the basic introduction about what dbms is and why we require it. I hope you like it and it would be helpful for you :)

--

--