Schema-Aware Result Set Cache for Faster Database Queries

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing database systems face limitations in processing speed due to hardware constraints, data storage methods, and restricted co-processing options, particularly when handling large volumes of data.

Innovation Solution

A database system architecture that employs parallelized data input, storage, retrieval, and query processing systems, utilizing a network of computing devices and nodes with independent processing core resources to handle massive data sets efficiently and concurrently.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If a database system processes large volumes of data using traditional hardware and storage methods, then data storage capacity is sufficient, but processing speed is limited by hardware constraints and data storage methods

Engineering Contradiction:
Improveprocessing speedVSAvoidhardware constraints
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The database system is divided into multiple independent nodes, each capable of processing data concurrently. The system architecture segments data and processing tasks across distributed nodes, enabling parallel processing that overcomes single-machine hardware constraints and significantly improves processing speed for large datasets.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system transitions from single-node processing to multi-node distributed processing, adding the dimension of spatial distribution. By utilizing networked computing devices rather than relying on a single hardware platform, the system achieves higher processing throughput without being constrained by individual hardware limitations.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Productivity

If a database system uses traditional data storage methods, then storage implementation is simple, but execution speed is limited by the way data is stored

Engineering Contradiction:
Improveexecution speedVSAvoiddata storage method
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

Data is segmented and distributed across multiple nodes in the database system. Each node stores and processes specific portions of the data independently, enabling concurrent access and processing. This segmentation allows the system to achieve faster execution speeds by parallelizing data retrieval and processing operations across distributed storage locations.

Inventive Principle:
Principle #1Segmentation

3Loss of time

If a database system processes data sequentially on a single machine, then system complexity is low, but processing time increases significantly for large datasets

Engineering Contradiction:
Improveprocessing timeVSAvoidparallelized processing architecture
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The processing workload is segmented and distributed across multiple independent nodes that can execute operations concurrently. Each node processes a portion of the dataset independently, reducing the total processing time from sequential single-machine processing to parallel multi-node processing. This segmentation enables significant time savings for large datasets while maintaining system manageability through standardized node architecture.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Multiple copies of processing logic are deployed across distributed nodes, with each node capable of independently executing the same processing operations on different data partitions. This copying of processing functionality enables parallel execution that significantly reduces processing time compared to sequential processing on a single machine.

Inventive Principle:
Principle #26Copying

4Adaptability or versatility

If a database system handles diverse data schemas, then data flexibility is improved, but cache management complexity increases due to different data structures

Engineering Contradiction:
Improveschema flexibilityVSAvoidcache management
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The cache management system applies different strategies and structures for different data schemas stored in the cache. Each schema type receives tailored handling - for example, different indexing methods, eviction policies, or compression techniques - allowing the system to maintain high performance across diverse schemas while managing the complexity locally rather than globally.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The cache management system dynamically adapts its behavior based on the specific schema of the data being cached. When a new schema is introduced, the system can dynamically adjust cache organization, indexing strategies, and access patterns to optimize for that particular schema. This dynamic adaptation enables the system to handle diverse schemas efficiently without requiring a completely different cache management approach for each schema type.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS20250371003A1Handling different schemas in maintaining a result set cache of a database system
Publication Date: 2025.12.04 OCIENT HOLDINGS LLC
  • US20250371003A1 patent drawing
  • US20250371003A1 patent drawing
  • US20250371003A1 patent drawing

AI summary

A database system is operable to receiving, from a user entity, a query expression indicating a query against at least one relational database table stored by the database system. The query expression is processed to determine a query resultant for the query expression based on identifying one schema of a plurality of possible schemas based on the user entity and accessing a result set cache to determine the query resultant for the query expression as a previously computed query resultant for the query expression corresponding to the one schema. The previously computed query resultant is communicated to the user entity.