Characteristics of database
- A number of characteristics distinguish the database approach from the much older approach of programming with files.
- In traditional file processing, each user defines and implements the files needed for a specific software application as part of programming the application.
- The main characteristics of the database approach versus the file-processing approach are the following:
- Self-describing nature of a database system.
- Insulation between programs and data, and data abstraction.
- Support of multiple views of the data.
- Sharing of data and multiuser transaction processing.
The database approach has some very characteristic features which are discussed in detail below:
Structured and Described Data:
- Fundamental feature of the database approach is that the database system does not only contain the data but also the complete definition and description of these data.
- These descriptions are basically details about the extent, the structure, the type and the format of all data and, additionally, the relationship between the data. This kind of stored data is called metadata ("data about data").
Separation of Data and Applications:
- Application software does not need any knowledge about the physical data storage like encoding, format, storage place, etc. It only communicates with the management system of a database (DBMS) via a standardized interface with the help of a standardized language like SQL.
- Data integrity is a byword for the quality and the reliability of the data of a database system.
- In a broader sense data integrity includes also the protection of the database from unauthorized access (confidentiality) and unauthorized changes. Data reflect facts of the real world.
- A transaction is a bundle of actions which are done within a database to bring it from one consistent state to a new consistent state. In between the data are inevitable inconsistent.
- Data persistence means that in a DBMS all data is maintained as long as it is not deleted explicitly.
- The life span of data needs to be determined directly or indirectly be the user and must not be dependent on system features.
- Additionally data once stored in a database must not be lost. Changes of a database which are done by a transaction are persistent.
- When a transaction is finished even a system crash cannot put the data in danger.