Caching Sub-Query Results Across Distributed Data Stores

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The challenge lies in managing and storing increasing amounts of data across diverse locations and formats, making it difficult to analyze and process collectively, as existing solutions often lead to fragmented data storage and inefficient query performance.

Innovation Solution

Implementing a format-independent data processing service that caches sub-query results across different data store locations, allowing for efficient reuse of cached results and reducing the need for repetitive sub-queries, thereby improving query performance and data accessibility.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If data is stored across different locations and formats to meet current storage needs, then storage capacity and flexibility are improved, but data accessibility and processing efficiency deteriorate

Engineering Contradiction:
Improvestorage flexibilityVSAvoiddata accessibility
Core Design Contradiction:
Adaptability or versatilityVSEase of operation

Solution Approach 1:

The patent introduces a format-independent data processing service as an intermediary layer between the distributed data stores and the query interface. This service handles format conversion and data retrieval transparently, allowing users to access data from multiple locations and formats without directly managing the complexity of data distribution. The intermediary abstracts the heterogeneity of stored data, maintaining ease of operation while supporting flexible storage architectures.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Quantity of substance

If data is distributed across different locations in different formats, then storage capacity is improved, but query performance and processing speed deteriorate

Engineering Contradiction:
Improvestorage capacityVSAvoidquery performance
Core Design Contradiction:
Quantity of substanceVSProductivity

Solution Approach 1:

The patent implements query result caching that stores the results of sub-queries performed on distributed data. When the same or similar queries are executed, the cached results are returned directly without re-accessing the distributed data stores. This preliminary action of caching query results significantly improves query performance and productivity while maintaining the ability to store large quantities of data across distributed locations.

Inventive Principle:
Principle #10Preliminary action

3Productivity

If format-independent data processing with caching is implemented, then query performance is improved, but system complexity increases

Engineering Contradiction:
Improvequery performanceVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent implements a universal data processing service that handles multiple data formats, storage locations, and query types through a single standardized interface. This multi-functional service reduces system complexity by consolidating what would otherwise require multiple specialized components. The service provides format-independent access to distributed data while incorporating caching mechanisms, achieving high query performance without proportionally increasing system complexity through standardization and consolidation.

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

Data Source

PatentUS11308106B1Caching results for sub-queries to different data store locations
Publication Date: 2022.04.19 AMAZON TECH INC
  • US11308106B1 patent drawing
  • US11308106B1 patent drawing
  • US11308106B1 patent drawing

AI summary

Caching results of sub-queries to different locations in a data store may be performed. A database query may be received that causes different storage engines to perform sub-queries to different locations in a data store that stores data for a database. The results of the sub-queries may be stored in a cache. When another database query is received, sub-queries generated to perform the other database query that are the same as one or more of the previously performed sub-queries may obtain the results of the sub-queries from the cache instead of performing the sub-queries again.