A logical plan node with a left and right child.
A hint for the optimizer that we should broadcast the child
if used in a join operator.
A logical node that represents a non-query command to be executed by the system.
Cube is a syntactic sugar for GROUPING SETS, and will be transformed to GroupingSets, and eventually will be transformed to Aggregate(.
Returns a new logical plan that dedups input rows.
Apply the all of the GroupExpressions to every input row, hence we will get multiple output rows for a input row.
Applies a Generator to a stream of input rows, combining the output of each into a new stream of rows.
A GROUP BY clause with GROUPING SETS can generate a result set equivalent to generated by a UNION ALL of multiple simple GROUP BY clauses.
A logical plan node with no children.
Performs a physical redistribution of the data.
Return a new RDD that has exactly numPartitions
partitions.
This method repartitions data using Expressions, and receives information about the number of partitions during execution.
Rollup is a syntactic sugar for GROUPING SETS, and will be transformed to GroupingSets, and eventually will be transformed to Aggregate(.
Sample the dataset.
A placeholder for implementation specific input and output properties when passing data to a script.
Transforms the input by forking and running the specified script.
A logical plan node with single child.
A container for holding named common table expressions (CTEs) and a query plan.
A relation with one row.