IP Library Granted Patent US 12664146
Granted Patent B1
US 12664146 · App. 19/173,033 · Granted Jun 23, 2026

Systems and methods for mapping columns across databases

Inventors: Arindam Banerjee (Howrah, IN); Sanghamitra Gopen Pramanik (Kolkata, IN)
Assignee: EYGS LLP
G06F16/2282G06F16/221G06F16/9024
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12664146
App. No.
19/173,033
Granted
Jun 23, 2026
Kind
B1
Abstract

According to an embodiment, a non-transitory, processor-readable medium storing instructions that, when executed by a processor, cause the processor to cause display of (1) a first node associated with a name of a column of a first table, (2) a second node associated with a name of a column of a second table, and (3) a third node associated with a name of a column of a third table. A user-defined selection of the second node and not the third node is received via a graphical user interface (GUI). A request to store, at a first memory location, input data associated with the column of the first table is received and based on the user-defined selection and in response to receiving the request, the input data is stored at a second memory location associated with the column of the second table.

Claims (70)

1 . A non-transitory, processor-readable medium storing instructions that, when executed by a processor, cause the processor to:

receive (1) first column name data associated with a first column, (2) second column name data associated with a second column, and (3) not remaining data from the first column and the second column, the first column name data being associated with a first table, and the second column name data being associated with a second table that is different from the first table;

provide the first column name data as input to a machine learning model to produce a first semantic vector;

provide the second column name data as input to the machine learning model to produce a second semantic vector;

generate a graph data structure having (1) a first edge having a first weight that is determined based on a distance metric between the first semantic vector and the second semantic vector, the first weight representing a confidence metric for whether at least one word from the first column name is associated with at least one word from the second column name and (2) a second edge connected to the first edge and having a node associated with third column name data, the second edge having a second weight that is determined based on the first semantic vector and a third semantic vector associated with the node, the first weight representing a confidence metric for whether at least one word from the first column name is associated with at least one word from the third column name;

increase the first weight based on a user input, to produce an increased weight of the first edge;

decrease the second weight based on the user input, to produce a decreased weight of the second edge; and

determine a link between a fourth column of a third table and a fifth column of a fourth table (1) based on the increased weight of the first edge and the decreased weight of the second edge and (2) without accessing column data stored in the fourth column and the fifth column, the third table and the fourth table each being different than the first table and the second table.

2 . The non-transitory, processor-readable medium of claim 1 , wherein the machine learning model is a first machine learning model, the non-transitory, processor-readable medium further storing instructions to cause the processor to:

receive table metadata that includes a plurality of table names and excludes remaining table data, each table name from the plurality of table names being associated with a table different from remaining tables from a plurality of tables;

provide each table name from the plurality of table names as input to a second machine learning model to produce a plurality of semantic vectors that is associated with the plurality of table names; and

identify a subset of tables from the plurality of tables based on the plurality of semantic vectors, the subset of tables including the first table and the second table.

3 . The non-transitory, processor-readable medium of claim 1 , wherein the user input is a first user input, and the non-transitory, processor-readable medium further storing instructions to cause the processor to:

cause display, via a graphical user interface (GUI) executed at a compute device, of (1) a first node of the first edge, (2) a second node of the first edge, (3) the first edge, (4) the node associated with the second edge, and (5) the second edge;

receive a second user input, via the GUI, that indicates a selection of the second node of the first edge and not the node associated with the second edge; and

in response to receiving the second user input, discontinue the second node of the first edge from being displayed via the GUI.

4 . The non-transitory, processor-readable medium of claim 1 , wherein:

the user input is a first user input;

the third column name data is associated with a third column and the second table; and

the non-transitory, processor-readable medium further stores instructions to cause the processor to:

cause display, via a graphical user interface (GUI) executed at a compute device, of (1) a first node of the first edge, (2) a second node of the first edge, (3) the first edge, (4) the node associated with the second edge, and (5) the second edge;

receive a second user input, via a graphical user interface (GUI), that indicates a selection of the node associated with the second edge,

determine a linkage metric value based on a selection of the second node of the first edge and the selection of the node associated with the second edge, the linkage metric value being associated with the first table and the second table, and

cause display of the linkage metric value via the GUI.

5 . The non-transitory, processor-readable medium of claim 1 , wherein the machine learning model is a transformer model.

6 . The non-transitory, processor-readable medium of claim 1 , further storing instructions to cause the processor to:

receive data to be stored at a first memory location associated with the fourth column;

cause the data to be stored at the first memory location; and

automatically cause the data to be stored at a second memory location based on the link and not the data, the second memory location being associated with the fifth column.

7 . A non-transitory, processor-readable medium storing instructions that, when executed by a processor, cause the processor to:

receive (1) column data that is (a) associated with a column of a first table and (b) not associated with a column of a second table and (2) first column name data associated with the column of the first table; and

