Back to results
US 9,852,184 B2Granted
Partition-aware distributed execution of window operator
AssigneeSap SE
InventorsBoyung Lee, Yongsik Yoon
Life of this patent
Estimating the term…
Abstract
Partition-aware calculation of a window operator can be supported. Different nodes can calculate window function sub-results on database partitions locally, in parallel and independently. Recognition of scenarios in which such parallelism is permissible can be performed. Overall superior performance can result.
Claims15
A method implemented at least in part by a computer, the method comprising:
- for a plurality of database table partitions of a partitioned database table partitioned according to one or more partition columns of the partitioned database table, assigning the database table partitions to respective different nodes for a window calculation specified by a window operator comprising a plurality of specified PARTITION BY partition columns that are a superset of the partition columns of the partitioned database table, wherein the superset comprises one or more PARTITION BY partition columns that are not partition columns of the partitioned database table;
- via the database table partitions, calculating window function sub-results locally at the different nodes, wherein further partitioning to fulfill the window operator PARTITION BY partition columns that are not partition columns of the partitioned database table is performed locally in parallel across the different nodes;
- and
- combining the local window function sub-results into an overall window function result of the window operator.
1 more element
A system comprising:
- an input database table stored in one or more non-transitory computer-readable media and comprising a plurality of database table rows comprising a plurality of columns, wherein the input database table is partitioned into a plurality of partitions according to one or more input database table partition columns;
- a window function calculation orchestrator configured to receive an indication of a window operator comprising a plurality of specified PARTITION BY partition columns that are a proper superset of one or more partition columns of the input database table, wherein the window function calculation orchestrator is configured to assign the partitions to a plurality of respective different nodes;
- the plurality of different nodes, wherein the plurality of different nodes are configured to accept respective of the partitions and calculate window function sub-results locally for the partitions according to the window operator, and perform further partitioning to fulfill the window operator PARTITION BY partition columns that are not partition columns of the input database table locally in parallel across the different nodes;
- and
- an overall window function result of the window operator constructed from the window function sub-results at the different nodes.
2 more elements
One or more computer-readable media comprising computer-executable instructions that when executed by a computing system perform a method comprising:
- for a plurality of database table partitions of a partitioned database table partitioned according to one or more partition columns of the partitioned database table, assigning the database table partitions to respective different nodes for a window calculation specified by a window operator comprising a plurality of specified PARTITION BY partition columns that are a superset of the partition columns of the partitioned database table, wherein the superset comprises one or more PARTITION BY partition columns that are not partition columns of the partitioned database table;
- via the database table partitions, calculating window function sub-results locally at the different nodes, wherein further partitioning to fulfill the window operator PARTITION BY partition columns that are not partition columns of the partitioned database table is performed locally in parallel across the different nodes;
- and
- combining the local window function sub-results into an overall window function result of the window operator.
1 more element
Dependencies are inferred from the claim text.