IP Library › Granted Patent US 11,556,557
Granted Patent B2
US 11,556,557 · App. 17/080,158 · Granted Jan 17, 2023

Techniques for unifying ETL filter operators

Inventor: Hanumath Rao Maduri (Santa Clara, CA)
Assignee: Oracle International Corporation
G06F16/254G06F16/24542G06F16/24554G06F16/287
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 11,556,557
App. No.
17/080,158
Granted
Jan 17, 2023
Kind
B2
Abstract

Techniques are provided for unifying filter operators in exchange, transform, load (ETL) plans. Such a technique includes a method that may include receiving, by a computer system, an ETL plan including a split operator and a plurality of filter operators. The may include identifying, by the computer system, that the plurality of filter operators are configured to act on data output by the split operator in the ETL plan. The method may include generating, by the computer system, a unified filter operator using the plurality of filter operators. The method may include generating, by the computer system, an updated ETL plan comprising the unified filter operator providing filtered data to the split operator. The method may also include storing the updated ETL plan in a data store.

Claims (45)

1. A method, comprising:

receiving from a source or a client device via a network, by a computer system, an extract, transform, load (ETL) plan comprising a primary split operator, a plurality of primary filter operators, a data pipeline of a plurality of data pipelines that comprises a secondary split operator configured to act on data output by the primary split operator, a plurality of secondary data pipelines output by the secondary split operator, and a plurality of secondary filter operators having at least one secondary filter operator on each secondary data pipeline of the plurality of secondary data pipelines;

in response to the receiving the ETL plan:

identifying, by the computer system, the plurality of primary filter operators that are configured to act on data output by the primary split operator in the ETL plan;

automatically generating within a database system, by the computer system, a primary unified filter operator using the plurality of primary filter operators, wherein the generating the primary unified filter operator comprises:

generating a secondary unified filter operator using the plurality of secondary filter operators; and

generating the primary unified filter operator using the secondary unified filter operator and the plurality of primary filter operators; and

generating, without user intervention, an updated ETL plan comprising the primary unified filter operator providing filtered data to the primary split operator;

providing, by the computer system, the updated ETL plan to the client device via the network; and

storing, by the computer system, the updated ETL plan in a data store.

2. The method of claim 1 , wherein the ETL plan further comprises a plurality of data pipelines following the split operator, the plurality of data pipelines having at least one filter operator of the plurality of filter operators on each data pipeline.

3. The method of claim 1 , wherein the unified filter operator comprises a first condition of a first filter operator of the plurality of filter operators joined by unifier logic with a second condition of a second filter operator of the plurality of filter operators, wherein the unifier logic comprises an OR operator.

4. The method of claim 1 , wherein: the unified filter operator implements a portion of a filter operation of a filter operator of the plurality of filter operators; and the ETL plan comprises a residual filter operator acting on data output by the split operator in the ETL plan, the residual filter operator and the unified filter operator together effecting the filter operation.

5. The method of claim 1 , wherein the ETL plan further comprises a transform operator between the split operator and a filter operator of the plurality of filter operators, the method further comprising: excluding the filter operator from the unified filter operator.

6. The method of claim 1 , further comprising: presenting, by the computer system, the updated ETL plan via a user interface.

7. A computer system, comprising one or more processors;

a memory in communication with the one or more processors, the memory configured to store computer-executable instructions, wherein executing the computer-executable instructions causes the one or more processors to perform operations comprising:

receiving, from a source or a client device via a network, an extract, transform, load (ETL) plan comprising a primary split operator, a plurality of primary filter operators, a data pipeline of a plurality of data pipelines that comprises a secondary split operator configured to act on data output by the primary split operator, a plurality of secondary data pipelines output by the secondary split operator, and a plurality of secondary filter operators having at least one secondary filter operator on each secondary data pipeline of the plurality of secondary data pipelines;

in response to the receiving the ETL plan:

identifying that the plurality of primary filter operators are configured to act on data output by the primary split operator in the ETL plan;

automatically generating, within a database system, a primary unified filter operator using the plurality of primary filter operators, wherein the generating the primary unified filter operator comprises:

