Data Independence in DBMS

Data independence: 

Data indenpendence is the ability to modify a schema definition in one level without affecting a schema definition in the next higher level. It is the type of Data transparency that matters for a centralised DBMS. Data independence refers to the immunity of user applications to changes made in the definition and organization of Data. And also the major objective for three-level of Data-abstraction is to provide data independence, which means that upper levels are unaffacted by changes in lower levels. There are Two levels of Data-Independence: 

   1. Physical Data independence 
   2. Logical Data Independence

1. Physical Data independence :- The physical structure of the data is referred to as "physical data description". Physical data independence deals with hiding the details of the storage structure from user applications. The application should not be involved with these issues since, conceptually, there is no difference in the operations carried out against the data. The physical Data Independence is the ability to modify the physical schema without requiring any change in application programs. Modifications at the internal (physical) levels are occasionally necessary to improve performance. Possible modifications at internal levels are change in file structure, compression techniques, hashing algorithms, storage devices, etc. Comparatively, it is easy to achieve physical data independence.

2. Logical Data Independence :- Logical data is data about database, that is, it stores information about how data is managed inside. For example, a table (relation) stored in the database and all its constraints, applied on that relation. Logical data independence is ability to modify the conceptual schema without requiring any change in application programs. Modification at the logical levels are necessary whenever the logical structures of the database is altered. Logical data independence separates external level from the conceptual view. Comparatively it is difficult to achieve logical data independence. Application programs are heavily dependent on logical structures of the data they access, so any change in logical structure  also requires programs to change.

Next Topic :

No comments:

Post a Comment