![]() |
File creation, modification and deletion. |
![]() |
Ownership of files and access control on the basis of ownership permissions. |
![]() |
Facilities to structure data within files. |
![]() |
Facilities for maintaining data redundancies against technical failure (back-ups, disk mirroring, etc.). |
![]() |
Logical identification and structuring of the data, via file names and hierarchical directory structures. |
![]() |
An FMS system allows the duplication of the same data in different files stored in the system. |
![]() |
This leads to space wastage and errors due to updates of the same data in different files. |
![]() |
Such Redundancy problems can be avoided in a DBMS. |
![]() |
Example: Consider a file management system storing some files related to the management of a library. |
![]() |
Suppose that in a ’books’ file it is indicated that the book titled “Mastering Java Programming” authored by “Ahmad Ibrahim” is borrowed by reader “Tawfeeq Ali”. | |
![]() |
In a ’readers’ file it is indicated that the reader “Tawfeeq Ali” has borrowed the book titled “Mastering Java Programming” authored by “Ahmad Ibrahim”. | |
![]() |
Thus, the same data content is stored in both the ’books’ and ’readers’ files. | |
![]() |
This is an example of data redundancy wasting storage capacity and may lead to errors, e.g. if the reader returns the book and one of the files was not updated accordingly. |
![]() |
This issue is related to the redundancy problem described in the previous point. |
![]() |
In particular, inconsistency in data occurs when an update made in one file is not carried over to another file. |
![]() |
Thus, duplication of data in multiple file must be removed to eliminate inconsistency. |
![]() |
Example: Consider the library files example discussed above. |
![]() |
Data inconsistency would occur if when the reader ’Tawfeek Ali’ returns the book ’Mastering the Java Language’, the ’books’ file is updated accordingly but the ’readers’ file is not updated. | |
![]() |
This data inconsistency could later lead to difficulty in allocating the book. | |
![]() |
A centralized database would eliminate such inconsistency problem by ensuring that changes once made are reflected in all related data in the database, | |
![]() |
Thus the update is done automatically and is known as propagating updates. |
![]() |
In a DBMS environment, integrity constraints can be defined and applied to enforce some rules on the data that is stored in the database. |
![]() |
Such integrity constraints cannot be supported in a conventional FMS. |
![]() |
Example: In a database library, a constraint could enforce that the salary of a library employee must not exceed 10,000 US Dollars. |
![]() |
Standards are easier to enforce in a database as data access is fully controlled by the hosting DBMS. |
![]() |
Such standards may be related to the naming of data, format of data, structure of the data, etc. |
![]() |
Standardizing stored data formats is usually desirable for the purpose enabling data migration between systems. |
![]() |
In any organization, a number of users possibly from different departments/groups can access different parts of the organization data. |
![]() |
Controlling who access what data could be difficult in an FMS. |
![]() |
Using a database makes it easier to enforce security restrictions as data is now centralized. |
![]() |
Checks can be established for each type of access e.g., retrieve, modify, delete, to each data item in the database. |
![]() |
Example: Consider a library database, |
![]() |
A librarian user may retrieve all data related to the borrowing activities in the library. | |
![]() |
However, a reader user may only retrieve information related to the books he/she has been borrowing. |
![]() |
One of the most important advantages of using a database system is the requirement to build an overall data model for the organization. |
![]() |
In an FMS, it is more likely that files will be designed as per need of particular applications demand and the overall view is often not considered. |
![]() |
Building an overall view of an organization's data is usual cost effective in the long terms. |
![]() |
Using a centralized database provides schemes for recovery and backups from the failures including disk crash, power failures and software errors. |
![]() |
This may help the database to recover from the inconsistent state to the state that existed prior to the occurrence of the failure. |