DATAFLOW OPTIMIZATION FOR EXTRACTIONS FROM A DATA REPOSITORY
First Claim
1. A database system-implemented method comprising:
- traversing an object-relationship graph of a data extraction definition in a first pass, the object-relationship graph having a node for each object;
determining steps from each node of the graph in the first pass;
determining if any of the determined steps are repeated;
placing a single instance of each repeated step before other steps in a query plan;
extracting data in a second pass from an object-oriented database system according to the object-relationship graph by performing the repeated steps first and then reusing the repeated steps in other determined steps.
2 Assignments
0 Petitions
Accused Products
Abstract
Dataflow optimization is described for extractions from a data depository. In one example an object-relationship graph of a data extraction definition is traversed in a first pass. The object-relationship graph has a node for each object. The steps from each node of the graph in the first pass is determined. It is determined if any of the determined steps are repeated. A single instance of each repeated step is placed before other steps in a query plan. Data is then extracted in a second pass from the object-oriented database system according to the object-relationship graph by performing the repeated steps first and then reusing the repeated steps in other determined steps.
56 Citations
17 Claims
-
1. A database system-implemented method comprising:
-
traversing an object-relationship graph of a data extraction definition in a first pass, the object-relationship graph having a node for each object; determining steps from each node of the graph in the first pass; determining if any of the determined steps are repeated; placing a single instance of each repeated step before other steps in a query plan; extracting data in a second pass from an object-oriented database system according to the object-relationship graph by performing the repeated steps first and then reusing the repeated steps in other determined steps. - View Dependent Claims (2, 3, 4, 5, 6, 8, 9)
-
-
7. A database system-implemented method comprising:
-
traversing an object-relationship graph through multiple passes, the object-relationship graph defining a data extraction from an object-oriented database as steps through multiple objects as nodes of the graph and through relationships between the nodes; putting shared and reusable steps at the top of the data extraction definition; and reusing shared and reusable steps in later steps of the data extraction definition.
-
-
10. A non-transitory machine-readable medium comprising a plurality of instructions which, when executed by a processing device, cause the processing device to perform one or more operations comprising:
-
traversing an object-relationship graph of a data extraction definition in a first pass, the object-relationship graph having a node for each object; determining steps from each node of the graph in the first pass; determining if any of the determined steps are repeated; placing a single instance of each repeated step before other steps in a query plan; extracting data in a second pass from an object-oriented database system according to the object-relationship graph by performing the repeated steps first and then reusing the repeated steps in other determined steps. - View Dependent Claims (11, 12, 13, 14)
-
-
15. A system comprising:
-
a processor and a memory to execute instructions at the system; and a mechanism to; traverse an object-relationship graph through multiple passes, the object-relationship graph defining a data extraction from an object-oriented database as steps through multiple objects as nodes of the graph and through relationships between the nodes; put shared and reusable steps at the top of the data extraction definition; and reuse shared and reusable steps in later steps of the data extraction definition. - View Dependent Claims (16, 17)
-
Specification