How Does DBMS Storage Manager Architecture Work?

305.3K views
•
September 13, 2022
by
Neso Academy
YouTube video player
How Does DBMS Storage Manager Architecture Work?

TL;DR

A DBMS storage manager connects application-level requests and processed queries to low-level data stored on disk. It translates data manipulation statements into file-system commands, while its buffer, file, authorization and integrity, and transaction managers coordinate memory use, disk allocation, access controls, constraints, consistency, and concurrent operations.

Transcript

in this presentation we will see about the database system architecture we are now in part one of the database system architecture from the last few presentations we realized the importance of having dbms by organizations because data is crucial and the volume of data handled by dbms is really fascinating because the data that is processed by dbms ... Read More

Key Insights

  • The storage manager is the bridge between application programs, processed queries, and low-level data stored on disk. It receives requests from the query processor and performs the storage operations required to retrieve, insert, delete, or update database data.
  • Main memory is faster than disk storage but cannot hold an entire large database because it has limited capacity and is volatile. Contemporary data volumes therefore require secondary storage and, at greater scales, storage servers, data centers, or cloud infrastructure.
  • A DBMS uses files internally even though it differs from a regular file system. Raw database data is stored on disk using the file-system format supplied by the host operating system, while the DBMS provides more effective organization, storage, and retrieval.
  • The storage manager translates data manipulation language statements into low-level file-system commands. Statements such as SELECT, INSERT, DELETE, and UPDATE describe data operations at a higher level, but the underlying storage activity must be supported by the operating system's file system.
  • The buffer manager fetches required data from disk storage into main memory and decides which data should be cached for faster access. It also manages the mismatch between the database's large size and the smaller capacity of available main memory.
  • The file manager allocates space within disk storage when database data is inserted, deleted, or updated. It also manages the data structures used to represent information stored on disk, connecting the database's logical operations with its physical organization.
  • The authorization and integrity manager determines who may access particular data and verifies that database operations satisfy defined integrity constraints. If a rule states that a balance cannot be less than zero, an operation violating that rule must be rejected.
  • The transaction manager keeps the database consistent despite system, hardware, or software failures. It also coordinates concurrent access so multiple users can work with shared data items at the same time without their operations conflicting with one another.

Explore YouTube Video Summarizer or Get YouTube Transcript Extractor

Questions & Answers

Q: What is the role of a storage manager in DBMS architecture?

A storage manager connects high-level application programs and query-processing activities with low-level data stored on disk. It receives requests from the query processor, translates data manipulation statements into file-system commands, and supports storing, retrieving, and updating data. Its internal managers coordinate memory, disk space, authorization, integrity constraints, transaction consistency, and concurrent database operations.

Q: Why can main memory not store an entire large database?

Main memory cannot reliably store an entire large database because database volumes can range from kilobytes through yottabytes and may grow beyond those listed scales. Although main memory is fast, it is volatile and has insufficient capacity for such workloads. Large databases therefore rely on disk storage and may also require storage servers, data centers, or cloud infrastructure.

Q: How does a DBMS use the operating system's file system?

A DBMS stores raw, low-level data on disk using the file-system format provided by the host operating system. Although databases are internally made up of files, they do not operate like ordinary file systems. The DBMS adds specialized organization and management so data can be stored and retrieved effectively while addressing limitations associated with regular file-system approaches.

Q: How are DML statements handled by the storage manager?

The storage manager translates data manipulation language statements into low-level file-system commands that the host operating system can support. DML statements describe operations involving database data, including SELECT, INSERT, DELETE, and UPDATE. Through this translation, requests originating from users or applications can ultimately modify, retrieve, or store raw data within files on disk storage.

Q: What does the buffer manager do in a database system?

The buffer manager fetches data from disk storage and places it into main memory when it is needed. It also decides which data should remain cached in main memory to support faster access. This role is crucial because a database can be much larger than main memory, requiring careful management of which portions are loaded at any given time.

Q: What does the file manager do in DBMS architecture?

The file manager allocates space on disk storage for database information. This allocation must support changes caused by inserting new data, deleting existing data, and updating stored data. The file manager also manages data structures that represent information on disk, helping the storage manager organize the physical files used internally by the database system.

Q: How does a DBMS enforce authorization and integrity constraints?

The authorization and integrity manager controls who can access particular database data and checks whether operations satisfy all defined integrity constraints. For example, if the database requires a balance not to fall below zero, an operation producing a negative balance must be aborted or denied. This component therefore protects both permitted access and valid data states.

Q: How does the transaction manager support consistency and concurrency?

The transaction manager helps the database remain consistent when system failures or hardware and software failures occur. It also manages concurrent operations on shared data. Multiple users may access the same shared data item at the same time, but the transaction manager ensures that their activities do not conflict with one another and damage database consistency.

Summary & Key Takeaways

  • Database systems must manage data volumes that can exceed the capacity of main memory and individual secondary storage devices. Main memory is fast but volatile, while disks and solid-state drives may be insufficient for enormous datasets. Storage servers, data centers, and cloud systems therefore support the large-scale storage needs of contemporary applications.

  • The database system architecture places users and their preferred tools above two major components: the query processor and storage manager. Databases are represented as residing in disk storage. The storage manager receives requests from the query processor and connects higher-level application operations with raw data organized through the host operating system's file system.

  • The storage manager contains the buffer manager, file manager, authorization and integrity manager, and transaction manager. Disk storage also includes data files, a data dictionary, indices, and statistical data. Together, these components support data retrieval, storage, updating, memory caching, disk-space allocation, constraint enforcement, access authorization, consistency, and nonconflicting concurrent operations.


Read in Other Languages (beta)

Share This Summary 📚

Explore More Summaries from Neso Academy 📚