Data Management Approaches | File-based vs Database
In this article, I am going to discuss the different approaches for Data Management. Basically, what we will discuss is, how we store data in earlier days and what problems we face, and how we overcome those problems using the Database approach.
Data Management Approaches
There are two ways to manage the data. They are as follows:
- File-based Approach
- Database approach
File-Based Approach for Data Management:
In a File-based system, every data is stored in the form of a file. The earlier system to the database was file-based systems. Previously database is using a file-based system. In this, a large number of files are needed to perform various tasks so, each and every data is stored in the form of a file only. Group of files used for storing data of an organization here different files are used to store a data of an organization. So multiple files will be used like file 1, file 2, file 3, ———- file n. for example, in an organization 1st file is for employee information 2nd file is for employee personal details 3rd file is for employee company related details, and so on. Each and every file is used to store different types of information. Here each file is independent of another file. One single file is called a Flat File. Each file contained and processed information for one specific task. All these files are designed by using C/C++ language. So, if you stored the information, complete information will be in the form of files then what are the drawbacks we’ll see.
What is a File?
A file is a collection of related data stored in memory. Each file is used to store different information. Here each file is independent of another file. One single file is called a Flat File.
What is a Flat File?
In a Flat file database, a database stored in a file which is called a flat-file. Here records follow a similar format and there is no structure for recognizing relationships between records. A flat file can be a text file or a binary file.
Example: Here 3 columns followed by Route no., Miles, Activity, and 2 rows Record 1 and Record 2. The data here is represented in uniform format but there is no relationship between the records.
A flat File is a traditional mechanism that is used to store data or information in individual unrelated files. These files are also called Flat files.
The drawback of File-Based Approach for Data Management:
If you want to retrieve data from flat files then we must develop an application program in high-level languages whereas if you want to retrieve data from a database then we are using SQL language.
Data redundancy means duplication of data values i.e.; the same information is duplicated in several files. This makes the data redundancy; the same information appears in different files in different ways. If we maintain duplication then it means wastage of time, wastage of money, and storage space also. So, in your DBMS main drawback is redundancy.
Data Inconsistency means different copies of the same data are not matching. For Ex, in 1 file employee A’s phone no. is 9764734221 and in another file that employee A’s same phone number is having a different meaning (i.e., phone number is saved as an ID number). So, different copies of the same data are not matching, that is nothing but a data inconsistency. Same basic data existing in different files with different meanings then you can say that is a data inconsistency. Example: Phone no. of the customer is different at different files.
Data isolation means data is scattered in different files, and files in different formats, writing a new application program to retrieve data is difficult. Each and every file is formatting in a different way then retrieving information from these files is very difficult that is nothing but data isolation.
Data integrity means data values may need to satisfy some integrity constraints. For example, if you are maintaining some bank database so balance is one attribute so bank balance values, suppose it is maintaining some integrity constraints like each and every customer should have the 1000/- rs. Minimum balance so here bank balance value should be 1000/- rs. Minimum, this is nothing but the integrity constraints.
Example: If you want to fill some application form here age should be like 18 yrs. this is nothing but is some integrity constraints. So, each and every data value must satisfy some integrity constraints.
In the file-based approach to handling the above condition, we need to go through the program code whereas in the database approach we can declare integrity constraint along with the definition whereas in your file-based approach if you maintain some integrity constraint you need to write the programming code. In this database approach just simply, you can mention the integrity constraint along with the query language.
It is difficult to ensure atomicity in the file processing system. For example, two accounts are their A and B both are the customers, A and B both are having accounts and A wants to transfer 100/- rs. to B so here from A’s account 100/- rs. is deducted but it is not credited in the B’s account due to some failure, so that is nothing but atomicity.
Data Concurrent Access Violation:
If multiple users are updating the same data simultaneously, it will result in an inconsistent data state. In a file processing system, it is very difficult to handle using programming code.
Enforcing security constraints in a file processing system is very difficult. For example, in the banking system, payroll personal need only the part of the database that has information about various bank employees. They don’t need access to information about customer account. If you see in the bank if anybody asks the payroll information then like customer name, customer age, customer address, customer bank balance every information will be there so if I asked my details, I should see only my details if another person details, I am able to see then it is not maintaining security.
Data stored in flat files cannot be secured because files don’t provide a security mechanism whereas databases provide ruled-based security.
If you want to retrieve data very fast from databases then databases provide an indexing mechanism whereas flat files don’t provide an indexing mechanism.
Flat File approach for Data Management:
Organizations suffering from flat-file mechanisms to store data or information’s to overcome these problems. Organizations introduce special software which is used to store data permanently in secondary storage devices. This software is also called DBMS Software.
Database Approach for Data Management:
In order to remove all the limitations of a file-based system, a new approach was required that must be more effective. So, the database concept was introduced.
What is a Database?
It is a collection of inter-related data which contains the information of an organization/enterprise. It is obtained by collecting the data from all the data sources of an organization. The database is a computer-based record-keeping system whose overall purpose is to record and maintain information. The database is a single, large repository of data that can be used simultaneously by many users.
Advantages of Database Approach for Data Management:
Program Data Independence: If a database approach is used, data is stored in a central location called a repository. The process of the database allows an organization’s data to change the database without modifying the application programs which are able to process this data.
Minimal Data Redundancy: Data redundancy exists when the same data are stored unnecessarily at different places. The database approach does not eliminate redundancy completely, but it provides the facilities to the designer to carefully control the amount of redundancy.
Improved Data Consistency: If the amount of data redundancy is controlled, it will reduce the data inconsistency also. It is also highly recommended to maintain the same version of data at all locations.
Improved Data Sharing: A database is designed as a sharable component. DBMS helps in creating an environment in which end users have better access to more data and better manages data. Users are allowed to utilize the services of the database by authentication and authorization.
Enforcement of Standards: To provide services to database management, every database administrator designs procedure & enforcement standards. Procedures are the instructions and rules that govern the design and use of a database system.
Improved Quality: The database approach provides an optimum number of tools & processes to improve data quality. Every data designer can specify a rule called integrity constraints which users can’t violate.
In the next article, I am going to discuss Commonly used Database Management Terminology. Here, in this article, I try to explain the different data management approaches and why we should go for the Database approach for data management and I hope you enjoy this Data Management approach article.