Index Nodes with Descriptor-Based Sibling Pointers
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Storing sibling pointers in B-link trees within mass-storage devices leads to inefficiencies and complexity, particularly when nodes need to be rearranged for optimal access, resulting in time delays and computational inefficiency due to the need for complex schemes to manage disk block organization.
Innovation Solution
The sibling pointers are stored within node descriptors in memory rather than in the nodes themselves, allowing nodes to be migrated to mass-storage devices without pointers, which are then reconstructed when needed for concurrent access and efficient organization on mass-storage devices.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If sibling pointers are stored in nodes within mass-storage devices, then concurrent access and tree traversal are enabled, but device complexity and management overhead increase significantly
Solution Approach 1:
The patent extracts sibling pointers from the node storage structure and places them in a separate descriptor structure. When nodes are stored in mass-storage devices, only the essential node data is persisted, while the sibling pointers are managed separately in memory through descriptors. This separation eliminates the complexity of managing pointers within the stored nodes themselves while preserving the ability to traverse and access nodes concurrently.
Solution Approach 2:
The patent introduces descriptor structures as intermediary objects between the stored nodes and the access operations. These descriptors hold the sibling pointer information and act as mediators that enable tree traversal and concurrent access without requiring the pointers to be embedded in the actual node storage. This intermediary layer simplifies the mass-storage device requirements while maintaining full functionality.
2Productivity
If nodes are migrated to mass-storage devices without pointers, then storage efficiency and organization flexibility improve, but access speed and reconstruction overhead decrease
Solution Approach 1:
The patent performs preliminary actions by pre-computing and storing descriptor information that captures the hierarchical relationships and sibling pointers. When nodes are migrated to mass-storage devices, the descriptors are prepared in advance and stored separately. During access operations, the reconstruction process is simplified because the descriptor data is already available, reducing the time penalty while maintaining the benefits of pointer-free node storage.
3Adaptability or versatility
If sibling pointers are removed from stored nodes, then mass-storage device organization flexibility improves, but in-memory data structure functionality is lost
Solution Approach 1:
The patent segments the data structure into two distinct components: the node data itself (stored in mass-storage devices without pointers) and the descriptor structures (stored in memory with sibling pointers). This segmentation allows the node storage to be highly flexible and adaptable to various mass-storage organization schemes, while the descriptor structures in memory maintain the complete data structure functionality and integrity. Each component serves its optimal purpose without the constraints of the other.
Data Source
AI summary
The present application is directed to an indexing system. In one example, the indexing system includes one or more processors, one or more electronic memories that provide random access memory, one or more mass storage devices that provide persistent data storage, and one or more indexing routines, executed by the one or more processors, that create and manage an index data structure comprising nodes that include key-values/reference pairs, the index data structure additionally including a sibling reference for each index-data-structure node stored in the one or more electronic memories, the one or more indexing routines removing, from the index data structure, the sibling references for index-data-structure nodes when transferring the index-data-structure nodes from the one or more electronic memories to the one or more mass storage devices.


