data abstraction, data independence and levels of abstraction

 


Data Abstraction

Data Abstraction refers to the process of hiding unwanted/unnecessary data from the user.
for example if we are using social apps like whatsapp we can send and receive messages but we don't know how data is stored, where data is stored ,which data structure is used, all this information is not given to user.

There are three levels of data abstraction and to achieve data independence we divide data abstraction in three levels. Data Independence means there should be no direct interaction between user and data. 

  1. View Level
  2. Conceptual Level
  3. Physical Level
levels of data abstraction



 View Level or External Schema

This level tells the application about how the data should be shown to the user. lets take university example , the students can view their marks but they cant change their marks .where as the faculty can change the students marks , so students and faculties have different view according to the authorization provided by the university


 Conceptual Level or Logical Level

This level tells how the data is actually stored and structured .relational model ,how many tables are there, what are table names ,what is relation between them ,constraints ,key all this information is defined in logical level.


 Physical Level or Internal Schema

in the Physical level tells us where data is stored ,how data is stored, which data structure is used, all this information is given by physical layer


Data Independence is of two types:
1)logical/conceptual data independence: user is made independent of logical structure ,how many tables are there, what are table names ,what is relation between them ,constraints ,key  all this information is not given to user

2)physical data independence: user is made independent of how data is stored, where data is stored ,which data structure is used, all this information is not given to user.



darkmode