IP Library Granted Patent US 12,450,204
Granted Patent B2
US 12,450,204 · App. 17/316,161 · Granted Oct 21, 2025

Generating and reusing transformations for evolving schema mapping

Inventors: Sharon Roth (Boston, MA); Ihab F. Ilyas (Waterloo, CA); Daniel Meir Bruckner (San Francisco, CA); Gideon Goldin (Cambridge, MA)
Assignee: TAMR, INC.
G06F16/211G06F16/252G06F16/254G06F16/9024G06F16/907
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 12,450,204
App. No.
17/316,161
Granted
Oct 21, 2025
Kind
B2
Abstract

A system and method of use resolves the frustration of repeated manual work during schema mapping. The system utilizes a transformation graph—a collection of nodes (unified attributes) and edges (transformations) in which source attributes are mapped and transformed. The system further leverages existing mappings and transformations for the purpose of suggesting to a user the optimal paths (i.e., the lowest cost paths) for mapping new sources, which is particularly useful when new sources share similarity with previously mapped sources and require the same transformations. As such, the system also promotes an evolving schema by allowing users to select which unified attributes they want to include in a target schema at any time. The system addresses the technical challenge of finding optimal transformation paths and how to present these to the user for evaluation.

Claims (19)

1. A method for creating a new target schema from an existing target schema, wherein the existing target schema is represented as a collection of nodes within an electronically represented and visually displayed initial transformation graph, the electronically represented and visually displayed initial transformation graph being an evolving graph of nodes and edges, the electronically represented and visually displayed initial transformation graph including nodes which represent unified attributes and edges which represent a flow of data via transformations between the nodes, and wherein the electronically represented and visually displayed initial transformation graph includes transformation paths which are reusable, the method comprising:

(a) adding a new node which represents a new unified attribute to the electronically represented and visually displayed initial transformation graph, thereby creating an electronically represented and visually displayed revised transformation graph, wherein the new node which represents the new unified attribute is added to the electronically represented and visually displayed initial transformation graph via user input of a transformation edge between the new node and an existing node into a first graphical user interface (GUI); and

(b) adding the new node which represents the new unified attribute to the existing target schema, thereby creating a revised target schema, the revised target schema being a new target schema created from the existing target schema that reuses the transformation paths of the electronically represented and visually displayed initial transformation graph, wherein the new node which represents the new unified attribute is selected for inclusion in the revised target schema via user input into a second GUI,

wherein the new node which represents the new unified attribute and edge are used by a central processing unit executing software code to propagate data using the electronically represented and visually displayed revised transformation graph and the revised target schema.

2. The method of claim 1 further comprising:

(c) populating the new node which represents the new unified attribute with one or more source attribute mappings.

3. The method of claim 1 further comprising:

(c) setting the new node which represents the new unified attribute as an output from an existing node of the revised transformation graph through an edge between the new node which represents the new unified attribute and the existing node in the revised transformation graph, and specifying the transformation to be performed by that edge.

4. A computer system for creating a new target schema from an existing target schema, wherein the existing target schema is represented as a collection of nodes within an electronically represented and visually displayed initial transformation graph, the electronically represented and visually displayed initial transformation graph being an evolving graph of nodes and edges, the electronically represented and visually displayed initial transformation graph including nodes which represent unified attributes and edges which represent a flow of data via transformations between the nodes, and wherein the electronically represented and visually displayed initial transformation graph includes transformation paths which are reusable, the computer system comprising:

(a) a first graphical user interface (GUI);

(b) a second GUI; and

(c) a central processing unit operating software stored on non-transitory computer media, the software comprising instructions to:

(i) add a new node which represents a new unified attribute to the electronically represented and visually displayed initial transformation graph, thereby creating an electronically represented and visually displayed revised transformation graph, wherein the new node which represents the new unified attribute is added to the electronically represented and visually displayed initial transformation graph via user input of a transformation edge between the new node which represents the new unified attribute and an existing node into the first GUI; and

(ii) add the new node which represents the new unified attribute to the existing target schema, thereby creating a revised target schema, the revised target schema being a new target schema created from the existing target schema that reuses the transformation paths of the electronically represented and visually displayed initial transformation graph, wherein the new node which represents the new unified attribute is selected for inclusion in the revised target schema via user input into the second GUI,

