Sorted Index Query Processing for Distinct Value Retrieval

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing datastore server systems face inefficiencies in processing complex queries due to the resource-intensive nature of large data volumes, particularly when using conventional relational database approaches that are incompatible with sorted indexes, which are optimized for speed and efficiency in data retrieval.

Innovation Solution

A method is implemented at a server system to efficiently process 'select distinct' queries by identifying and utilizing sorted index portions, where index entries are sorted in a predefined order, allowing for the retrieval and comparison of candidate value combinations to identify distinct property values satisfying requestor-specified filter criteria, thereby optimizing query processing.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If conventional relational database approaches are used to process complex queries, then query processing can be performed using standard methods, but resource consumption increases significantly due to large data volumes

Engineering Contradiction:
Improvequery processing efficiencyVSAvoidresource consumption
Core Design Contradiction:
ProductivityVSUse of energy by moving object

Solution Approach 1:

The patent divides the index into multiple sorted index portions (e.g., by entity type, property, or value ranges) and processes queries by identifying and retrieving only the relevant index portions that contain distinct value combinations matching the query criteria, rather than scanning the entire index or underlying data storage

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent pre-sorts index entries into organized index portions based on entity properties and relationships before query execution. This preliminary organization allows the system to quickly locate and retrieve only the necessary index portions containing distinct value combinations, avoiding the need to process large volumes of unorganized data during query execution

Inventive Principle:
Principle #10Preliminary action

2Speed

If sorted indexes are used to improve data retrieval speed, then search efficiency increases, but compatibility with conventional relational database query processing methods decreases

Engineering Contradiction:
Improvedata retrieval speedVSAvoidquery processing compatibility
Core Design Contradiction:
SpeedVSAdaptability or versatility

Solution Approach 1:

The patent creates a query processing mechanism that can handle multiple types of queries (SELECT DISTINCT, aggregate functions, filtering operations) using the same sorted index structure. The system identifies relevant index portions and processes various query types by traversing and comparing values within those portions, making the sorted index approach versatile across different query scenarios while maintaining high retrieval speed

Inventive Principle:
Principle #6Universality (Multi-functionality)

3Measurement precision

If the entire index is traversed to identify distinct value combinations, then complete results are obtained, but processing time increases due to unnecessary index entries

Engineering Contradiction:
Improvequery result accuracyVSAvoidprocessing time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent extracts and retrieves only the specific index portions that contain distinct value combinations matching the query criteria, rather than traversing the entire index. By identifying and isolating the relevant portions based on query filters and sorting criteria, the system obtains complete and accurate results while minimizing processing time by excluding unnecessary index entries from the traversal

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS9342553B1Identifying distinct combinations of values for entities based on information in an index
Publication Date: 2016.05.17 GOOGLE LLC
  • US9342553B1 patent drawing
  • US9342553B1 patent drawing
  • US9342553B1 patent drawing

AI summary

A server system having one or more processors and memory receives, from a requestor, a select distinct query. In response to the query, the server system identifies a set of index portions according to requestor-specified filter criteria. The server system identifies one or more distinct value combinations for entities satisfying the filter criteria, including: obtaining an initial value of a query cursor; retrieving candidate value combinations; comparing candidate value combinations to identify distinct value combinations, if any, in accordance with the query; and updating the current value of the query cursor. The server system repeats the retrieving candidate value combinations and the comparing candidate value combinations one or more times for the set of index portions until at least a respective distinct value combination has been identified and transmits information corresponding to the respective distinct value combination to the requestor.