Types of Data Independence

Data Independence:

A database is viewed through any three levels of abstraction.. Any change at any level may affect other levels’ schema (structure of database). As the databases keep growing, there may be changes made at some level. However, this should never lead to redesigning and re-implementation a database. The concept of data independence proves beneficial in such a context.

Types of Data Independence:

The ability to modify a schema definition on one level without affecting a schema definition on the next higher level is called Data Independence. There are mainly two types of Data Independence in DBMS.

Types of Data Independence

  • Physical Data Independence
  • Logical Data Independence

Physical Data Independence:

It refers to the ability to modify the schema followed at the physical level without affecting the schema followed at a conceptual level. That is the application programs remain the same even though the schema at the physical level gets modified. Modifications at the physical level are occasionally necessary to improve the performance of the system.

Logical Data Independence:

It refers to the ability to modify the conceptual schema without causing any changes in the schema followed at the view level. The logical data independence ensures that the application programs remain the same. Modifications at the conceptual level are necessary whenever logical structures of the database get altered because of some unavoidable reasons.

It is more difficult to achieve logical data independence than physical data independence. The reason is that the application programs are heavily dependent on the logical structure of a database. The abstract data types in modern programming languages implement the concept of data independence to a larger extent. Both types hide implementation details from the users. This allows users to concentrate on the general structure rather than low-level implementation details.

Importance of Data Independence:

1. Database system maintenance becomes affordable.
2. It helps you to improve the quality of the data.
3. Enforcement of standards and improvement in database security.
4. You don’t need to alter data structure in application programs.
5. Permit developers to focus on the general structure of the Database rather than worrying about the internal implementation.
6. It allows you to improve state which is undamaged or undivided.
7. Database incongruity is vastly reduced.
8. Easily make modifications in the physical level is needed to improve the performance of the system.