Class

org.apache.spark.sql.execution.aggregate

SnappyHashAggregateExec

Related Doc: package aggregate

Permalink

case class SnappyHashAggregateExec(requiredChildDistributionExpressions: Option[Seq[Expression]], groupingExpressions: Seq[NamedExpression], aggregateExpressions: Seq[AggregateExpression], aggregateAttributes: Seq[Attribute], __resultExpressions: Seq[NamedExpression], child: SparkPlan, hasDistinct: Boolean) extends SparkPlan with UnaryExecNode with BatchConsumer with NonRecursivePlans with Product with Serializable

Hash-based aggregate operator that can also fallback to sorting when data exceeds memory size.

Parts of this class have been adapted from Spark's HashAggregateExec. That class is not extended because it forces that the limitations HashAggregateExec.supportsAggregate of that implementation in the constructor itself while this implementation has no such restriction.

Linear Supertypes
NonRecursivePlans, BatchConsumer, CodegenSupport, UnaryExecNode, SparkPlan, Serializable, Serializable, internal.Logging, QueryPlan[SparkPlan], TreeNode[SparkPlan], Product, Equals, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. SnappyHashAggregateExec
  2. NonRecursivePlans
  3. BatchConsumer
  4. CodegenSupport
  5. UnaryExecNode
  6. SparkPlan
  7. Serializable
  8. Serializable
  9. Logging
  10. QueryPlan
  11. TreeNode
  12. Product
  13. Equals
  14. AnyRef
  15. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new SnappyHashAggregateExec(requiredChildDistributionExpressions: Option[Seq[Expression]], groupingExpressions: Seq[NamedExpression], aggregateExpressions: Seq[AggregateExpression], aggregateAttributes: Seq[Attribute], __resultExpressions: Seq[NamedExpression], child: SparkPlan, hasDistinct: Boolean)

    Permalink

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. val __resultExpressions: Seq[NamedExpression]

    Permalink
  5. val aggregateAttributes: Seq[Attribute]

    Permalink
  6. val aggregateExpressions: Seq[AggregateExpression]

    Permalink
  7. lazy val allAttributes: AttributeSeq

    Permalink
    Definition Classes
    SnappyHashAggregateExec → QueryPlan
  8. def apply(number: Int): TreeNode[_]

    Permalink
    Definition Classes
    TreeNode
  9. def argString: String

    Permalink
    Definition Classes
    TreeNode
  10. def asCode: String

    Permalink
    Definition Classes
    TreeNode
  11. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  12. def batchConsume(ctx: CodegenContext, plan: SparkPlan, input: Seq[ExprCode]): String

    Permalink

    Generate Java source code to do any processing before a batch is consumed by a DataSourceScanExec that does batch processing (e.g.

    Generate Java source code to do any processing before a batch is consumed by a DataSourceScanExec that does batch processing (e.g. per-batch optimizations, initializations etc).

    Implementations should use this for additional optimizations that can be done at batch level when a batched scan is being done. They should not depend on this being invoked since many scans will not be batched.

    Definition Classes
    SnappyHashAggregateExecBatchConsumer
  13. def beforeStop(ctx: CodegenContext, plan: SparkPlan, input: Seq[ExprCode]): String

    Permalink

    Generate Java source code to do any processing before return after current row processing i.e.

    Generate Java source code to do any processing before return after current row processing i.e. when shouldStop() returns true.

    Definition Classes
    SnappyHashAggregateExecBatchConsumer
  14. def canConsume(plan: SparkPlan): Boolean

    Permalink

    Returns true if the given plan returning batches of data can be consumed by this plan.

    Returns true if the given plan returning batches of data can be consumed by this plan.

    Definition Classes
    SnappyHashAggregateExecBatchConsumer
  15. lazy val canonicalized: SparkPlan

    Permalink
    Attributes
    protected
    Definition Classes
    QueryPlan
  16. val child: SparkPlan

    Permalink
    Definition Classes
    SnappyHashAggregateExec → UnaryExecNode
  17. final def children: Seq[SparkPlan]

    Permalink
    Definition Classes
    UnaryExecNode → TreeNode
  18. lazy val cleanArgs: Seq[Any]

    Permalink
    Attributes
    protected
    Definition Classes
    QueryPlan
  19. def cleanExpression(e: Expression): Expression

    Permalink
    Attributes
    protected
    Definition Classes
    QueryPlan
  20. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  21. def collect[B](pf: PartialFunction[SparkPlan, B]): Seq[B]

    Permalink
    Definition Classes
    TreeNode
  22. def collectFirst[B](pf: PartialFunction[SparkPlan, B]): Option[B]

    Permalink
    Definition Classes
    TreeNode
  23. def collectLeaves(): Seq[SparkPlan]

    Permalink
    Definition Classes
    TreeNode
  24. lazy val constraints: ExpressionSet

    Permalink
    Definition Classes
    QueryPlan
  25. final def consume(ctx: CodegenContext, outputVars: Seq[ExprCode], row: String): String

    Permalink
    Definition Classes
    CodegenSupport
  26. lazy val containsChild: Set[TreeNode[_]]

    Permalink
    Definition Classes
    TreeNode
  27. def doConsume(ctx: CodegenContext, input: Seq[ExprCode], row: ExprCode): String

    Permalink
    Definition Classes
    SnappyHashAggregateExec → CodegenSupport
  28. def doExecute(): RDD[InternalRow]

    Permalink
    Attributes
    protected
    Definition Classes
    SnappyHashAggregateExec → SparkPlan
  29. def doExecuteBroadcast[T](): Broadcast[T]

    Permalink
    Attributes
    protected[org.apache.spark.sql]
    Definition Classes
    SparkPlan
  30. def doPrepare(): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    SparkPlan
  31. def doProduce(ctx: CodegenContext): String

    Permalink
    Attributes
    protected
    Definition Classes
    SnappyHashAggregateExec → CodegenSupport
  32. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  33. def evaluateRequiredVariables(attributes: Seq[Attribute], variables: Seq[ExprCode], required: AttributeSet): String

    Permalink
    Attributes
    protected
    Definition Classes
    CodegenSupport
  34. def evaluateVariables(variables: Seq[ExprCode]): String

    Permalink
    Attributes
    protected
    Definition Classes
    CodegenSupport
  35. final def execute(): RDD[InternalRow]

    Permalink
    Definition Classes
    SparkPlan
  36. final def executeBroadcast[T](): Broadcast[T]

    Permalink
    Definition Classes
    SparkPlan
  37. def executeCollect(): Array[InternalRow]

    Permalink
    Definition Classes
    SparkPlan
  38. def executeCollectPublic(): Array[Row]

    Permalink
    Definition Classes
    SparkPlan
  39. final def executeQuery[T](query: ⇒ T): T

    Permalink
    Attributes
    protected
    Definition Classes
    SparkPlan
  40. def executeTake(n: Int): Array[InternalRow]

    Permalink
    Definition Classes
    SparkPlan
  41. def executeToIterator(): Iterator[InternalRow]

    Permalink
    Definition Classes
    SparkPlan
  42. final def expressions: Seq[Expression]

    Permalink
    Definition Classes
    QueryPlan
  43. def fastEquals(other: TreeNode[_]): Boolean

    Permalink
    Definition Classes
    TreeNode
  44. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  45. def find(f: (SparkPlan) ⇒ Boolean): Option[SparkPlan]

    Permalink
    Definition Classes
    TreeNode
  46. def flatMap[A](f: (SparkPlan) ⇒ TraversableOnce[A]): Seq[A]

    Permalink
    Definition Classes
    TreeNode
  47. def foreach(f: (SparkPlan) ⇒ Unit): Unit

    Permalink
    Definition Classes
    TreeNode
  48. def foreachUp(f: (SparkPlan) ⇒ Unit): Unit

    Permalink
    Definition Classes
    TreeNode
  49. def generateTreeString(depth: Int, lastChildren: Seq[Boolean], builder: StringBuilder, verbose: Boolean, prefix: String): StringBuilder

    Permalink
    Definition Classes
    TreeNode
  50. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  51. def getRelevantConstraints(constraints: Set[Expression]): Set[Expression]

    Permalink
    Attributes
    protected
    Definition Classes
    QueryPlan
  52. val groupingExpressions: Seq[NamedExpression]

    Permalink
  53. val hasDistinct: Boolean

    Permalink
  54. def hashCode(): Int

    Permalink
    Definition Classes
    TreeNode → AnyRef → Any
  55. def initializeLogIfNecessary(isInterpreter: Boolean): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  56. def innerChildren: Seq[QueryPlan[_]]

    Permalink
    Attributes
    protected
    Definition Classes
    QueryPlan → TreeNode
  57. def inputRDDs(): Seq[RDD[InternalRow]]

    Permalink
    Definition Classes
    SnappyHashAggregateExec → CodegenSupport
  58. def inputSet: AttributeSet

    Permalink
    Definition Classes
    QueryPlan
  59. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  60. def isTraceEnabled(): Boolean

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  61. def jsonFields: List[JField]

    Permalink
    Attributes
    protected
    Definition Classes
    TreeNode
  62. def log: Logger

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  63. def logDebug(msg: ⇒ String, throwable: Throwable): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  64. def logDebug(msg: ⇒ String): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  65. def logError(msg: ⇒ String, throwable: Throwable): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  66. def logError(msg: ⇒ String): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  67. def logInfo(msg: ⇒ String, throwable: Throwable): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  68. def logInfo(msg: ⇒ String): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  69. def logName: String

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  70. def logTrace(msg: ⇒ String, throwable: Throwable): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  71. def logTrace(msg: ⇒ String): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  72. def logWarning(msg: ⇒ String, throwable: Throwable): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  73. def logWarning(msg: ⇒ String): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  74. def longMetric(name: String): SQLMetric

    Permalink
    Definition Classes
    SparkPlan
  75. def makeCopy(newArgs: Array[AnyRef]): SparkPlan

    Permalink
    Definition Classes
    SparkPlan → TreeNode
  76. def map[A](f: (SparkPlan) ⇒ A): Seq[A]

    Permalink
    Definition Classes
    TreeNode
  77. def mapChildren(f: (SparkPlan) ⇒ SparkPlan): SparkPlan

    Permalink
    Definition Classes
    TreeNode
  78. def mapExpressions(f: (Expression) ⇒ Expression): SnappyHashAggregateExec.this.type

    Permalink
    Definition Classes
    QueryPlan
  79. def mapProductIterator[B](f: (Any) ⇒ B)(implicit arg0: ClassTag[B]): Array[B]

    Permalink
    Attributes
    protected
    Definition Classes
    TreeNode
  80. def metadata: Map[String, String]

    Permalink
    Definition Classes
    SparkPlan
  81. val metricAdd: (String) ⇒ String

    Permalink
  82. def metricTerm(ctx: CodegenContext, name: String): String

    Permalink
    Definition Classes
    CodegenSupport
  83. lazy val metrics: Map[String, SQLMetric]

    Permalink
    Definition Classes
    SnappyHashAggregateExec → SparkPlan
  84. def missingInput: AttributeSet

    Permalink
    Definition Classes
    QueryPlan
  85. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  86. def newMutableProjection(expressions: Seq[Expression], inputSchema: Seq[Attribute], useSubexprElimination: Boolean): MutableProjection

    Permalink
    Attributes
    protected
    Definition Classes
    SparkPlan
  87. def newNaturalAscendingOrdering(dataTypes: Seq[DataType]): Ordering[InternalRow]

    Permalink
    Attributes
    protected
    Definition Classes
    SparkPlan
  88. def newOrdering(order: Seq[SortOrder], inputSchema: Seq[Attribute]): Ordering[InternalRow]

    Permalink
    Attributes
    protected
    Definition Classes
    SparkPlan
  89. def newPredicate(expression: Expression, inputSchema: Seq[Attribute]): Predicate

    Permalink
    Attributes
    protected
    Definition Classes
    SparkPlan
  90. def nodeName: String

    Permalink
    Definition Classes
    SnappyHashAggregateExec → TreeNode
  91. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  92. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  93. def numberedTreeString: String

    Permalink
    Definition Classes
    TreeNode
  94. val origin: Origin

    Permalink
    Definition Classes
    TreeNode
  95. def otherCopyArgs: Seq[AnyRef]

    Permalink
    Attributes
    protected
    Definition Classes
    TreeNode
  96. def output: Seq[Attribute]

    Permalink
    Definition Classes
    SnappyHashAggregateExec → QueryPlan
  97. def outputOrdering: Seq[SortOrder]

    Permalink
    Definition Classes
    SparkPlan
  98. def outputPartitioning: Partitioning

    Permalink
    Definition Classes
    SnappyHashAggregateExec → SparkPlan
  99. def outputSet: AttributeSet

    Permalink
    Definition Classes
    QueryPlan
  100. def p(number: Int): SparkPlan

    Permalink
    Definition Classes
    TreeNode
  101. var parent: CodegenSupport

    Permalink
    Attributes
    protected
    Definition Classes
    CodegenSupport
  102. final def prepare(): Unit

    Permalink
    Definition Classes
    SparkPlan
  103. def prepareSubqueries(): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    SparkPlan
  104. def prettyJson: String

    Permalink
    Definition Classes
    TreeNode
  105. def printSchema(): Unit

    Permalink
    Definition Classes
    QueryPlan
  106. final def produce(ctx: CodegenContext, parent: CodegenSupport): String

    Permalink
    Definition Classes
    CodegenSupport
  107. def producedAttributes: AttributeSet

    Permalink
    Definition Classes
    SnappyHashAggregateExec → QueryPlan
  108. var producedForPlanInstance: Boolean

    Permalink
    Definition Classes
    NonRecursivePlans
  109. def references: AttributeSet

    Permalink
    Definition Classes
    QueryPlan
  110. def requiredChildDistribution: List[Distribution]

    Permalink
    Definition Classes
    SnappyHashAggregateExec → SparkPlan
  111. val requiredChildDistributionExpressions: Option[Seq[Expression]]

    Permalink
  112. def requiredChildOrdering: Seq[Seq[SortOrder]]

    Permalink
    Definition Classes
    SparkPlan
  113. def resetMetrics(): Unit

    Permalink
    Definition Classes
    SparkPlan
  114. def resultExpressions: Seq[NamedExpression]

    Permalink
    Annotations
    @transient()
  115. def sameResult(plan: SparkPlan): Boolean

    Permalink
    Definition Classes
    QueryPlan
  116. lazy val schema: StructType

    Permalink
    Definition Classes
    QueryPlan
  117. def schemaString: String

    Permalink
    Definition Classes
    QueryPlan
  118. lazy val simpleString: String

    Permalink
    Definition Classes
    SnappyHashAggregateExec → QueryPlan → TreeNode
  119. def sparkContext: SparkContext

    Permalink
    Attributes
    protected
    Definition Classes
    SparkPlan
  120. final val sqlContext: SQLContext

    Permalink
    Definition Classes
    SparkPlan
  121. def startProducing(): Unit

    Permalink

    Sets the variable which will disallow recursive plan generation, hence code generation will stop if it fails.

    Sets the variable which will disallow recursive plan generation, hence code generation will stop if it fails. Check for producedForPlanInstance is done in CachedPlanHelperExec.

    Definition Classes
    NonRecursivePlans
  122. def statePrefix: String

    Permalink
    Attributes
    protected
    Definition Classes
    QueryPlan
  123. def stringArgs: Iterator[Any]

    Permalink
    Attributes
    protected
    Definition Classes
    TreeNode
  124. val subexpressionEliminationEnabled: Boolean

    Permalink
    Definition Classes
    SparkPlan
  125. def subqueries: Seq[SparkPlan]

    Permalink
    Definition Classes
    QueryPlan
  126. def supportCodegen: Boolean

    Permalink
    Definition Classes
    CodegenSupport
  127. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  128. def toJSON: String

    Permalink
    Definition Classes
    TreeNode
  129. def toString(): String

    Permalink
    Definition Classes
    TreeNode → AnyRef → Any
  130. def transform(rule: PartialFunction[SparkPlan, SparkPlan]): SparkPlan

    Permalink
    Definition Classes
    TreeNode
  131. def transformAllExpressions(rule: PartialFunction[Expression, Expression]): SnappyHashAggregateExec.this.type

    Permalink
    Definition Classes
    QueryPlan
  132. def transformDown(rule: PartialFunction[SparkPlan, SparkPlan]): SparkPlan

    Permalink
    Definition Classes
    TreeNode
  133. def transformExpressions(rule: PartialFunction[Expression, Expression]): SnappyHashAggregateExec.this.type

    Permalink
    Definition Classes
    QueryPlan
  134. def transformExpressionsDown(rule: PartialFunction[Expression, Expression]): SnappyHashAggregateExec.this.type

    Permalink
    Definition Classes
    QueryPlan
  135. def transformExpressionsUp(rule: PartialFunction[Expression, Expression]): SnappyHashAggregateExec.this.type

    Permalink
    Definition Classes
    QueryPlan
  136. def transformUp(rule: PartialFunction[SparkPlan, SparkPlan]): SparkPlan

    Permalink
    Definition Classes
    TreeNode
  137. def treeString(verbose: Boolean): String

    Permalink
    Definition Classes
    TreeNode
  138. def treeString: String

    Permalink
    Definition Classes
    TreeNode
  139. def usedInputs: AttributeSet

    Permalink
    Definition Classes
    SnappyHashAggregateExec → CodegenSupport
  140. def validConstraints: Set[Expression]

    Permalink
    Attributes
    protected
    Definition Classes
    QueryPlan
  141. def verboseString: String

    Permalink
    Definition Classes
    SnappyHashAggregateExec → QueryPlan → TreeNode
  142. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  143. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  144. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  145. def waitForSubqueries(): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    SparkPlan
  146. def withNewChildren(newChildren: Seq[SparkPlan]): SparkPlan

    Permalink
    Definition Classes
    TreeNode

Inherited from NonRecursivePlans

Inherited from BatchConsumer

Inherited from CodegenSupport

Inherited from UnaryExecNode

Inherited from SparkPlan

Inherited from Serializable

Inherited from Serializable

Inherited from internal.Logging

Inherited from QueryPlan[SparkPlan]

Inherited from TreeNode[SparkPlan]

Inherited from Product

Inherited from Equals

Inherited from AnyRef

Inherited from Any

Ungrouped