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 NonRecursivePlans with UnaryExecNode with BatchConsumer 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
BatchConsumer, CodegenSupport, UnaryExecNode, NonRecursivePlans, SparkPlan, Serializable, Serializable, internal.Logging, QueryPlan[SparkPlan], TreeNode[SparkPlan], Product, Equals, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. SnappyHashAggregateExec
  2. BatchConsumer
  3. CodegenSupport
  4. UnaryExecNode
  5. NonRecursivePlans
  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. var bufVarUpdates: String

    Permalink
    Attributes
    protected
  15. var bufVars: Seq[ExprCode]

    Permalink
    Attributes
    protected
  16. 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
  17. lazy val canonicalized: SparkPlan

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

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

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

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

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

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

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

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

    Permalink
    Definition Classes
    TreeNode
  26. lazy val constraints: ExpressionSet

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    Permalink
    Definition Classes
    TreeNode
  51. def genAssignCodeForWithoutKeys(ev: ExprCode, i: Int, doCopy: Boolean, inputAttrs: Seq[Attribute]): String

    Permalink
    Attributes
    protected
  52. def generateTreeString(depth: Int, lastChildren: Seq[Boolean], builder: StringBuilder, verbose: Boolean, prefix: String): StringBuilder

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

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

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

    Permalink
  56. val hasDistinct: Boolean

    Permalink
  57. def hashCode(): Int

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    Permalink
    Definition Classes
    SnappyHashAggregateExec → TreeNode
  94. final var nonCodeGeneratedPlanCalls: Int

    Permalink

    Variable to disallow recursive generation so will mark the case of non-codegenerated case and throw back exception to use CodegenSparkFallback.

    Variable to disallow recursive generation so will mark the case of non-codegenerated case and throw back exception to use CodegenSparkFallback.

    Attributes
    protected
    Definition Classes
    NonRecursivePlans
  95. final def notify(): Unit

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

    Permalink
    Definition Classes
    AnyRef
  97. def numberedTreeString: String

    Permalink
    Definition Classes
    TreeNode
  98. val origin: Origin

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

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

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

    Permalink
    Definition Classes
    SparkPlan
  102. def outputPartitioning: Partitioning

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

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

    Permalink
    Definition Classes
    TreeNode
  105. var parent: CodegenSupport

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

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

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

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

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

    Permalink
    Definition Classes
    CodegenSupport
  111. def producedAttributes: AttributeSet

    Permalink
    Definition Classes
    SnappyHashAggregateExec → QueryPlan
  112. def references: AttributeSet

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

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

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

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

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

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

    Permalink
    Definition Classes
    QueryPlan
  119. lazy val schema: StructType

    Permalink
    Definition Classes
    QueryPlan
  120. def schemaString: String

    Permalink
    Definition Classes
    QueryPlan
  121. lazy val simpleString: String

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

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

    Permalink
    Definition Classes
    SparkPlan
  124. def statePrefix: String

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

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

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

    Permalink
    Definition Classes
    QueryPlan
  128. def supportCodegen: Boolean

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

    Permalink
    Definition Classes
    AnyRef
  130. def toJSON: String

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

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

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

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

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

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

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

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

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

    Permalink
    Definition Classes
    TreeNode
  140. def treeString: String

    Permalink
    Definition Classes
    TreeNode
  141. def usedInputs: AttributeSet

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

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

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

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

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

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

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

    Permalink
    Definition Classes
    TreeNode

Inherited from BatchConsumer

Inherited from CodegenSupport

Inherited from UnaryExecNode

Inherited from NonRecursivePlans

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