identify a column of a second table (1) based on (a) the first column name data, (b) second column name data associated with the column of the second table, and (c) a map between the column of the first table and the column of the second table, and (2) without accessing the column data, the map being generated based on:

a graph that includes an edge having a first weight value that is determined based on (a) a first semantic vector associated with the first column name data and (b) a second semantic vector associated with the second column name data, the first weight value representing a confidence metric for whether at least one word from the first column name is associated with at least one word from the second column name; and

a user-defined selection of a node of the edge that causes an increase to the first weight value to produce a second weight value that is greater than a predefined threshold, the second weight value representing an updated confidence metric for whether at least one word from the first column name is associated with at least one word from the second column name; and

in response to identifying the column of the second table, cause the column data to be stored in the column of the second table.

8 . The non-transitory, processor-readable medium of claim 7 , wherein:

the first semantic vector is generated by providing the first column name data as input to a machine learning model; and

the second semantic vector is generated by providing the second column name data as input to the machine learning model.

9 . The non-transitory, processor-readable medium of claim 8 , wherein the machine learning model is a transformer model.

10 . The non-transitory, processor-readable medium of claim 7 , wherein the node of the edge is a first node of the edge, the user-defined selection is received via a graphical user interface (GUI) that depicts the first node of the edge and a second node of the edge.

11 . The non-transitory, processor-readable medium of claim 10 , further storing instructions to cause the processor to discontinue the first node of the edge from being displayed via the GUI in response to receiving a predetermined number of user-defined selections that include the user-defined selection.

12 . The non-transitory, processor-readable medium of claim 7 , wherein:

the map is generated based further on a subset of tables that includes the first table and the second table, the subset of tables being identified from a plurality of tables based on a subset of semantic vectors defining a cluster within a plurality of semantic vectors, the subset of semantic vectors being associated with the subset of tables, and the plurality of semantic vectors being associated with the plurality of tables.

13 . The non-transitory, processor-readable medium of claim 12 , wherein the plurality of semantic vectors is generated by iteratively providing each table name associated with each table from the plurality of tables as input to a machine learning model.

14 . The non-transitory, processor-readable medium of claim 12 , wherein:

the plurality of semantic vectors is generated by iteratively providing each table name associated with each table from the plurality of tables as input to a machine learning model,

the machine learning model is a transformer model.

15 . A non-transitory, processor-readable medium storing instructions that, when executed by a processor, cause the processor to:

cause display of (1) a first node associated with a name of a column of a first table, (2) a second node associated with a name of a column of a second table, (3) a third node associated with a name of a column of a third table, and (4) an edge associated with a weight that is determined based on a distance metric associated with the first node and the second node, the weight representing a confidence metric for whether at least one word from the name of the column of the first table is associated with at least one word from the name of the column of the second table;

receive, via a graphical user interface (GUI), a user-defined selection of the second node and not the third node;

receive a request to store, at a first memory location, input data associated with the column of the first table; and

in response to receiving the request, automatically cause the input data to be stored at a second memory location associated with the column of the second table, based on the user-defined selection and the confidence metric being above a predefined threshold.

16 . The non-transitory, processor-readable medium of claim 15 , further storing instructions that, when executed by a processor, to cause the processor to:

determine a similarity value based on (1) a first semantic vector associated with the name of the column of the first table and produced by a machine learning model and (2) a second semantic associated with the name of the column of the second table and produced by the machine learning model;

decrease the similarity value to cause the processor based on the user-defined selection excluding the third node, to produce a decreased similarity value; and

cause a node pair that includes the first node and the third node to no longer be displayed via the GUI in response to the decreased similarity value being below a predefined threshold.

17 . The non-transitory, processor-readable medium of claim 16 , wherein the machine learning model is a word2vec model.

18 . The non-transitory, processor-readable medium of claim 15 , further storing instructions that, when executed by a processor, to cause the processor to:

receive a user input, via the GUI, that indicates a selection of the second node,

determine a linkage metric value based on a selection of the first node and the selection of the second node, the linkage metric value being associated with the first table and the second table, and

cause display of the linkage metric value via the GUI.

19 . The non-transitory, processor-readable medium of claim 15 , wherein:

the first table is associated with a first database;

the second table is associated with a second database different from the first database;

the third table is associated with a third database different from the first database;

the name of the column of the first table is different from (1) the name of the column of the second table and (2) the name of the column of the third table; and

the name of the column of the second table is different from the name of the column of the third table.

20 . The non-transitory, processor-readable medium of claim 15 , wherein the name of the column of the first table includes a first word and a second word different from the first word, the non-transitory, processor-readable medium further storing instructions to cause the processor to:

cause display of a fourth node associated with the first word, the first node being associated with the second word, and the fourth node being excluded from the user-defined selection; and

determine an association between a column of a fourth table and a column of a fifth table based on the first word and not the second word.