The overall design of the database is called as the database schema. The three levels of abstraction we have seen in the previous post are also called as the three-schema architecture. It can be used to explain the concept of Data Independence in DBMS. Data Independence can be defined as the capacity to change the schema at one level of the database system without having to change the schema at the next higher level. We can define two types of Data Independence. They are –
- 1. Logical Data Independence
- 2. Physical Data Independence
1. Logical Data Independence
It is the capacity to change the logical schema, without having to change the view schemas or application programs.
We may change the logical schema to expand the database (by adding new record type or data item) or to reduce the database (by removing a record type or data item). Such reorganization should not affect the Application programs at the view schema they should work as before. In other words the addition or removal of new entities, attributes or relationships to the conceptual schema external schema or having to rewrite existing application programs. Consider two users X & Y both are selecting the fields “StudentID” and “StudentName”. If user Y adds a new column (e.g. StudentAddress) to his table, it will not affect the external view for user X, though the internal schema of the database has been changed for both users X & Y.
2. Physical Data Independence
Physical data independence deals with hiding the details of the storage structure from user applications. The ability to change the physical schema without changing the logical schema is called physical data independence. E.g. Change to the internal schema, such as using different file organization or storage structures, storage devices, or indexing strategy, should be possible without having to change the conceptual or external schemas. It is the capacity to change the physical schema without having to change the logical or view schemas. Changes to the physical schema may be needed because some physical files have to be reorganized to improve performance. To simply, if we change from HDD to SDD, it should not have any impact on the logical data or schemas.
That’s end of tutorial on Data Independence in DBMS.