Database Join Candidate Identification via Casting Similarity

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing database systems are inefficient in identifying and guiding users to formulate queries with semantically meaningful joins, leading to computational waste, misleading results, and increased resource usage due to inadequate identification of join candidates, especially when schema relationships are not described.

Innovation Solution

A method and system that identify join candidates by assigning casting similarity indexes based on data type compatibility, presenting them to users, and allowing data queries to obtain tabular data efficiently, using a multi-pass algorithm that considers column metadata and data similarity.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If existing database analytic tools are used, then data queries can be performed, but they are inefficient and require substantial configuration and training

Engineering Contradiction:
Improvequery efficiencyVSAvoidconfiguration and training requirements
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system automatically identifies join candidates by analyzing data types and casting similarity between columns of different tables. The multi-pass algorithm autonomously determines potential joins without requiring user configuration or training, making the system self-serve the complexity of join identification while maintaining high query efficiency

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system performs preliminary analysis of column metadata and data types before query execution to pre-identify join candidates. This preliminary action of casting similarity assessment and join candidate presentation occurs before the actual query runs, reducing the complexity burden on users during query formulation

Inventive Principle:
Principle #10Preliminary action

2Adaptability or versatility

If join candidates are identified without considering data type compatibility, then more join possibilities are found, but computational resources are wasted on semantically meaningless joins

Engineering Contradiction:
Improvejoin candidate identificationVSAvoidcomputational resource waste
Core Design Contradiction:
Adaptability or versatilityVSLoss of energy

Solution Approach 1:

The system changes the parameter of data type compatibility assessment by introducing casting similarity indexes that evaluate the convertibility between data types of different columns. This parameter change enables the system to filter join candidates based on semantic meaningfulness, reducing computational waste on incompatible type joins while maintaining versatile join identification capabilities

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The system replaces mechanical brute-force join testing with a semantic-based filtering mechanism using casting similarity assessment. Instead of mechanically trying all possible joins and filtering later, the system uses data type compatibility analysis to pre-filter meaningful joins, substituting computational brute-force with semantic understanding

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

3Measurement precision

If a multi-pass algorithm is used to identify join candidates, then accuracy of join identification improves, but processing time increases

Engineering Contradiction:
Improvejoin candidate accuracyVSAvoidprocessing time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The join identification process is segmented into multiple passes: first pass analyzes column metadata and data types, second pass performs casting similarity assessment, and third pass validates join candidates. This segmentation allows the system to progressively refine accuracy while managing processing time by stopping early for clearly incompatible types and focusing computation only where needed

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS20240265014A1Identifying Joins Of Tables Of A Database
Publication Date: 2024.08.08 THOUGHTSPOT INC
  • US20240265014A1 patent drawing
  • US20240265014A1 patent drawing
  • US20240265014A1 patent drawing

AI summary

Identifying join candidate includes identifying pairs of columns within a data source. Each pair includes a first column in a first table of the data source and a second column of a second table of the data source. For each pair, a casting similarity index is assigned from a predefined scale that includes a first casting similarity level indicative of a very low casting similarity level, where the casting similarity index is determined based on an extent to which data values from the first column are convertable to match a data type of the second column within the each pair, and where the very low casting similarity level is assigned to the each pair in a case that the first column has a boolean type and the second column has a float type. The join candidate is presented on a device of a user for selection by the user.