What is a File System?
A file system is a method of arranging the files/data in a hard disk or some storage medium. One can store, access, and retrieve data from a file system as and when required. It contains directories. A directory is again a collection of files. In a file system, the database is maintained by the user without any interference from the DBMS software. This is one of the main difference between file system and DBMS. Some of the most widely used file systems in the market are NTS (New Technology File System) and EXT (Extended File System).
What is a DBMS?
A database is a collection of interrelated data. For example, the set of enrollments in a university is a database. A DBMS(Database Management System) is software used to manage database files in a more efficient way. It means database files are stored on a disk. It provides better security of data and convenient access to the user.
Various DB languages are used to fetch the user queries like SQL (Structured Query Language). Security of data is one of the main differences between file system and DBMS and draws the user's attention towards DBMS as it provides protection from unauthorized users, unlike file systems. Some of the DBMS used widely are Oracle, MySQL, etc.
Differences between File System and DBMS
Having discussed the file system and DBMS separately, now we are in a position to understand the differences between file system and DBMS. Following are the difference between file system and DBMS:
Too complex to develop and manage application programs.
Due to data independency, easy to develop and manage application programs.
Requires more I/O cost to access data.
It requires less I/O cost to access data.
Less degree of concurrency. Only one user can access the data at any time.
More degree of concurrency. Simultaneously many users can access the data concurrently.
Complex to maintain non-redundant data.
Easy to maintain non-redundant data.
It provides less security to data stored.
It protects and provides security to data from errand users.
It provides less data consistency.
It provides more data consistency.
No independence of data.
Provides data independency.
No data abstraction is possible.
Provides data abstraction.
Sharing of data is difficult as data is distributed in many files.
Sharing of data is easy as it is centralized.
Examples are C++ and Cobol.
Examples are SQL Server, Oracle, and MySQL.