Query Stack Generation for Cloud Data Retrieval
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current cloud computing platforms lack flexibility in retrieving aggregated information from related data objects, requiring users to write complex search queries and struggling with many-to-many relationships, which leads to inefficiencies and user-experienced latency.
Innovation Solution
A method for generating query stacks that optimize the number of queries needed by maximizing parent lookup operations and minimizing child lookup operations, allowing for efficient retrieval of data through Salesforce Object Query Language (SOQL) queries by navigating indirect and arbitrary object relationships, thereby enabling flexible data retrieval without requiring users to write SOQL code.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If users write their own search queries to retrieve aggregated information from related data objects, then data retrieval flexibility is improved, but system complexity and user effort increase
Solution Approach 1:
The patent introduces an intermediary system (the query generation module) that automatically translates user-friendly criteria into optimized query stacks. This mediator handles the complexity of navigating many-to-many relationships and generating efficient query sequences, while users only need to specify simple retrieval criteria.
Solution Approach 2:
The system performs self-service by automatically generating and optimizing query stacks without requiring user intervention in the complex query writing process. The platform autonomously navigates object relationships, determines the optimal number and sequence of queries, and executes retrieval operations.
2Adaptability or versatility
If the system navigates through arbitrary number of entity relationships to retrieve aggregated information, then data aggregation capability is improved, but query execution time increases
Solution Approach 1:
The patent segments the retrieval process into multiple optimized queries that are executed in a specific sequence. By breaking down complex navigation through arbitrary entity relationships into manageable query segments, the system retrieves aggregated information efficiently while minimizing total execution time.
Solution Approach 2:
The system performs preliminary analysis of the object relationship model to pre-determine the optimal query stack sequence before execution. This preliminary action identifies the most efficient path through relationships and prepares the query sequence in advance, reducing actual execution time.
3Measurement precision
If the system requires users to write SOQL queries for data retrieval, then query precision is improved, but ease of operation deteriorates
Solution Approach 1:
The patent introduces an intermediary layer that translates user-friendly retrieval criteria into precise SOQL queries automatically. This mediator maintains query precision by generating optimized SOQL statements while shielding users from the complexity of writing and understanding SOQL syntax.
4Loss of information
If the system performs multiple child lookup operations to retrieve related data, then data completeness is improved, but number of queries increases
Solution Approach 1:
The patent merges multiple child lookup operations into optimized query sequences by strategically ordering queries to maximize parent lookups and minimize child lookups. This combining approach maintains data completeness while reducing the total number of queries required for retrieval.
Data Source
AI summary
System and methods are described for generating query stacks from object relationships. In one implementation, a method comprises receiving user input specifying an initial object and a target object; identifying a plurality of directionality relationships associated with the initial object, the target object, and one or more junction objects that link the initial object to the target object; generating, based on the plurality of directionality relationships, a query stack comprising a plurality of queries linking the initial object to the target object; and executing the query stack to retrieve data stored in the target object.


