0% found this document useful (0 votes)
274 views2 pages

DBMS Storage Management Overview

Uploaded by

msreevanicse
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
274 views2 pages

DBMS Storage Management Overview

Uploaded by

msreevanicse
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd

Data storage and querying:

Generally the user interacts with the database management system through
an interface. The DBMS does the processing and retrieves the data from the
database.
Database system is divided into two modules,
1. Storage management
2. Query processing.
Data stored in database may costs more than trillion bytes of data. Main
memory cannot accommodate for such large amount of data, hence the data
is stored in disk. But for processing data needs to be transferred from disk to
the main memory. But this transfer consumes processor time; hence the
data needs to be arranged such that the data transfer rate is not too high.
This is taken care by storage manager.
The main task of database system is to provide the user with simplified view
of data. This is achieved by hiding the physical level implementation details
from the user, the user is provided with only high-level view.
Storage Management
, storage manager is responsible for storing, retrieving and modifying data
within the database. Storage manager consists of the following key
components,
(i) Transaction manger
(ii) File manager
(iii) Buffer manager.
(iv) Integrity manager
(v) Authorization manager.
(i) Transaction Manager: It manages the transactions so as to ensure that
data remain in consistent state even after the system failures. It also enables
the execution of concurrent transactions without any conflicts.
(ii) File Manager: It manages the process of allocating disk and data
structures that are used for representing the information saved on disk.
(iii) Buffer Manager: It handles the transfer of data from disk onto the main
memory and decides what data must be kept in main memory.
(iv) Integrity Manager: It verifies whether the integrity constraints defined
on the data are satisfied.
(v) Authorization Manager: It checks the authority of users and allows only
authorized users to access the data.
The following are the different data structures used by storage manager
a)Data Files
These are the files that contain the database.
(b) Data Dictionary
It maintains metadata regarding the different data structures used in
database.
(c) Indices
It provides fast access to the required data items.
1. Query Processor:
The Query Processor contains the following components:
a) DDL Interpreter: Interpreters DDL statements and
records the definition into data dictionary.
b) DML Compiler: Translates DML statements into an
evaluation plan consisting of low level instructions that the
query evaluation engine understands. It translates the
query into a number of evaluation plans. DML Compiler
performs query optimization

i.e. selects the optimal evaluation plan for execution of query.


c) Query Evaluation Plan: DML compiler converts DML statements into
low level instructions which are evaluated by query evaluation machine

Common questions

Powered by AI

The Authorization Manager enhances security within a database system by verifying the identities and permissions of users attempting to access the database. It checks the authority of users against predefined access controls and ensures that only users with the necessary permissions can perform certain operations on the database. This security layer prevents unauthorized data access or modifications, thereby protecting the integrity and confidentiality of the data stored within the system .

The Buffer Manager plays a critical role in database systems by managing the transfer of data between disk storage and the main memory. Its primary responsibilities include deciding which data should reside in main memory, effectively minimizing the processor time consumed during data transfer, and reducing the rate of data transfer from disk. By doing so, the Buffer Manager optimizes system performance, as it ensures that frequently accessed data is readily available in main memory, thus accelerating data retrieval and processing speeds .

Data files, data dictionaries, and indices each play a crucial role in enhancing a database system's functionality and efficiency: - Data Files: Contain the actual data stored in the database, representing the primary storage mechanism from which information is queried and manipulated . - Data Dictionary: Maintains metadata about the database schema, structures, and constraints, allowing for efficient schema management and ensuring consistency in data definitions across the database . - Indices: Offer a fast access path to data items, improving query performance by significantly reducing the time needed to search for specific records within data files . Together, these components ensure effective data storage, quick retrieval, and easy management of database structure and integrity.

Hiding physical level implementation details from users provides a simplified view of data by abstracting the complexity of data storage and manipulation. Users interact with a logical view, where they can perform operations without needing to understand the underlying mechanics of data retrieval, storage formats, or disk operations. This abstraction is achieved through the database management system, which handles the intricate tasks associated with physical data management, thus allowing users to focus on higher-level data manipulation according to their needs and enabling easier interaction with large and complex datasets .

The Query Processor optimizes database query execution through its components: - DDL Interpreter: Records definitions into the data dictionary by interpreting Data Definition Language (DDL) statements, ensuring that the database schema is accurately maintained . - DML Compiler: Translates Data Manipulation Language (DML) statements into several evaluation plans consisting of low-level instructions. The compiler selects the optimal evaluation plan for query execution, performing query optimization to improve performance . - Query Evaluation Plan: Represents the concrete steps derived from translated DML statements, directed by the query evaluation engine for efficient execution . These components ensure that queries are executed efficiently by encoding and optimizing the necessary steps for retrieval or manipulation of data.

The Storage Manager in a database system is responsible for storing, retrieving, and modifying data within the database while ensuring efficient data handling through key components. These components include: - Transaction Manager: Ensures data consistency even after system failures and enables concurrent transaction execution without conflicts . - File Manager: Manages the allocation of disk and data structures to represent and store information on disk . - Buffer Manager: Handles the data transfer between disk and main memory, deciding what data should remain in memory to minimize the transfer rate and thus improve processing efficiency . - Integrity Manager: Verifies that integrity constraints on the data are maintained . - Authorization Manager: Ensures that only authorized users can access the data by checking user authority . These components work together to manage the large volumes of data efficiently through structured storage and by optimizing the movement of data to and from disk storage.

The Transaction Manager ensures data consistency by managing transactions in a way that maintains the atomicity, consistency, isolation, and durability (ACID) properties of the database. It is designed to maintain data in a consistent state, even in the event of a system failure. It achieves this by using mechanisms such as transaction logs, which record the changes made by transactions. If a failure occurs, the system can use these logs to rollback incomplete transactions or to redo committed transactions that may not have been properly saved to disk, thus preserving data consistency .

The Storage Manager employs several strategies to manage disk space and improve data retrieval efficiency through its components: - File Manager: Allocates disk space and organizes data structures on disk to optimize the storage and retrieval of data. It ensures efficient usage of disk space by managing data fragmentation and layout . - Buffer Manager: Minimizes latency and optimizes data transfer rates by keeping frequently accessed data in main memory, thus reducing the need for repeated disk accesses . - Indices: Use data structures that allow fast data access, reducing the time needed to locate specific data items on the disk . These strategies combine to facilitate efficient data storage, retrieval, and overall performance optimization of the database system.

Query optimization, as performed by the DML Compiler, is significant because it determines the most efficient way to execute a query by evaluating multiple potential execution plans. The DML Compiler translates high-level queries into low-level operations that the database system can perform. Through query optimization, the compiler assesses these operations for their performance costs, such as execution time and resource usage, and selects the optimal plan. This process reduces execution time, resource consumption, and ultimately enhances the overall performance and efficiency of the database system .

The Integrity Manager upholds data quality by ensuring that all integrity constraints defined on the database are enforced at all times. It checks the data against these constraints during data entry and during updates to prevent anomalies and maintain consistency across the dataset. This guarantees that the data adheres to defined rules such as uniqueness, referential integrity, and domain constraints, thus preserving the accuracy and reliability of the information stored within the database .

You might also like