Automated Join Statement Generation via View Mining
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Developing join statements for large and complex enterprise data models is cumbersome and time-consuming, requiring extensive documentation and expertise, especially when dealing with thousands of entities and relationships, which hinders efficient database query operations.
Innovation Solution
A system for automatic join statement generation through view mining, which identifies and filters edges in existing views based on scores, providing recommended join statements and options, thereby leveraging accumulated knowledge from existing views to simplify the development process.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If manual join statement development is used for large enterprise data models, then developers can have full control over join logic, but the development process becomes extremely time-consuming and complex
Solution Approach 1:
The system enables self-service join statement generation by automatically analyzing the enterprise data model and generating join statements without requiring manual intervention. The join statement generator autonomously identifies tables, relationships, and optimal join paths, allowing the system to serve itself rather than relying on developer expertise and manual documentation review.
Solution Approach 2:
The patent replaces the mechanical process of manual join statement development with an automated computational system. Instead of developers manually reviewing extensive documentation and constructing join statements, the system uses algorithms to automatically generate join statements by analyzing the data model structure, relationships, and metadata, thereby substituting human mechanical work with automated processing.
2Loss of information
If extensive documentation is created for enterprise data models, then complete information is available for development, but referencing the documentation becomes cumbersome and complex
Solution Approach 1:
The system extracts only the necessary information from the extensive documentation by automatically querying the data model metadata and relationship definitions. Instead of requiring developers to reference complete documentation, the join statement generator extracts specific table structures, relationship types, and join conditions directly from the data model, presenting only the relevant information needed for join statement creation.
Solution Approach 2:
The patent introduces an intermediary layer between the extensive documentation and the developer. The join statement generator acts as a mediator that automatically translates the complex documentation into simplified join statements, eliminating the need for developers to directly interact with the cumbersome documentation while ensuring complete information is utilized in the generation process.
3Manufacturing precision
If developers manually create join statements for thousands of entities and relationships, then precise control over joins is achieved, but the process becomes expensive and slow
Solution Approach 1:
The system replaces the manual mechanical process of creating precise join statements with an automated algorithmic approach. The join statement generator uses computational methods to analyze entity relationships, determine optimal join paths, and generate accurate join statements automatically, maintaining precision while dramatically improving productivity by eliminating manual intervention for each join statement.
Solution Approach 2:
The patent employs copying by reusing existing join patterns and relationship definitions from the data model metadata. Instead of manually creating each join statement from scratch, the system copies and adapts proven join patterns from existing relationships and views, ensuring accuracy through proven patterns while accelerating development through template-based generation.
Data Source
AI summary
A process for mining existing views to generate join statements is provided herein. A request to generate a join statement may be received, which may include a database object identifier to be part of the join statement. One or more views in the database may be identified, which may include the database object identifier. One or more edges in the one or more views may be identified, which may include the database object identifier. Scores for the one or more edges may be calculated. The edges may be filtered based on their scores according to one or more filtering rules. The filtered edges may be provided. A selected edge may be received, which may be selected from the provided filtered edges. The join statement may be generated in a query language. The join statement may be based on the selected edge. The generated join statement may be provided.


