Syntax Abstraction for Query Language Generation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Prior business intelligence, OLAP, and reporting systems face challenges with inflexible query language syntax and difficulty in modifying query generation rules, leading to compatibility issues with multiple DBMS and inefficient data retrieval and processing.
Innovation Solution
A system and method for generating query language statements using a syntax pattern selector and statement assembly module, allowing for flexible updates and modifications, ensuring compatibility with multiple DBMS and efficient data retrieval by selecting appropriate syntax patterns and populating them with argument data sets.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If hard coded query language syntax is used in prior OLAP systems, then query generation follows fixed rules, but the system becomes inflexible and difficult to modify when DBMS updates occur
Solution Approach 1:
The patent segments the query language syntax into modular syntax patterns that can be independently selected and modified. Each syntax pattern represents a discrete, reusable component that can be updated without affecting the entire query generation system, enabling flexible adaptation to DBMS changes while maintaining overall system reliability.
Solution Approach 2:
The patent implements dynamic syntax pattern selection where the system can adaptively choose appropriate syntax patterns based on the target DBMS. This dynamic approach replaces static hard-coded syntax with flexible, context-aware pattern selection that can be modified through configuration rather than recompilation, resolving the contradiction between consistency and adaptability.
2Adaptability or versatility
If multiple DBMS syntax variations are supported, then compatibility across different database systems is achieved, but the complexity of managing multiple syntax versions increases
Solution Approach 1:
The patent creates a universal syntax pattern framework that can generate queries for multiple DBMS through a single unified system. The syntax patterns are designed to be DBMS-agnostic at their core, with configurable variations that allow one system to serve multiple database platforms, reducing complexity while maintaining broad compatibility.
Solution Approach 2:
The patent introduces syntax patterns as an intermediary layer between the query generation logic and the target DBMS. This mediator abstraction handles the complexity of multiple syntax variations by providing a standardized interface that translates generic query requirements into DBMS-specific syntax, isolating the complexity from the core system.
3Productivity
If query generation rules are updated frequently to match DBMS upgrades, then current DBMS features are utilized, but system downtime and maintenance costs increase
Solution Approach 1:
The patent enables preliminary configuration of syntax patterns before they are needed in production. Syntax patterns can be developed, tested, and validated in advance, allowing updates to be prepared offline and deployed with minimal disruption to ongoing operations, thereby reducing downtime while maintaining access to current DBMS features.
Solution Approach 2:
The patent uses syntax patterns as reusable templates that can be copied and adapted across different query generation scenarios. Once a syntax pattern is created or updated, it can be instantly replicated and applied to multiple queries without requiring repeated modifications, accelerating the adaptation process and reducing maintenance time.
Data Source
AI summary
A system and method for syntax abstraction in query language generation in an online analytical processing system, a business intelligence system, a reporting system, or a data mining system. The system generates one or more query language statements that can be run against one or more data sources to return a desired data result set. The system includes a syntax pattern selector module and a statement assembly module. The syntax pattern selector module selects a syntax pattern corresponding to a desired function and a syntax standard. The statement assembly module populates the syntax pattern with an argument data set associated with the desired data set. The result is the generation of one or more query language statements with the correct function, syntax, and data parameters to return the desired data result set from the data sources. A method and medium having processor readable code therein are also described.


