The three-schema architecture can be used to further explain the concept of data independence, which can be defined as the capacity to change the schema at one level of a database system without having to change the schema at the next higher level. We can define two types of data independence:
Logical data independence
Physical data independence
Logical data independence
Logical data independence is the capacity to change the conceptual schema without having to change external schemas or application programs.
We may change the conceptual schema to expand the database (by adding a record type or data item), or to reduce the database (by removing a record type or data item).
In the latter case, external schemas that refer only to the remaining data should not be affected. Only the view definition and the mappings need be changed in a DBMS that supports logical data independence.
Application programs that reference the external schema constructs must work as before, after the conceptual schema undergoes a logical reorganization.
Changes to constraints can be applied also to the conceptual schema without affecting the external schemas or application programs.
Physical data independence
Physical data independence is the capacity to change the internal schema without having to change the conceptual (or external) schemas.
Changes to the internal schema may be needed because some physical files had to be reorganized—for example, by creating additional access structures—to improve the performance of retrieval or update.
If the same data as before remains in the database, we should not have to change the conceptual schema.