IP Library › Granted Patent US 12,189,620
Granted Patent B2
US 12,189,620 · App. 17/462,349 · Granted Jan 7, 2025

Creating virtualized data assets using existing definitions of ETL/ELT jobs

Inventors: Michal Bodziony (Tȩgoborze, PL); Bartosz Tomasik (Cracow, PL); Wojciech Mis (Cracow, PL); Marcin Filip (Cracow, PL)
Assignee: International Business Machines Corporation
G06F16/24535G06F16/24565G06F16/254G06F16/256
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,189,620
App. No.
17/462,349
Granted
Jan 7, 2025
Kind
B2
Abstract

A computer-implemented method, system and computer program product for creating virtualized data assets. A copy of an extract, transform, load (ETL) or an extract, load, transform (ELT) job definition is created. Furthermore, a table function is created in which the table function is configured to trigger the execution of a copy of the ETL/ELT job definition, to read the resulting data from executing the copy of the ETL/ELT job definition and to return the resulting data (data sets), such as in a queue in a federation server. After receiving a query from a user based on a virtual view in which the query includes the ETL/ELT job definition, the table function is executed which triggers execution of the copy of the ETL/ELT job definition. Data sets are then produced by executing the copied ETL/ELT job definition, which is read and returned to the user in the virtual view.

Claims (45)

1. A computer-implemented method for creating virtualized data assets, the method comprising:

receiving a set of extract, transform, load (ETL) or extract, load, transform (ELT) job definitions;

translating said set of ETL or ELT job definitions to statements in a domain-specific language;

creating virtualized data assets using said translated statements; and

representing a federated view for execution of said translated statements that includes said created virtualized data assets.

2. The method as recited in claim 1 further comprising:

building a first catalog to store said created virtualized data assets with corresponding ETL or ELT job definitions.

3. The method as recited in claim 2 further comprising:

creating a second set of ETL or ELT job definitions to use associated translated statements to be executed against said virtualized data assets of said first catalog.

4. The method as recited in claim 3 further comprising:

building a second catalog defining how data is extracted, transformed and loaded or how data is extracted, loaded and transformed (ELT) based on said set of ETL or ELT job definitions, respectively, wherein said second catalog is modified by replacing said set of ETL or ELT job definitions with said created second set of ETL or ELT job definitions.

5. The method as recited in claim 1 , wherein said domain-specific language comprises a structured query language.

6. The method as recited in claim 1 , wherein said translation of said set of ETL or ELT job definitions to statements in said domain-specific language is accomplished via a table of ETL or ELT stages with corresponding statements in said domain-specific language.

7. The method as recited in claim 1 further comprising:

storing said translated statements in a third catalog.

8. A computer program product for creating virtualized data assets, the computer program product comprising one or more computer readable storage mediums having program code embodied therewith, the program code comprising programming instructions for:

receiving a set of extract, transform, load (ETL) or extract, load, transform (ELT) job definitions;

translating said set of ETL or ELT job definitions to statements in a domain-specific language;

creating virtualized data assets using said translated statements; and

representing a federated view for execution of said translated statements that includes said created virtualized data assets.

9. The computer program product as recited in claim 8 , wherein the program code further comprises the programming instructions for:

building a first catalog to store said created virtualized data assets with corresponding ETL or ELT job definitions.

10. The computer program product as recited in claim 9 , wherein the program code further comprises the programming instructions for:

creating a second set of ETL or ELT job definitions to use associated translated statements to be executed against said virtualized data assets of said first catalog.

11. The computer program product as recited in claim 10 , wherein the program code further comprises the programming instructions for:

building a second catalog defining how data is extracted, transformed and loaded or how data is extracted, loaded and transformed (ELT) based on said set of ETL or ELT job definitions, respectively, wherein said second catalog is modified by replacing said set of ETL or ELT job definitions with said created second set of ETL or ELT job definitions.

12. The computer program product as recited in claim 8 , wherein said domain-specific language comprises a structured query language.

