Monday 29 August 2016

Data Independence

Data independence is a separation of data and application program. Data independence is one of the most important advantages of the three level architectures (3-L architecture). A traditional file processing system makes the application program and data dependent on each other, i.e. we want to make a change in the data we will have to make change in the associated application also.
 Data independence is automatically introduced to the system this facility is provided by three level architectures. In other words we can say that the major objective of the three level architectures is the data independence. If we do not have data independence then whenever there will be a change made to the internal or physical level the application will not be able to access the change made in the internal or physical level any more. As a result these applications will stop working and ultimately the whole system may fail to operate.
Once we have the data, database and data applications independent of each other we can easily make change to any of the component of the system, without effecting the functionality and an operation of other inter related component.
 Any change in the lower level of the three level architectures does not affect the structure or the functionality on upper level this is another advantages of data independence.
Data independence can be classified into two type based on the level at which the data independence is achieved.
·         Logical data independence
·         Physical data independence
1.    Logical data independence
Logical data independence provides the independence in a way that changes in the conceptual model do not affect the external views. Although we have data independence at different level but not all changes are accepted at different levels. There may be some changes which may cause damage or inconsistency in the database levels.
The change which can be done transparently may include the following
Adding a file to the database, adding a new field in a file, changing the type of a specific field
for example deleting an attribute from database structure this could be serious because any application using this attribute may not be able to run any more so having data independence available to us we still get problem after a certain change it means that before making a certain change its impact should also be kept in mind and changes should be made while remaining in the limits of the data independence.
2.    Physical data independence
Physical data independence is that type of independence that provides us changes transparency between the conceptual and internal level. I.e. the changes made to internal level shall not affect the conceptual level. Although the independence exist but should not exceed the liberty offered by the physical data independence.
The change which can be done may include:-
The change made to the file organization by implementing indexed or sequential or random access at a later stage, changing the storage media, or simply implements a different technique for managing file indexed or hashes.




No comments:

Post a Comment