Hybrid Database Indexing for Query Speed and Space Efficiency
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing database indexing techniques, such as B+ tree and bitmap indexes, face inefficiencies in managing large datasets, leading to increased query processing times and resource consumption, particularly when dealing with diverse data access patterns and frequent data manipulation operations.
Innovation Solution
A hybrid indexing technique that combines B+ tree and bitmap indexes by dynamically selecting the appropriate indexing scheme based on monitoring result information, using B+ tree for low-frequency data and bitmap for high-frequency data, thereby optimizing index structure and reducing query processing time.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If a single indexing scheme (B+ tree or bitmap) is used for all data, then the index structure is simple to implement, but query processing time increases and performance deteriorates for diverse data access patterns
Solution Approach 1:
The patent segments the index structure into multiple sub-indexes (first sub-index using B+ tree, second sub-index using bitmap) that operate independently on different portions or types of data. This allows each sub-index to be optimized for its specific data characteristics while maintaining overall system performance.
Solution Approach 2:
The patent implements dynamic selection of indexing schemes by maintaining metadata that tracks access frequencies and query patterns. The system dynamically determines which sub-index (B+ tree or bitmap) to use based on real-time monitoring of data access patterns, allowing the index structure to adapt to changing workloads.
2Quantity of substance
If B+ tree indexing is used for all data, then the index structure handles frequent updates well, but index size increases and space efficiency decreases for high-frequency data with repetitive values
Solution Approach 1:
The patent applies different indexing schemes to different data segments based on their local characteristics. The bitmap sub-index is specifically applied to high-frequency data with repetitive values where space efficiency is critical, while the B+ tree sub-index handles other data types. This local optimization reduces overall index size while maintaining query performance.
3Quantity of substance
If bitmap indexing is used for all data, then the index size is minimized for high-frequency data, but query processing time increases for low-frequency data with diverse access patterns
Solution Approach 1:
The system dynamically monitors query patterns and access frequencies to determine which sub-index should serve which data segment. When low-frequency data with diverse access patterns is detected, the system routes queries to the B+ tree sub-index, preventing time loss while maintaining the space efficiency of bitmap indexing for appropriate data types.
4Speed
If indexing is applied to large datasets, then data retrieval speed improves, but the amount of resources consumed in maintaining and traversing the index increases
Solution Approach 1:
The patent segments the large dataset into multiple indexable portions, each handled by appropriate sub-indexes. This segmentation reduces the traversal depth and complexity for any single query, lowering the computational resources required for index maintenance and traversal while preserving fast retrieval speeds.
Data Source
AI summary
Disclosed is a method performed by a database management system (DBMS) according to an exemplary embodiment of the present disclosure. The method may create a database index structure for pointing a data storage location based on monitoring result information depending on a monitoring algorithm in the database management system. The database index structure may at least partially include a sub index structure of a first level and a sub index structure of a second level which is lower than the first level, the second level sub index structure may include a plurality of columns, a first column among the plurality of columns of the second level sub index structure may include key values, a second column among the plurality of columns of the second level sub index structure may include ROWID values corresponding to rows of a data block, and a third column among the plurality of columns of the second level sub index structure may include optimized index values set based on the monitoring result information.


