Multi-Type Sub-Indices for NoSQL Database Search

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

NoSQL databases face significant delays in data search availability due to the time-consuming process of building an entire index, which can take hours, days, or even months, leading to frustration and impact on service level agreements.

Innovation Solution

The method involves dividing the NoSQL database into physical data ranges and building multiple sub-index types, such as geospatial and B-tree indices, to accelerate data availability for query, allowing sub-indices to be used as soon as they are built, even before the complete index is ready.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If an entire index is built for the NoSQL database, then data retrieval speed is improved, but the time required to make data available for query increases significantly (hours, days, or months)

Engineering Contradiction:
Improvedata retrieval speedVSAvoidindex building time
Core Design Contradiction:
SpeedVSLoss of time

Solution Approach 1:

The patent divides the entire index into multiple sub-indices corresponding to different data ranges (hot data ranges and non-hot data ranges). Each sub-index can be built and made available independently, allowing partial index availability rather than waiting for the complete index. This segmentation enables the database to start using available sub-indices immediately while continuing to build remaining sub-indices in the background.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary actions by building sub-indices for hot data ranges first, before the complete index is ready. The system identifies which data ranges are most frequently accessed (hot data) and prioritizes building sub-indices for those ranges, making them available for query operations earlier. This preliminary action allows the database to optimize performance for the most critical data while continuing index construction.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If the entire index is built before making data available, then query performance is improved, but service level agreements are impacted due to delays

Engineering Contradiction:
Improvequery performanceVSAvoidservice delivery speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent applies different qualities to different parts of the index by creating specialized sub-indices for different data ranges. Hot data ranges receive optimized sub-indices built with appropriate data structures and parameters tailored to their access patterns, while non-hot data ranges use different sub-index types. This local optimization ensures that frequently accessed data gets the best performance while allowing the system to deliver service progressively rather than waiting for uniform completion across all data ranges.

Inventive Principle:
Principle #3Local quality

3Loss of time

If sub-index types are built for different data ranges, then data availability is accelerated, but index structure complexity increases

Engineering Contradiction:
Improvedata availability timeVSAvoidindex structure complexity
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The patent implements a dynamic index management system that can adaptively select and build different sub-index types based on data characteristics and access patterns. The system dynamically identifies hot versus non-hot data ranges and automatically chooses appropriate sub-index types for each, rather than using a static uniform indexing approach. This dynamic approach allows the system to manage complexity through automation and adaptation, achieving faster data availability without requiring manual configuration of complex index structures.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS11308058B1Building and using combined multi-type sub-indices to search NoSQL databases
Publication Date: 2022.04.19 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US11308058B1 patent drawing
  • US11308058B1 patent drawing
  • US11308058B1 patent drawing

AI summary

Building and using multiple different types of sub-indices to search a database is provided. A plurality of different physical data ranges is generated within the database based on a set of logical hot data ranges and a set of logical non-hot data ranges to form a set of physical hot data ranges and a set of physical non-hot data ranges. A set of sub-index types is built for each respective data range of the plurality of different physical data ranges within the database using a set of selected high-speed sub-index types for the set of physical hot data ranges and another set of selected sub-index types for the set of physical non-hot data ranges to accelerate data availability for query. An index is built for the database using the set of sub-index types built for each respective data range of the plurality of different physical data ranges within the database.