Allocation Map Integrity via Obsolete Entry Reuse
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing database systems face challenges in ensuring the integrity of allocation maps during interrupted writes, particularly due to processing module or storage device failures, which can lead to invalid allocations and require additional I/O operations or significant storage space for duplicate data.
Innovation Solution
The system employs an allocation map with map blocks containing logical extent identifiers, physical extent information, and obsolete indicators, where obsolete map entries are reused by copying physical extent information and updating status flags to maintain map integrity with minimal extra I/O operations and space requirements.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If separate copies of allocation map data are kept to ensure integrity during interrupted writes, then reliability is improved, but device complexity and storage space requirements increase
Solution Approach 1:
The allocation map is segmented into multiple map blocks, each containing multiple map entries. This segmentation allows the system to treat individual blocks independently, enabling recovery mechanisms that restore integrity without requiring complete duplicate copies of the entire map structure.
Solution Approach 2:
The system marks map entries as obsolete rather than creating permanent duplicate copies. When interrupted writes occur, the allocator recovers by identifying and restoring obsolete entries to their correct states, eliminating the need for separate backup copies while maintaining integrity.
2Reliability
If temporary duplicate copies of allocation map data are created for recovery, then reliability is improved, but storage space requirements increase
Solution Approach 1:
Instead of maintaining permanent duplicate copies, the system uses a single allocation map where entries are marked as obsolete during recovery operations. This eliminates the need for additional storage space while still providing recovery capability through the obsolete markers themselves.
Solution Approach 2:
The system creates a logical copy of allocation information within the same physical structure by marking entries as obsolete. This allows recovery without physical duplication, as the obsolete markers serve as the copy mechanism within the existing map structure.
3Reliability
If multiple I/O operations are performed to ensure allocation map validity during failures, then reliability is improved, but productivity decreases
Solution Approach 1:
The system performs preliminary actions by marking map entries as obsolete before writing to disk. This preparation ensures that if an interrupted write occurs, the recovery process can immediately use the pre-marked obsolete entries without requiring additional I/O operations to identify or restore them.
Solution Approach 2:
The allocation map structure itself provides the recovery mechanism through its own obsolete markers. The system uses its existing data structure to serve the recovery function, eliminating the need for separate recovery operations or additional I/O calls to validate integrity.
Data Source
AI summary
A method and system for allocating storage space on a storage device to a requesting entity. The storage device includes a set of extents. An allocation map is maintained in computer memory. The allocation map has a plurality of map blocks, the map blocks each having a plurality of map entries. The map entries include respective logical extent identifiers, physical extent information and obsolete indicators. An invalid extent logical identifier represents a free extent and a valid extent identifier represents a prior allocated extent. An obsolete indicator marks a map entry as either current or obsolete. In one technique an extent allocation request is received from the requesting entity. A first map block is selected having a first map entry marked as obsolete. A second map block is selected having a second map entry not marked as obsolete. Physical extent information is copied from the second map entry to the first map entry. The logical extent identifier is assigned to the first map entry. The first map entry is marked as current and the second map entry is marked as obsolete. The storage allocation system includes a disk storage device having a set of extents. A requesting entity is configured to request allocation of one of the extents. An allocation map is maintained in computer memory. An allocator is configured to allocate one of the extents on the disk device to the requesting entity.


