BCA / B.Tech 9 min read

Data Independence in English – What is Data Independence?

Data Independence: Its Use in DBMS

Data independence is the ability to modify the schema definition at one level without affecting the schema definition at the next higher level.

In other words, "In a DBMS, Data Independence is a feature that allows us to change the database schema at one level of the system without having to change the schema at the next higher level."

Using data independence, we can keep the data separate from all programs, which can be easily understood through the three-schema architecture.

Types of Data Independence

There are two types of data independence:

  • Logical Data Independence
  • Physical Data Independence

Logical Data Independence

The ability to change the logical schema (conceptual level) without changing the external schema (view level) is called logical data independence.

It is used to separate the external schema from the logical schema. If we make any changes at the conceptual level of the data, it does not affect the view level. This happens at the user interface level.

For example, it is possible to add or delete new entities and attributes in the conceptual schema without making any changes to the external schema.

Physical Data Independence

The ability to make changes in the physical schema without making any changes to the logical schema is called physical data independence.

If we change the storage size of the database system server, it will not affect the conceptual structure of the database. It is used to separate the conceptual level from the internal level. This happens at the logical interface level.

For example, changing the location of the database from the C drive to the D drive.

Difference between Physical and Logical Data Independence

Physical Data Independence Logical Data Independence
It is mainly concerned with how data is stored in the system. It is mainly concerned with changes in the structure or data definition.
It is easier to achieve than logical independence. It is more difficult to achieve than physical independence.
Changes at the physical level usually do not require changes at the application program level. Changes at the logical level often require changes at the application program level.
It relates to the internal schema. It relates to the conceptual schema.
Changes at the internal level may or may not be needed to improve the structure. Changes at the logical level are significant whenever the logical structure of the database needs to be changed.
Example: Changes in compression techniques, hashing algorithms, storage devices, etc. Example: Adding/modifying or deleting a new attribute.