What is Dbms:

To understand, what is Dbms let us first understand that what is a Database.
The collection of many data together in the form of tables , schemas, views etc is known as a Database. Database is used to organize Inter-related data so that they can be fetched later. Database allows us to manipulate the stored data i.e. we can insert , update & delete data according to our need whenever required.
For example, we can store Student related data inside student Database by creating different student related schemas like, student_info,  Student_enrolled_courses etc…
Now, Dbms or Database Management System is basically a software which is used to manage the database. Oracle, MySQL are commonly used database software’s used across many applications. The popular languages through which we can manage Database are: SQL,MySql,Pl-SQl,MongoDb etc…
These languages allows user to interact with the database & we can perform CRUD (Create,Read,Update & Delete) data from the database whenever required. They also provide security to the database & maintains data Integrity & Consistency.

Features of Dbms:

1) Maintains Data Integrity & Data Consistency.
2) Provide better security by preventing accidental loss of user data.
3) Provides tool through which can establish relationship between different tables,using keys. In this way we can fetch data from one table using user information present in another table.
4) It holds ACID properties during Transactions, which is also necessary for data consistency.
5) It maintains proper database Log files for proper data recovery & backup.
6) Provides different viewpoints like: External view, Conceptual or logical view & Internal View of the database.

Advantages of Dbms over Traditional File System to store data:

1) Data redundancy & inconsistency :

If the same data is repeated multiple number of times unnecessarily then the data is said to be redundant data. In traditional file system, it may be possible that the same data is stored multiple number of times in different files unnecessarily. So in future, changes made to that data in one file by a particular user will not reflect in other file. Later, if someone wants to access that data then that data will be considered as Inconsistent data which leads to Data inconsistency.
For normal or traditional file system, there is no such protocols or constraints that will ensure, only unique datas will be stored. But with Dbms, we can define specific constraints, protocols that will be triggered automatically if someone wants to store duplicate data inside database, & hence we can overcome Data redundancy/duplicity & Data inconsistency with Dbms.Moreover,Dbms provides special locking protocols to overcome Data inconsistency problem.

2) Data Concurrency :

In todays world, we want our data to be accessed simultaneously by multiple users. But with traditional file system this is not possible because the data present inside the file can only be accessed to that particular user who is accessing or using that system, as files are local to a particular system only, they are not centralized. Dbms allows you to access data by multiple clients/users simultaneously as they are centralized, thus scalability becomes easier with Dbms. The clients is unaware where & how our database is stored, they can access our data from anywhere & anytime.

3) Data Security :

Security is the most important aspect for our data nowdays.There can be some secure or sensitive data that needs to be accessed only by some specific users,i.e our internal data should not go out directly directly. But with traditional file system, we can’t ensure any data security, as the data stored inside files are open to any kind of user, as files are handled by OS . So, file systems doesn’t guarantees security for our data. With Dbms we can define specific role based accessibility i.e. our data is not open for every user, a specific user can view & manipulate only the data that is related to that particular user only. That’s why Dbms guarantees provides Security to our data.

4) Data searching :

In traditional file system approach, searching of data becomes much more complex, as user doesn’t know where our data that we want to access is stored as our file may contain large amount of data. Moreover if we want to access some data that requires much more computation & searching or needs access of data which is present in some other file, then searching complexity will increase a lot & the user needs to search manually which will take lot of time.
But with Dbms, if a user wants to access some data, at backend some Sql query will be triggered that will fetch that data automatically irrespective of the fact that how large our database is & how are data is being stored inside our database. Moreover, we can also have access to the data that requires much more computation & needs access to data stored in another table of same or different database, using Dbms.

5) Data Integrity:

Sometimes we want our data to go through certain parameter check before they are stored. In traditional file system approach, there is no such mechanism that will check whether the data that is being stored, is meeting necessary requirements or not. But with Dbms we can define certains user defined protocols & constaraints that will ensure checking of the data i.e. whether the data is properly formatted or data entered is compatioble with the existing data etc…& hence Dbms provides Data Integrity.