In this era of technology and data manipulation, we have to efficiently manage and store massive volumes of data. Accomplishing this task is easier said than done. To tackle this issue, databases were introduced, which revolutionized the storage and manipulation of data. A database is a system used to store and manage large amounts of information in a structured way. It provides a framework for organizing data into tables with rows and columns, allowing users to perform queries, updates, and other operations to handle data efficiently.
Let’s suppose you have an e-commerce business with a vast choice of products. Now, the first step to managing your products would be to store them all in a warehouse. And to make finding your way in the warehouse easier and more efficient, all the locations of the products would be assigned a product label. This label would be determined according to the type of product, its location in the warehouse, and other relevant details for easier identification, tracking, and management. In this example, we’ll take the vast number of products as large amounts of data, and the warehouse can be considered a database. Moreover, as each product receives a product label, each element in a database is assigned a unique identifier or key for easier data manipulation. Databases are generally accepted as the "backbone" or "foundation" of modern information systems. The most common uses of databases are shown in the illustration below.
To represent how the data should be stored, organized, and accessed within a database, a schema is used. A schema is a logical and conceptual way of organizing and defining the structure of a database, and it is instrumental in enabling different levels of data abstraction. Now, in this Answer, we’ll be delving into the levels of data abstraction and showing how developers use the method of data abstraction.
Data abstraction, in simple terms, refers to the process of hiding the complex details of how data is stored and manipulated while providing a simplified and easy-to-understand view of the data to users and applications.
Think of data abstraction as a mask or layer that conceals the inner workings of a system, allowing users to interact with the data without needing to know the intricate details. It provides a higher-level, more manageable representation of data, making it easier for people to work with and understand the information. For example, when you use a smartphone, you don't need to know how the device's hardware and software work. Instead, you interact with the icons, apps, and widgets, which abstract the underlying complexity. This way, data abstraction enables users to focus on what they want to accomplish rather than being burdened with the complexities of data storage and processing.
To understand how the schemas and the levels of data abstraction correlate, we see that the schemas play a crucial role in enabling different levels of data abstraction. Each level of data abstraction relies on a schema to provide a specific perspective or view of the data. These are the levels of data abstraction:
Physical
Logical
View
At the physical level, the database management system deals with the physical implementation and storage aspects of data in the database. This entails making decisions on how data is stored on storage media, such as hard drives or solid-state drives. The process involves selecting data formats, storage structures, data indexing techniques, and access paths to efficiently manage data on physical storage devices. For instance, it determines whether to use row-based or column-based storage for a table, how data is organized on the disk, and what indexing mechanisms to employ for faster data retrieval. This level is crucial in ensuring optimal performance and effective utilization of storage resources in a database system.
At the logical level, the database management system presents a conceptual view of the overall structure of the database, encompassing tables, columns, and their relationships. Here, the significance lies in organizing and establishing data relationships without delving into the physical storage aspects. Entities (tables), attributes (columns), and their connections are defined, providing a high-level understanding of the data organization.
For instance, on Educative's platform database, the logical level would define tables for users, courses, and authors, along with the
In summary, the logical level focuses on the abstract representation of data structure and relationships, facilitating a clear and comprehensible way of viewing the database's conceptual blueprint.
At the view level, database management systems provide customized and simplified data views tailored to specific users or applications. This level enables users to interact with personalized perspectives of the data without accessing the entire database structure. Through the use of views, users can see a subset of data relevant to their needs while hiding unnecessary details and ensuring data security.
For instance, in Educative Company's human resources database, distinct views can be designed to cater to different user roles. An "HR Manager View" might present comprehensive employee information, including performance records and payroll details, granting HR managers the necessary access for decision-making and workforce management. On the other hand, an "Employee Self-Service View" could provide employees access to their personal details, such as leave balances and training records, without revealing sensitive HR data.
Let's take a short quiz about all the information we went through.
Assessment
Which of the following best defines the physical level of data abstractions in a database management system?
The physical level focuses on providing customized and simplified data views for specific users or applications.
The physical level involves understanding the meaning and interpretation of user queries within their specific context.
The physical level represents the overall logical structure of the database, including tables, columns, and relationships.
The physical level deals with the physical implementation and data storage details in the database.
Free Resources