Design Considerations
A file system exhibits structural dependence, which means that access to a file is dependent on its own structure
All file system programs are modified to conform to a new file structure
Structural independence exists when you change the file structure without affecting the application’s ability to access the data
Data dependence exists when all data access programs are subject to change when data storage characteristics change
Data independence exists when data storage characteristics are changed without affecting the program’s ability to access the data
The practical significance of data dependence is the difference between the logical data format (how humans view the data) and the physical data format (how the computer must work with the data)
Any program that accesses a file system’s file must tell the computer not only what to do but also how to do it
Data dependence makes the file system cumbersome from the point of view of a programmer and database manager
In relational databases, logical and physical design affect queries differently. Logical design affects the query result. Physical design affects query processing speed but never affects the query result. The principle that physical design never affects query results is called data independence.
Data independence allows database designers to tune query performance without changes to application programs. When database designers modify indexes or row order, applications run faster or slower but always generate the same results.
Prior to relational databases, most database systems did not support data independence. Performance tuning often forced time-consuming changes to applications. Data independence is a major advantage of relational databases and contributed to the rapid adoption of relational technology in the 1980s.
Data Redundancy
Data redundancy exists when the same data is stored unnecessarily at different places
Database professionals use the term islands of information for scattered data locations
Increases the probability of having different versions of the same data
Possible results of uncontrolled data redundancy
Poor data security
Data inconsistency
Data-entry errors
Data integrity problems
Data Anomalies
A data anomaly develops when not all of the required changes in the redundant data are made successfully. The following are three types of anomalies:
Update anomalies
Insertion anomalies
Deletion anomalies