generating a secondary unified filter operator using the plurality of secondary filter operators; and

generating the primary unified filter operator using the secondary unified filter operator and the plurality of primary filter operators; and

generating, without user intervention, an updated ETL plan comprising the primary unified filter operator providing filtered data to the primary split operator;

providing the updated ETL plan to the client device via the network; and

storing the updated ETL plan in a data store.

8. The computer system of claim 7 , wherein the ETL plan further comprises a plurality of data pipelines following the split operator, the plurality of data pipelines having at least one filter operator of the plurality of filter operators on each data pipeline.

9. The computer system of claim 7 , wherein the unified filter operator comprises a first condition of a first filter operator of the plurality of filter operators joined by unifier logic with a second condition of a second filter operator of the plurality of filter operators, wherein the unifier logic comprises an OR operator.

10. The computer system of claim 7 , wherein the unified filter operator implements a portion of a filter operation of a filter operator of the plurality of filter operators; and the ETL plan comprises a residual filter operator acting on data output by the split operator in the ETL plan, the residual filter operator and the unified filter operator together effecting the filter operation.

11. The computer system of claim 7 , wherein the ETL plan further comprises a transform operator between the split operator and a filter operator of the plurality of filter operators, and wherein the computer-executable instructions, when executed, further cause the one or more processors of the computer system to perform steps comprising: excluding the filter operator from the unified filter operator.

12. The computer system of claim 7 , wherein the computer-executable instructions, when executed, further cause the one or more processors of the computer system to perform steps comprising: presenting, by the computer system, the updated ETL plan via a user interface.

13. A non-transitory computer-readable storage medium, storing computer-executable instructions that, when executed, cause one or more processors of a computer system to perform operations comprising:

receiving, from a source or a client device via a network, an extract, transform, load (ETL) plan comprising a primary split operator, a plurality of primary filter operators, a data pipeline of a plurality of data pipelines that comprises a secondary split operator configured to act on data output by the primary split operator, a plurality of secondary data pipelines output by the secondary split operator, and a plurality of secondary filter operators having at least one secondary filter operator on each secondary data pipeline of the plurality of secondary data pipelines;

in response to the receiving the ETL plan:

identifying the plurality of primary filter operators that are configured to act on data output by the primary split operator in the ETL plan;

automatically generating within a database system a primary unified filter operator using the plurality of primary filter operators, wherein the generating the primary unified filter operator comprises:

generating a secondary unified filter operator using the plurality of secondary filter operators; and

generating the primary unified filter operator using the secondary unified filter operator and the plurality of primary filter operators;

generating, without user intervention, an updated ETL plan comprising the primary unified filter operator providing filtered data to the primary split operator;

providing the updated ETL plan to the client device via the network; and

storing, by the computer system, the updated ETL plan in a data store.

14. The computer-readable storage medium of claim 13 , wherein the ETL plan further comprises a plurality of data pipelines following the split operator, the plurality of data pipelines having at least one filter operator of the plurality of filter operators on each data pipeline.

15. The computer-readable storage medium of claim 13 , wherein the unified filter operator comprises a first condition of a first filter operator of the plurality of filter operators joined by unifier logic with a second condition of a second filter operator of the plurality of filter operators, wherein the unifier logic comprises an OR operator.

16. The computer-readable storage medium of claim 13 , wherein the unified filter operator implements a portion of a filter operation of a filter operator of the plurality of filter operators; and the ETL plan comprises a residual filter operator acting on data output by the split operator in the ETL plan, the residual filter operator and the unified filter operator together effecting the filter operation.

17. The computer-readable storage medium of claim 13 , wherein the ETL plan further comprises a transform operator between the split operator and a filter operator of the plurality of filter operators, and wherein the computer-executable instructions, when executed, further cause the one or more processors of the computer system to perform steps comprising: excluding the filter operator from the unified filter operator.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 26, 2020
From: MADURI, HANUMATH RAO
To: ORACLE INTERNATIONAL CORPORATION
Reel/Frame 054166/0937 →
Continuity (1)
Related Publication 20220129474A1 · Apr 28, 2022