wherein the new node which represents the new unified attribute and edge are used by the central processing unit operating the software to propagate data using the electronically represented and visually displayed revised transformation graph and the revised target schema.

5. The computer system of claim 4 wherein the software comprises further instructions to:

(iii) populate the new node which represents the new unified attribute with one or more source attribute mappings.

6. The computer system of claim 4 wherein the software comprises further instructions to:

iii) set the new node which represents the new unified attribute as an output from an existing node of the revised transformation graph through an edge between the new node which represents the new unified attribute and the existing node in the revised transformation graph, and specify the transformation to be performed by that edge.

Assignments (3)
RELEASE OF SECURITY INTEREST Recorded Feb 21, 2025
From: JPMORGAN CHASE BANK, N.A.
To: TAMR, INC.
Reel/Frame 070284/0101 →
AMENDED AND RESTATED INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Jan 30, 2023
From: TAMR, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 062540/0438 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 31, 2021
From: ROTH, SHARON; IHAB, ILYAS F.; BRUCKNER, DANIEL MEIR; GOLDIN, GIDEON
To: TAMR, INC.
Reel/Frame 057343/0265 →
Continuity (3)
Continuation 16038762 · Jul 18, 2018
Provisional Application 62686328 · Jun 18, 2018
Related Publication 20210334248A1 · Oct 28, 2021
References Cited (34)
US 5970490A · Morgenstern · 1999 [cited by examiner]
US 6874141B1 · Swamy et al. · 2005 [cited by applicant]
US 7921072B2 · Bohannon et al. · 2011 [cited by applicant]
US 8041746B2 · Stuhec · 2011 [cited by examiner]
US 8099382B2 · Liu et al. · 2012 [cited by applicant]
US 8180810B2 · Chiticarlu et al. · 2012 [cited by applicant]
US 8234312B2 · Thomas · 2012 [cited by applicant]
US 8924415B2 · Thomas · 2014 [cited by applicant]
US 9201558B1 · Dingman et al. · 2015 [cited by applicant]
US 9251225B2 · Stanfill · 2016 [cited by applicant]
US 9336511B2 · Dehmann · 2016 [cited by examiner]
US 9430114B1 · Dingman · 2016 [cited by examiner]
US 9686348B2 · Talmor et al. · 2017 [cited by applicant]
US 10824968B2 · Williger · 2020 [cited by examiner]
US 10860548B2 · Roth et al. · 2020 [cited by applicant]
US 20030217069A1 · Fagin et al. · 2003 [cited by applicant]
US 20040212615A1 · Uthe · 2004 [cited by applicant]
US 20050050089A1 · Minium et al. · 2005 [cited by applicant]
US 20050160108A1 · Charlet et al. · 2005 [cited by applicant]
US 20070055655A1 · Bernstein et al. · 2007 [cited by applicant]
US 20080250357A1 · Lee et al. · 2008 [cited by applicant]
US 20090024551A1 · Agrawal et al. · 2009 [cited by applicant]
US 20100106752A1 · Eckardt, III et al. · 2010 [cited by applicant]
US 20110131253A1 · Peukert · 2011 [cited by examiner]
US 20120095957A1 · Reddy · 2012 [cited by examiner]
US 20120265507A1 · Carbajales · 2012 [cited by examiner]
US 20150363702A1 · Baum · 2015 [cited by examiner]
US 20180075138A1 · Perram et al. · 2018 [cited by applicant]
US 20190138345A1 · Singh · 2019 [cited by examiner]
Poulovassilis et al., A general formal framework for schema transformation, Data & Knowledge Engineering 28 (1998) 47-71. (Year: 1998). [cited by examiner]
Geunter et al., “Introducing MapLan to Map Banking Survey Data into a Time Series Database,” EDBT, pp. 528-533 (2012). [cited by applicant]
International Search Report and Written Opinion issued Nov. 21, 2019 in International Application No. PCT/IB2019/055114. [cited by applicant]
Jayalath et al., “From the Cloud to the Atmosphere: Running MapReduce across Data Centers,” IEEE Transactions on Computers, vol. 63, No. 1, pp. 74-87 (2014). [cited by applicant]
Rahm et al., “A Survey of approached to automatic schema matching,” The VLDB Journal, vol. 10, pp. 334-350 (2001). [cited by applicant]