What are the differences between Flat files and databases?
Data storage is an intrinsic part of the internet but how is that data stored? What is a flat file? How does a flat file compare to a database? Indeed, what options are there when it comes to data storage and what are the benefits of the options. This article attempts to clear up some of the mud in the water and explain what the different types are.
![](https://image.over-blog.com/ey26DFLFrOz9PSZZZaCnAJdy5sc=/400x400/smart/filters:no_upscale()/wedata%2F0023257%2F2011-06%2FComputer-diskettes-for-storage-of-the-information.jpg)
Data storage types
Flat File
These are the simplest form of data storage.
The main use for a flat file is to move data between different data storage systems.
Usually, these are created by an export function on an application although they can be hand created.
The most common form of flat file is a CSV or Comma Separated Variable file.
Spreadsheet
A spreadsheet is effectively a combination of a bunch of flat files and mathematical functions. It's a fairly simple form of data storage but also one that can be used fairly effectively by most people.
The in built mathematical functions make this a popular choice for many people.
Database
A database is effectively a bunch of flat files set-up in a system that allows rapid searching, cross referencing and manipulation of data.
Databases can be very complex systems but also flexible.
Pros and cons
Flat File
Pros
Simple data storage.
Transportable between systems.
Can be read by a simple text editing package.
Cons
Hard to search data.
No facility for cross searching of data.
No ability to apply mathematical formulae.
Spreadsheet
Pros
Simple data storage.
Effective where mathematical formulae are needed.
Easy to use, no real programming ability to get a lot out of a database.
Excellent ability to do statistical analysis and graphs.
Cons
Poor cross tabulation.
Hard to avoid data duplication.
No real facility for search queries.
Database
Pros
Very flexible and efficient way of storing data.
Excellent ability to do queries of the data.
If designed properly has minimal data duplication.
Saves a lot of time, more than offsetting any development costs.
Cons
Requires expert knowledge to set-up and configure.
Can lose efficiency if it's poorly designed.
Can be expensive to maintain.
Final word
Overall databases are simply the best way to store data.
They are very efficient and flexible in the way they store data.
Flat files are only any good as a source that is then imported into a Spreadsheet or a Database.
Spreadsheets are only really useful when statistical graphics are required.
The best solution is to store all the data in a database and then do spreadsheet statistics off exports from queries on the database.