B-Tree Query Offloading With In-Memory Index Pages
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
B-tree based retrieval methods in host devices and storage devices result in excessive I/O operations, leading to high read overhead, bandwidth consumption, and performance degradation due to unnecessary data movement between the host and storage devices.
Innovation Solution
A method and system for B-tree retrieval that includes acquiring and packaging query information, sending B-tree query requests through a predetermined protocol, and traversing both primary and secondary indexes to load relevant data pages into memory, optimizing data retrieval by reducing unnecessary I/O operations.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If B-tree based retrieval is performed using traditional methods, then data can be retrieved from storage, but excessive I/O operations occur leading to high read overhead and bandwidth consumption
Solution Approach 1:
The patent applies preliminary action by pre-loading index root pages into memory before actual query execution. The host device acquires page number information of root nodes from the storage device and loads these root pages into its memory in advance, so that when a B-tree query is executed, the traversal can proceed using in-memory data structures without repeatedly accessing storage for index pages, thereby reducing I/O operations and bandwidth consumption
Solution Approach 2:
The patent extracts only the necessary index root pages into the host device's memory rather than loading entire tables or all index pages. By selectively extracting just the root pages of primary and secondary indexes needed for query processing, the system minimizes memory usage while eliminating the need to repeatedly read index structures from storage during query execution
2Reliability
If B-tree query requests traverse secondary indexes, then complete row data can be retrieved, but multiple I/O operations are required navigating through branch nodes to leaf nodes
Solution Approach 1:
The system performs preliminary action by loading all necessary index root pages into memory before query execution. This allows the B-tree traversal to operate entirely on in-memory data structures, eliminating the time-consuming I/O operations that would otherwise occur during the traversal from branch nodes to leaf nodes, while maintaining complete data retrieval accuracy
Solution Approach 2:
The patent merges the primary index and secondary index traversal operations into a unified process that occurs entirely in memory. By combining the page number information from both index types and loading them together, the system performs both index traversals using in-memory B-tree structures, eliminating repeated I/O operations and reducing overall query execution time
3Ease of operation
If query information is sent to storage device, then data can be retrieved from storage, but data migration between host and storage device increases
Solution Approach 1:
The patent extracts only the essential query information (page number information of root nodes) to the host device's memory, leaving the actual data pages in storage. This selective extraction allows the host to perform B-tree traversal and identify needed pages using in-memory index structures, then retrieve only those specific data pages, minimizing data migration while maintaining simple query processing operations
Data Source
AI summary
There is provided a host device, a storage device and a system and a method thereof. A B-tree based retrieval method performed by the host device includes acquiring query information from a storage of a storage device based on a B-tree query request for a table; sending the query information to the storage device for storing into a memory of the storage device; sending the B-tree query request to the storage device to initiate a query for the table at the storage device; and receiving a result of the B-tree query request from the storage device.


