Databases and DBMSs
As we have seen in previous lectures, a computer can be seen as a data or information processor, because raw data is input and information is output. The raw data that is input is usually meaningless in itself, but after processing it becomes information (processed data), and has value.
The need for databases arose from the fact that the data that is input to and processed by a computer has to be stored and organised. A database is therefore a collection of organised and inter-related data on a related subject or topic. Not only does a database hold and organise data, it also stores information about this data - metadata (data about data).
Database Management Systems
Database management systems (DBMSs) are necessary to control access to the data - to administer the database. Database management systems manage the structure and organisation of the data in the database, and it controls how the data is accessed. They (DBMSs) are necessary to ensure the integrity of the data in the database, and that the data is accessed in a controlled manner.
The database management system sits on top of the database, and all access to the data in the underlying database is through the database management system.
Why use a database solution?
Prior to the advent of databases and database management systems, a file based approach was used to store and access data on a computer. In such a system a file or group of files were used along with a specific program, to store and access data on a specific topic or subject. This approach had several disadvantages:
- Data are separate and isolated
- Data are often duplicated
- Application programs are dependent on file formats
- files are often incompatible with one another
- Difficulty in representing data in the user's perspective
Database systems overcome these hurdles by offering:
- Integrated data
- Reduced data duplication
- Program/Data independence
- Easy representation of the user's perspective
As we can see, a database solution is much more clean and efficient than the traditional file based approach.