Discuss the main characteristics of the database approach and how it differs from traditional file systems.
Main Characteristics of the database approach:
- Self-describing nature of a database system.
A fundamental characteristic of the database approach is that the database system contains not only the database structure and constrains. this definition is stored in the system catalog. A DBMS catalog stores the description of a particular database (e.g. data structures, types, and constraints) The description is called meta-data this allows the DBMS software to work with different database application.
- Insulation between programs and data.
In traditional file processing, the structures of data files is embedded in the access programs, so many change to the structure of a file may require changing all programs that access this file. By constraint, DBMS access programs do not require such changes in most cases. the structure of data files is stored in the DBMS catalog separately from the access programs. we call this property program-data independence
program-data independence: allows changing data structures and storage organization without having to change the DBMS access programs.
- Data abstraction.
The characteristic that allows program-data independence and program-operation independence is called data abstraction. A data model is a type of data abstraction that is used to hide storage details and present the users with a conceptual view of the database.
- Support of multiple views of the data.
Each user may see a different view of the database, which describes only the data of interest to that user. A view may be a subset of the database or it may contain virtual data that is derived from the database files but is not explicitly stored.
- Sharing of data and multi-user transaction processing.
Allowing a set of concurrent users to retrieve from and to update the database. concurrency control within the DBMS guarantees that each transaction is correctly executed or aborted. Recovery subsystem ensures each completed transaction has its effect permanently recorded in the database. OLTP (online Transaction Processing) is a major part of database applications. this allows hundreds of concurrent transactions to execute per second.
Database approach Differs from traditional file system: