Asynchronous Querying Language for Multi-Store Data Federation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Multi-tenant database systems face challenges in efficiently managing and querying large volumes of data from diverse data sources with different structures and architectures, leading to increased resource overhead and user dissatisfaction.

Innovation Solution

The implementation of an asynchronous querying language (QL) as an API that allows users to submit jobs for asynchronous execution, enabling federated querying across multiple data stores with support for persistent and ephemeral job types, and providing features like federated joins and aggregation, while also managing resource limits and error handling.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If synchronous querying is used to search large amounts of data across multiple data stores, then query results are obtained quickly, but resource overhead increases significantly

Engineering Contradiction:
Improvequery response timeVSAvoidresource overhead
Core Design Contradiction:
SpeedVSUse of energy by moving object

Solution Approach 1:

The system pre-generates materialized views from source data before queries are executed. These pre-computed results are stored and can be quickly retrieved when query requests are made, eliminating the need for resource-intensive real-time computation across multiple data stores while maintaining fast query response times

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system divides complex federated queries into smaller sub-queries that can be executed independently on individual data stores. Each data store processes only its relevant portion, reducing the overall resource overhead compared to scanning all data stores simultaneously, while still delivering complete query results

Inventive Principle:
Principle #1Segmentation

2Adaptability or versatility

If federated querying across multiple data stores with different structures is implemented, then data accessibility is improved, but system complexity increases

Engineering Contradiction:
Improvedata accessibilityVSAvoidsystem complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The system introduces materialized views as intermediary structures between diverse source data stores and user queries. These materialized views provide a unified, standardized representation of data from multiple sources with different structures, allowing queries to be executed without directly handling the complexity of underlying data store heterogeneity

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system creates a universal querying interface that can access multiple different data stores through a common materialized view structure. This single interface handles diverse data sources with different architectures and structures, providing universal data accessibility without requiring separate handling logic for each data store type

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

3Quantity of substance

If data volume increases to accommodate growing customer base, then service capacity is improved, but search efficiency decreases

Engineering Contradiction:
Improvedata volumeVSAvoidsearch efficiency
Core Design Contradiction:
Quantity of substanceVSProductivity

Solution Approach 1:

The system pre-computes and stores materialized views of data before they are needed for queries. As data volume grows, these pre-computed results remain readily available for fast retrieval, preventing search efficiency from deteriorating despite increased data quantities

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system creates copied representations of source data in materialized views that are optimized for querying. These copies contain pre-processed and organized data that can be searched efficiently without requiring full scans of the original large-volume source data stores

Inventive Principle:
Principle #26Copying

Data Source

PatentUS11663205B2Technologies for asynchronous querying
Publication Date: 2023.05.30 SALESFORCE INC
  • US11663205B2 patent drawing
  • US11663205B2 patent drawing
  • US11663205B2 patent drawing

AI summary

Systems, methods, and computer-readable media for asynchronous (async) querying are described. In embodiments, a system may convert a user-issued query into a distributed execution instruction set (DEIS), and issue the DEIS to data stores that may have various database structures. The system may obtain database objects from the data stores, and store a result set indicating the obtained database objects in a location specified by the user-issued query. The system may also provide mechanisms to allow users to view progress of their async query jobs and/or cancel ongoing async query jobs. Other embodiments may be described and/or claimed.