Predictive Table Join via Automated Script Generation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Joining two tables with differing column structures is a time-consuming and cumbersome process for users, as existing methods require manual scripting and lack efficient automation.

Innovation Solution

A computing device with a processor that selects pairs of tuples from tables, normalizes elements, and uses programming-by-example algorithms to generate scripts for joining tables, allowing for automatic join operations based on matching criteria.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If manual scripting is used to join tables with differing column structures, then flexibility and control are maintained, but user effort and time consumption increase significantly

Engineering Contradiction:
Improveease of table joiningVSAvoidtime for join operations
Core Design Contradiction:
Ease of operationVSLoss of time

Solution Approach 1:

The system performs self-service by automatically generating join scripts without requiring user intervention. The processor analyzes table schemas, identifies potential join columns, generates candidate scripts, and executes joins autonomously, eliminating the need for manual scripting while maintaining flexibility through configurable parameters.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system performs preliminary actions by pre-computing join potentials between table pairs, caching schema analysis results, and preparing candidate join scripts before actual join operations are needed. This reduces the time required for actual join execution by having the analytical work done in advance.

Inventive Principle:
Principle #10Preliminary action

2Extent of automation

If automated join detection is implemented, then user effort is reduced, but system complexity increases

Engineering Contradiction:
Improveautomation of join processVSAvoidcomplexity of join system
Core Design Contradiction:
Extent of automationVSDevice complexity

Solution Approach 1:

The automated join system is segmented into distinct functional modules: schema analysis module, join potential computation module, script generation module, and execution module. Each module handles a specific aspect of the join process, making the overall complex system manageable through clear separation of concerns and independent optimization of each component.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system introduces an intermediary layer between the user and the join operation - a processor that acts as a mediator to analyze schemas, generate scripts, and manage the join process. This intermediary handles the complexity internally while presenting a simple interface to users, effectively hiding the system's complexity from end users.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Manufacturing precision

If comprehensive script generation is performed for all table pairs, then join accuracy is improved, but computational resources are consumed

Engineering Contradiction:
Improveaccuracy of join matchingVSAvoidcomputational resource usage
Core Design Contradiction:
Manufacturing precisionVSUse of energy by moving object

Solution Approach 1:

The system applies partial action by generating and evaluating only a subset of potential join scripts rather than exhaustively testing all possible column combinations. It uses heuristics and filtering to identify the most promising join candidates based on schema similarity, data type compatibility, and cardinality estimates, thereby achieving high accuracy without the computational cost of exhaustive search.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The system changes parameters dynamically during script generation, adjusting thresholds for join candidate selection, filtering criteria, and evaluation metrics based on the specific characteristics of the tables being joined. This adaptive parameter adjustment allows the system to maintain high accuracy while optimizing resource consumption for different data scenarios.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS10585888B2Join with predictive merging of multiple columns
Publication Date: 2020.03.10 MICROSOFT TECHNOLOGY LICENSING LLC
  • US10585888B2 patent drawing
  • US10585888B2 patent drawing
  • US10585888B2 patent drawing

AI summary

A computing device is provided, comprising a processor configured to select at least one pair of tuples of columns including a source tuple from a first table and a target tuple from a second table. For each pair, the processor may select one or more rows from the source tuple and elements of the target tuple. For each selected row, the processor may programmatically generate a script that, when performed on the source tuple, produces a value consistent with the target tuple. The processor may apply each script to other rows of the source tuple and determine that an output is in the target tuple. For each column of the target tuple, for the script with output that meets a matching criterion, the processor may convey the output and, in response to a signal accepting the script, join the tables at least in part by performing each accepted script.