Distributed Query Execution with Two-Tiered Indexing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing relational database management systems (RDBMSs) face challenges in efficiently querying large datasets, particularly when dealing with trillions of records and petabytes of data, as they often require massive server clusters and struggle with sophisticated queries like JOIN operations, leading to performance issues and increased hardware investment.

Innovation Solution

A system that indexes files using a two-tiered index comprising an index dictionary and a Bloom filter, dynamically generates scripts for parallel execution across a cluster of computing devices, and aggregates results efficiently, allowing for time-based file searching and statistical summarization without the need for extensive hardware investment.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If existing RDBMS solutions are used to query large datasets, then query functionality is provided, but hardware requirements increase proportionally and query performance degrades

Engineering Contradiction:
Improvequery performanceVSAvoidhardware requirements
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system segments data into buckets organized by time windows and segments the indexing structure into a two-tiered index (index dictionary and Bloom filter). This allows parallel processing of queries across different time windows and reduces the data processing burden on any single node, thereby improving query performance without requiring proportional increases in hardware resources.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system performs preliminary indexing of data into buckets with time window information before queries are executed. The two-tiered index is pre-built to enable fast lookup during query time, avoiding the need to scan entire datasets. This preliminary organization of data significantly accelerates query performance without requiring extensive hardware investment.

Inventive Principle:
Principle #10Preliminary action

2Adaptability or versatility

If sophisticated search techniques like regex and JOIN operations are implemented, then query capability is improved, but system performance breaks down on massive datasets

Engineering Contradiction:
Improvesearch capabilityVSAvoidquery execution speed
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The system dynamically generates execution plans and query optimizations based on the specific query type and data characteristics. For sophisticated queries like regex searches or JOIN operations, the system adapts its processing strategy by selecting appropriate algorithms and resource allocation, maintaining high performance across diverse query workloads without breaking down on massive datasets.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The two-tiered index structure acts as an intermediary between the raw data and query processing. The index dictionary provides fast lookup for common search patterns while the Bloom filter efficiently filters out non-matching records. This intermediary structure enables sophisticated search techniques to operate efficiently on massive datasets by reducing the effective search space before queries are executed.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Quantity of substance

If massive server clusters are deployed to handle large data queries, then data processing capacity is increased, but cost and hardware investment increase proportionally

Engineering Contradiction:
Improvedata processing capacityVSAvoidhardware investment
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The system changes the parameter of data organization by implementing time-windowed bucketing and a two-tiered indexing structure. This transforms the data access pattern from sequential scanning to indexed lookup, dramatically improving data processing capacity. The parameter change in how data is structured and indexed allows efficient querying of massive datasets without requiring proportional increases in server cluster size or hardware investment.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS20240211436A1Distributed query execution and aggregation with custom code execution
Publication Date: 2024.06.27 MORGAN STANLEY SERVICES GROUP INC
  • US20240211436A1 patent drawing
  • US20240211436A1 patent drawing
  • US20240211436A1 patent drawing

AI summary

Computer-implemented methods and systems are disclosed for receiving and indexing a plurality of files for later querying, for dynamically generating scripts to be executed during a query of a data store, and for horizontally distributing a query and aggregating results of the distributed query.