13. The computer program product as recited in claim 8 , wherein said translation of said set of ETL or ELT job definitions to statements in said domain-specific language is accomplished via a table of ETL or ELT stages with corresponding statements in said domain-specific language.

14. The computer program product as recited in claim 8 , wherein the program code further comprises the programming instructions for:

storing said translated statements in a third catalog.

15. A system, comprising:

a memory for storing a computer program for creating virtualized data assets; and

a processor connected to the memory, wherein the processor is configured to execute program instructions of the computer program comprising:

receiving a set of extract, transform, load (ETL) or extract, load, transform (ELT) job definitions;

translating said set of ETL or ELT job definitions to statements in a domain-specific language;

creating virtualized data assets using said translated statements; and

representing a federated view for execution of said translated statements that includes said created virtualized data assets.

16. The system as recited in claim 15 , wherein the program instructions of the computer program further comprise:

building a first catalog to store said created virtualized data assets with corresponding ETL or ELT job definitions.

17. The system as recited in claim 16 , wherein the program instructions of the computer program further comprise:

creating a second set of ETL or ELT job definitions to use associated translated statements to be executed against said virtualized data assets of said first catalog.

18. The system as recited in claim 17 , wherein the program instructions of the computer program further comprise:

building a second catalog defining how data is extracted, transformed and loaded or how data is extracted, loaded and transformed (ELT) based on said set of ETL or ELT job definitions, respectively, wherein said second catalog is modified by replacing said set of ETL or ELT job definitions with said created second set of ETL or ELT job definitions.

19. The system as recited in claim 15 , wherein said domain-specific language comprises a structured query language.

20. The system as recited in claim 15 , wherein said translation of said set of ETL or ELT job definitions to statements in said domain-specific language is accomplished via a table of ETL or ELT stages with corresponding statements in said domain-specific language.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 31, 2021
From: BODZIONY, MICHAL; TOMASIK, BARTOSZ; MIS, WOJCIECH; FILIP, MARCIN
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 057340/0410 →
Continuity (1)
Related Publication 20230066110A1 · Mar 2, 2023
References Cited (20)
US 7523118B2 · Friedlander · 2009 [cited by examiner]
US 7761408B2 · Agarwal · 2010 [cited by examiner]
US 8577833B2 · Erla · 2013 [cited by examiner]
US 8688625B1 · Clark · 2014 [cited by examiner]
US 9904684B2 · Zha · 2018 [cited by examiner]
US 10318544B2 · Crabtree · 2019 [cited by examiner]
US 10331692B2 · Crabtree · 2019 [cited by examiner]
US 20070038609A1 · Wu · 2007 [cited by examiner]
US 20070276851A1 · Friedlander · 2007 [cited by examiner]
US 20100268684A1 · Friedlander · 2010 [cited by examiner]
US 20140344211A1 · Allan · 2014 [cited by examiner]
US 20150286697A1 · Byrne · 2015 [cited by examiner]
US 20190258645A1 · Crabtree · 2019 [cited by examiner]
US 20190265971A1 · Behzadi · 2019 [cited by examiner]
US 20200073987A1 · Perumala · 2020 [cited by examiner]
EP 2079020A1 · 2009 [cited by examiner]
Oliveira et al., “Using BPMN for ETL conceptual Modeling: A Case Study”. IEEE 2021. [cited by examiner]
IBM, “Creating and Using Federated Views,” https://www.ibm.com/support/producthub/db2/docs/content/SSEPGG_11.5.0/com.ibm.data.fluidquery.doc/topics/tfpprg09.html, 2021, pp. 1-2. [cited by applicant]
Bennett et al., “Bridging The Data Integration Gap: From Theory to Implementation,” ACM SIGSOFT Software Engineering Notes, vol. 36, No. 3, May 2011, pp. 1-8. [cited by applicant]
IBM, “Data Connection and Virtualization,” https://ibm-developer.gitbook.io/cloudpakfordata-credit-risk-workshop/credit-risk-workshop/data-connection-and-virtualization, 2021, pp. 1-12. [cited by applicant]