Directory Image
This website uses cookies to improve user experience. By using our website you consent to all cookies in accordance with our Privacy Policy.

What Is Data abstraction In DBMS And Data Independence?

Author: Akshay Sharma
by Akshay Sharma
Posted: Sep 22, 2022

The complex nature of a database system is known by all. Therefore, it is crucial to perform additional operations to make databases simpler especially if you are working with large and complex databases.

There are multiple methods that you can use to make the DBMS system simpler. One such approach is data abstraction.

The data abstraction in DBMS includes dividing the given database into multiple segments and hiding the data which is not required at every level of the database.

This makes it easy for the user to sort and view the data at each level.

With data abstraction comes data independence!

Most people may get confused when it comes to data abstraction and data independence.

However, The two are generally considered to be the same. Well, that’s not right.

Data independence is nothing but one of the benefits of performing data abstraction. If you are not aware of what these two terms mean or what is the difference between the two, this post will be worth reading.

Let’s check out data abstraction in DBMS and data independence in detail.

Meaning Of Data Abstraction

Data abstraction in DBMS is the procedure of keeping irrelevant information present at each level hidden. It completely depends on the level of abstraction at which information is irrelevant and relevant.

The data abstraction process is crucial when dealing with a larger and more complex DBMS. It will break the given problem into different subproblems and those subproblems become easy to solve and manage.

The Levels Of The Data Abstraction Process

Data abstraction in DBMS is divided into the following three levels:

  • Physical level

  • Logical level

  • View level.

Physical Level

The very first and lowest abstraction level is the physical level. This level describes exactly how the given data is available in the memory of the system.

This level of data abstraction in DBMS handles data storage for the entire database system. A database administrator is responsible for managing this level. This level comprises all the binary files and store files and is dependent on the OS and hardware of your system.

Logical Level

The next level of data abstraction in DBMS is the logical level. This level explains what data is present in the system and what is the relationship between the different sets of data.

This level comprises originally stored data in your database. It explains the complete structure and relationship of the data. Simply said, this level contains a blueprint of your database.

View Level

The last level in the data abstraction is the View level and is designed for the end users.

At this level, the program depicts the data to the end user and hides all the data which is not relevant to them. For example, in any application, you interact with the application only and you are not aware of what and how things work in the background.

This user interface level of the application can be understood as a view level in data abstraction.

As we have said, data independence comes with data abstraction. So, now that you are aware of what data abstraction in DBMS is, let’s have a look at what data independence is.

Meaning Of Data Independence

The data independence term implies that data at each level is independent of other levels. Simply said, it implies modifying data at one level will not affect data at another level. Working on other remaining levels will not be modified by the modifications made on one level.

Data independence is crucial for the system as the difficulty of modifying and handling the data is removed.

The Levels Of Data Independence

Data independence has two types which seamlessly separate all the data levels from one another. The levels of data independence are as follows:

  • Physical level data independence

  • Logical level data independence

Physical Level Data Independence

The physical level of independence gives the capacity to change the contents of the physical levels of the database without having any effect on the next level.

Modification of this level is done to increase the performance of the system. As fast as data grows and becomes more complex, the need to change the physical level also increases. It will help you to upgrade and modify the performance of your whole system.

Some of the frequent changes that need to be made on this level are:

  • Modifying the file system.

  • Modifying the operating system.

  • Data structure modification

  • Modifying the system’s storage device.

Logical Level Data Independence

The logical level of data independence allows you to make changes in this level without making changes in the application and view levels.

However, achieving the logical level of independence is a bit difficult to get because modifying the local level will have an effect on the view level. This is because this level is based on the queries depending on the database’s local schema.

Despite that, the logical level of independence is useful when you have to add new rows, tables, or columns to your database. In such cases, this level will not be affected as the queries are enough to handle the given data.

Data independence has two levels but in some system design books, you may see three levels. This is because the logical level may be divided into two parts to give a better understanding.

Conclusion

Data abstraction is important to maintain the security of data as you can not show every data to the user. There are 3 levels of data abstraction in DBMS which hide irrelevant information at a certain level.

However, when it comes to data independence, it is nothing but one of the advantages of using data abstraction. It ensures that the data at one level is independent of the others.

The two concepts go hand in hand and must not be confused with one another. Therefore, as a programming student, you need to understand and be aware of the difference between data abstraction and data independence.

About the Author

Akshay is a tech expert and dealing with different programming languages i.e Java, Python, Data Science, & Sql.

Rate this Article
Leave a Comment
Author Thumbnail
I Agree:
Comment 
Pictures
  • kissmailkissmails  -  2 years ago

    glaxit.com

    1
Author: Akshay Sharma

Akshay Sharma

Member since: May 18, 2022
Published articles: 5

Related Articles