Drawbacks of File system
Data redundancy: Data redundancy refers to the duplication of knowledge , let's imagine we are managing the info of a university where a student is enrolled for 2 courses, the same student details in such case are going to be stored twice, which can take more storage than needed. Data redundancy often results in higher storage costs and poor time interval .
Data inconsistency: Data redundancy results in data inconsistency, lets take an equivalent example that we've taken above, a student is enrolled for 2 courses and that we have student address stored twice, now let's imagine student requests to vary his address, if the address is modified at one place and not on all the records then this will cause data inconsistency.
Data Isolation: Because data are scattered in various files, and files could also be in several formats, writing new application programs to retrieve the acceptable data is difficult.
Dependency on application programs: Changing files would cause change in application programs.
Atomicity issues: Atomicity of a transaction refers to “All or nothing”, which suggests either all the operations during a transaction executes or none. For example: Lets say Ram transfers 1000 RS to Raj’s account. This transaction consists multiple operations such as debit 1000 RS from Ram’s account, credit 1000 RS to Raj’s account. Like any other device, a computer system can fail lets say it fails after first operation then in that case Ram’s account would have been debited by 1000 RS but the amount was not credited to Raj’s account, in such case the rollback of operation should occur to maintain the atomicity of transaction. It is difficult to achieve atomicity in file processing systems.
Data Security: Data should be secured from unauthorised access, for instance a student during a college shouldn't be ready to see the payroll details of the teachers, such kind of security constraints are difficult to use in file processing systems.
As we have seen above that file system had many problems. So, DBMS came as a saviour and resolved these problems. As the main problem with the file system was security, DBMS is an effective way to store the data when security is the major concern of the user. DBMS stores the data in the form of interrelated tables and files. This reduces the redundancy of data as the data here is centralized(you can read more about the characteristics of DBMS from here). Also, access to data is very fast when we use DBMS. It provides us with an interface or a tool, to perform various operations like:
creating the database
manipulating the database
storing and retrieving the data from the database
deleting data from the database, etc.
Advantage of DBMS over file system
·There are several advantages of management system over filing system . Few of them are as follows:
No redundant data: Redundancy removed by data normalization. No data duplication saves storage and improves access time.
Data Consistency and Integrity: As we discussed earlier the basis explanation for data inconsistency is data redundancy, since data normalization takes care of the info redundancy, data inconsistency also been taken care of as part of it
Data Security: it's easier to use access constraints in database systems in order that only authorized user is in a position to access the info . Each user features a different set of access thus data is secured from the problems like fraud , data leaks and misuse of knowledge .
Privacy: Limited access means privacy of data.
Fast Data Access: The data response time increases in DBMS. Example: If we search for any train in IRCTC then we get results about that train only in a fraction of seconds. But the file system would have given us the entire file. Such a file size is large hence its access time will also be more.
Easy recovery: Since database systems keeps the backup of knowledge , it's easier to try to to a full recovery of knowledge just in case of a failure.
Flexible: Database systems are more flexible than file processing systems.
Concurrent Access: Multiple users can access the database at the same time when we are using the Database Management System