You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@spark.apache.org by StanZhai <ma...@zhaishidan.cn> on 2017/02/22 17:30:00 UTC

The driver hangs at DataFrame.rdd in Spark 2.1.0

Hi all,


The driver hangs at DataFrame.rdd in Spark 2.1.0 when the DataFrame(SQL) is complex, Following thread dump of my driver:


org.apache.spark.sql.catalyst.expressions.AttributeReference.equals(namedExpressions.scala:230) org.apache.spark.sql.catalyst.expressions.IsNotNull.equals(nullExpressions.scala:312) org.apache.spark.sql.catalyst.expressions.Or.equals(predicates.scala:315) org.apache.spark.sql.catalyst.expressions.Or.equals(predicates.scala:315) org.apache.spark.sql.catalyst.expressions.Or.equals(predicates.scala:315) org.apache.spark.sql.catalyst.expressions.Or.equals(predicates.scala:315) org.apache.spark.sql.catalyst.expressions.Or.equals(predicates.scala:315) org.apache.spark.sql.catalyst.expressions.Or.equals(predicates.scala:315) org.apache.spark.sql.catalyst.expressions.Or.equals(predicates.scala:315) org.apache.spark.sql.catalyst.expressions.Or.equals(predicates.scala:315) org.apache.spark.sql.catalyst.expressions.Or.equals(predicates.scala:315) org.apache.spark.sql.catalyst.expressions.Or.equals(predicates.scala:315) org.apache.spark.sql.catalyst.expressions.Or.equals(predicates.scala:315) org.apache.spark.sql.catalyst.expressions.Or.equals(predicates.scala:315) org.apache.spark.sql.catalyst.expressions.Or.equals(predicates.scala:315) org.apache.spark.sql.catalyst.expressions.Or.equals(predicates.scala:315) org.apache.spark.sql.catalyst.expressions.Or.equals(predicates.scala:315) org.apache.spark.sql.catalyst.expressions.Or.equals(predicates.scala:315) org.apache.spark.sql.catalyst.expressions.Or.equals(predicates.scala:315) org.apache.spark.sql.catalyst.expressions.Or.equals(predicates.scala:315) org.apache.spark.sql.catalyst.expressions.Or.equals(predicates.scala:315) org.apache.spark.sql.catalyst.expressions.Or.equals(predicates.scala:315) scala.collection.mutable.FlatHashTable$class.addEntry(FlatHashTable.scala:151) scala.collection.mutable.HashSet.addEntry(HashSet.scala:40) scala.collection.mutable.FlatHashTable$class.addElem(FlatHashTable.scala:139) scala.collection.mutable.HashSet.addElem(HashSet.scala:40) scala.collection.mutable.HashSet.$plus$eq(HashSet.scala:59) scala.collection.mutable.HashSet.$plus$eq(HashSet.scala:40) scala.collection.generic.Growable$$anonfun$$plus$plus$eq$1.apply(Growable.scala:59) scala.collection.generic.Growable$$anonfun$$plus$plus$eq$1.apply(Growable.scala:59) scala.collection.mutable.HashSet.foreach(HashSet.scala:78) scala.collection.generic.Growable$class.$plus$plus$eq(Growable.scala:59) scala.collection.mutable.AbstractSet.$plus$plus$eq(Set.scala:46) scala.collection.mutable.HashSet.clone(HashSet.scala:83) scala.collection.mutable.HashSet.clone(HashSet.scala:40) org.apache.spark.sql.catalyst.expressions.ExpressionSet.$plus(ExpressionSet.scala:65) org.apache.spark.sql.catalyst.expressions.ExpressionSet.$plus(ExpressionSet.scala:50) scala.collection.SetLike$$anonfun$$plus$plus$1.apply(SetLike.scala:141) scala.collection.SetLike$$anonfun$$plus$plus$1.apply(SetLike.scala:141) scala.collection.TraversableOnce$$anonfun$foldLeft$1.apply(TraversableOnce.scala:157) scala.collection.TraversableOnce$$anonfun$foldLeft$1.apply(TraversableOnce.scala:157) scala.collection.immutable.HashSet$HashSet1.foreach(HashSet.scala:316) scala.collection.immutable.HashSet$HashTrieSet.foreach(HashSet.scala:972) scala.collection.immutable.HashSet$HashTrieSet.foreach(HashSet.scala:972) scala.collection.immutable.HashSet$HashTrieSet.foreach(HashSet.scala:972) scala.collection.TraversableOnce$class.foldLeft(TraversableOnce.scala:157) scala.collection.AbstractTraversable.foldLeft(Traversable.scala:104) scala.collection.TraversableOnce$class.$div$colon(TraversableOnce.scala:151) scala.collection.AbstractTraversable.$div$colon(Traversable.scala:104) scala.collection.SetLike$class.$plus$plus(SetLike.scala:141) org.apache.spark.sql.catalyst.expressions.ExpressionSet.$plus$plus(ExpressionSet.scala:50) org.apache.spark.sql.catalyst.plans.logical.UnaryNode$$anonfun$getAliasedConstraints$1.apply(LogicalPlan.scala:300) org.apache.spark.sql.catalyst.plans.logical.UnaryNode$$anonfun$getAliasedConstraints$1.apply(LogicalPlan.scala:297) scala.collection.immutable.List.foreach(List.scala:381) org.apache.spark.sql.catalyst.plans.logical.UnaryNode.getAliasedConstraints(LogicalPlan.scala:297) org.apache.spark.sql.catalyst.plans.logical.Project.validConstraints(basicLogicalOperators.scala:58) org.apache.spark.sql.catalyst.plans.QueryPlan.constraints$lzycompute(QueryPlan.scala:187) => holding Monitor(org.apache.spark.sql.catalyst.plans.logical.Join@1365611745}) org.apache.spark.sql.catalyst.plans.QueryPlan.constraints(QueryPlan.scala:187) org.apache.spark.sql.catalyst.plans.logical.Project.validConstraints(basicLogicalOperators.scala:58) org.apache.spark.sql.catalyst.plans.QueryPlan.constraints$lzycompute(QueryPlan.scala:187) => holding Monitor(org.apache.spark.sql.catalyst.plans.logical.Join@1365611745}) org.apache.spark.sql.catalyst.plans.QueryPlan.constraints(QueryPlan.scala:187) org.apache.spark.sql.catalyst.plans.logical.Project.validConstraints(basicLogicalOperators.scala:58) org.apache.spark.sql.catalyst.plans.QueryPlan.constraints$lzycompute(QueryPlan.scala:187) => holding Monitor(org.apache.spark.sql.catalyst.plans.logical.Join@1365611745}) org.apache.spark.sql.catalyst.plans.QueryPlan.constraints(QueryPlan.scala:187) org.apache.spark.sql.catalyst.plans.logical.Project.validConstraints(basicLogicalOperators.scala:58) org.apache.spark.sql.catalyst.plans.QueryPlan.constraints$lzycompute(QueryPlan.scala:187) => holding Monitor(org.apache.spark.sql.catalyst.plans.logical.Join@1365611745}) org.apache.spark.sql.catalyst.plans.QueryPlan.constraints(QueryPlan.scala:187) org.apache.spark.sql.catalyst.plans.logical.Project.validConstraints(basicLogicalOperators.scala:58) org.apache.spark.sql.catalyst.plans.QueryPlan.constraints$lzycompute(QueryPlan.scala:187) => holding Monitor(org.apache.spark.sql.catalyst.plans.logical.Join@1365611745}) org.apache.spark.sql.catalyst.plans.QueryPlan.constraints(QueryPlan.scala:187) org.apache.spark.sql.catalyst.plans.logical.Join.validConstraints(basicLogicalOperators.scala:302) org.apache.spark.sql.catalyst.plans.QueryPlan.constraints$lzycompute(QueryPlan.scala:187) => holding Monitor(org.apache.spark.sql.catalyst.plans.logical.Join@1365611745}) org.apache.spark.sql.catalyst.plans.QueryPlan.constraints(QueryPlan.scala:187) org.apache.spark.sql.catalyst.optimizer.InferFiltersFromConstraints$$anonfun$apply$13.applyOrElse(Optimizer.scala:618) org.apache.spark.sql.catalyst.optimizer.InferFiltersFromConstraints$$anonfun$apply$13.applyOrElse(Optimizer.scala:605) org.apache.spark.sql.catalyst.trees.TreeNode$$anonfun$3.apply(TreeNode.scala:332) org.apache.spark.sql.catalyst.trees.TreeNode$$anonfun$3.apply(TreeNode.scala:332) org.apache.spark.sql.catalyst.trees.CurrentOrigin$.withOrigin(TreeNode.scala:70) org.apache.spark.sql.catalyst.trees.TreeNode.transformDown(TreeNode.scala:331) org.apache.spark.sql.catalyst.trees.TreeNode$$anonfun$transformDown$1.apply(TreeNode.scala:337) org.apache.spark.sql.catalyst.trees.TreeNode$$anonfun$transformDown$1.apply(TreeNode.scala:337) org.apache.spark.sql.catalyst.trees.TreeNode$$anonfun$1.apply(TreeNode.scala:202) org.apache.spark.sql.catalyst.trees.TreeNode.mapProductIterator(TreeNode.scala:188) org.apache.spark.sql.catalyst.trees.TreeNode.mapChildren(TreeNode.scala:200) org.apache.spark.sql.catalyst.trees.TreeNode.transformDown(TreeNode.scala:337) org.apache.spark.sql.catalyst.trees.TreeNode$$anonfun$transformDown$1.apply(TreeNode.scala:337) org.apache.spark.sql.catalyst.trees.TreeNode$$anonfun$transformDown$1.apply(TreeNode.scala:337) org.apache.spark.sql.catalyst.trees.TreeNode$$anonfun$1.apply(TreeNode.scala:202) org.apache.spark.sql.catalyst.trees.TreeNode.mapProductIterator(TreeNode.scala:188) org.apache.spark.sql.catalyst.trees.TreeNode.mapChildren(TreeNode.scala:200) org.apache.spark.sql.catalyst.trees.TreeNode.transformDown(TreeNode.scala:337) org.apache.spark.sql.catalyst.trees.TreeNode$$anonfun$transformDown$1.apply(TreeNode.scala:337) org.apache.spark.sql.catalyst.trees.TreeNode$$anonfun$transformDown$1.apply(TreeNode.scala:337) org.apache.spark.sql.catalyst.trees.TreeNode$$anonfun$1.apply(TreeNode.scala:202) org.apache.spark.sql.catalyst.trees.TreeNode.mapProductIterator(TreeNode.scala:188) org.apache.spark.sql.catalyst.trees.TreeNode.mapChildren(TreeNode.scala:200) org.apache.spark.sql.catalyst.trees.TreeNode.transformDown(TreeNode.scala:337) org.apache.spark.sql.catalyst.trees.TreeNode$$anonfun$transformDown$1.apply(TreeNode.scala:337) org.apache.spark.sql.catalyst.trees.TreeNode$$anonfun$transformDown$1.apply(TreeNode.scala:337) org.apache.spark.sql.catalyst.trees.TreeNode$$anonfun$1.apply(TreeNode.scala:202) org.apache.spark.sql.catalyst.trees.TreeNode.mapProductIterator(TreeNode.scala:188) org.apache.spark.sql.catalyst.trees.TreeNode.mapChildren(TreeNode.scala:200) org.apache.spark.sql.catalyst.trees.TreeNode.transformDown(TreeNode.scala:337) org.apache.spark.sql.catalyst.trees.TreeNode.transform(TreeNode.scala:321) org.apache.spark.sql.catalyst.optimizer.InferFiltersFromConstraints$.apply(Optimizer.scala:605) org.apache.spark.sql.catalyst.optimizer.InferFiltersFromConstraints$.apply(Optimizer.scala:604) org.apache.spark.sql.catalyst.rules.RuleExecutor$$anonfun$execute$1$$anonfun$apply$1.apply(RuleExecutor.scala:85) org.apache.spark.sql.catalyst.rules.RuleExecutor$$anonfun$execute$1$$anonfun$apply$1.apply(RuleExecutor.scala:82) scala.collection.IndexedSeqOptimized$class.foldl(IndexedSeqOptimized.scala:57) scala.collection.IndexedSeqOptimized$class.foldLeft(IndexedSeqOptimized.scala:66) scala.collection.mutable.WrappedArray.foldLeft(WrappedArray.scala:35) org.apache.spark.sql.catalyst.rules.RuleExecutor$$anonfun$execute$1.apply(RuleExecutor.scala:82) org.apache.spark.sql.catalyst.rules.RuleExecutor$$anonfun$execute$1.apply(RuleExecutor.scala:74) scala.collection.immutable.List.foreach(List.scala:381) org.apache.spark.sql.catalyst.rules.RuleExecutor.execute(RuleExecutor.scala:74) org.apache.spark.sql.execution.QueryExecution.optimizedPlan$lzycompute(QueryExecution.scala:73) => holding Monitor(org.apache.spark.sql.execution.QueryExecution@184471747}) org.apache.spark.sql.execution.QueryExecution.optimizedPlan(QueryExecution.scala:73) org.apache.spark.sql.execution.QueryExecution$$anonfun$toString$2.apply(QueryExecution.scala:230) org.apache.spark.sql.execution.QueryExecution$$anonfun$toString$2.apply(QueryExecution.scala:230) org.apache.spark.sql.execution.QueryExecution.stringOrError(QueryExecution.scala:107) org.apache.spark.sql.execution.QueryExecution.toString(QueryExecution.scala:230) org.apache.spark.sql.Dataset.rdd$lzycompute(Dataset.scala:2544) org.apache.spark.sql.Dataset.rdd(Dataset.scala:2544)...


The CPU usage of the driver remains 100% like this:



I didn't find this issue in Spark 1.6.2, what causes this in Spark 2.1.0? 


Any help is greatly appreciated!


Best,
Stan

25FEF70B@52873242.80CAAD58 (27K) <http://apache-spark-developers-list.1001551.n3.nabble.com/attachment/21050/0/25FEF70B%4052873242.80CAAD58>




--
View this message in context: http://apache-spark-developers-list.1001551.n3.nabble.com/The-driver-hangs-at-DataFrame-rdd-in-Spark-2-1-0-tp21050.html
Sent from the Apache Spark Developers List mailing list archive at Nabble.com.

Re: The driver hangs at DataFrame.rdd in Spark 2.1.0

Posted by Liang-Chi Hsieh <vi...@gmail.com>.
Hi Stan,

Looks like it is the same issue we are working to solve. Related PRs are:

https://github.com/apache/spark/pull/16998
https://github.com/apache/spark/pull/16785

You can take a look of those PRs and help review too. Thanks.



StanZhai wrote
> Hi all,
> 
> 
> The driver hangs at DataFrame.rdd in Spark 2.1.0 when the DataFrame(SQL)
> is complex, Following thread dump of my driver:
> 
> 
> org.apache.spark.sql.catalyst.expressions.AttributeReference.equals(namedExpressions.scala:230)
> org.apache.spark.sql.catalyst.expressions.IsNotNull.equals(nullExpressions.scala:312)
> org.apache.spark.sql.catalyst.expressions.Or.equals(predicates.scala:315)
> org.apache.spark.sql.catalyst.expressions.Or.equals(predicates.scala:315)
> org.apache.spark.sql.catalyst.expressions.Or.equals(predicates.scala:315)
> org.apache.spark.sql.catalyst.expressions.Or.equals(predicates.scala:315)
> org.apache.spark.sql.catalyst.expressions.Or.equals(predicates.scala:315)
> org.apache.spark.sql.catalyst.expressions.Or.equals(predicates.scala:315)
> org.apache.spark.sql.catalyst.expressions.Or.equals(predicates.scala:315)
> org.apache.spark.sql.catalyst.expressions.Or.equals(predicates.scala:315)
> org.apache.spark.sql.catalyst.expressions.Or.equals(predicates.scala:315)
> org.apache.spark.sql.catalyst.expressions.Or.equals(predicates.scala:315)
> org.apache.spark.sql.catalyst.expressions.Or.equals(predicates.scala:315)
> org.apache.spark.sql.catalyst.expressions.Or.equals(predicates.scala:315)
> org.apache.spark.sql.catalyst.expressions.Or.equals(predicates.scala:315)
> org.apache.spark.sql.catalyst.expressions.Or.equals(predicates.scala:315)
> org.apache.spark.sql.catalyst.expressions.Or.equals(predicates.scala:315)
> org.apache.spark.sql.catalyst.expressions.Or.equals(predicates.scala:315)
> org.apache.spark.sql.catalyst.expressions.Or.equals(predicates.scala:315)
> org.apache.spark.sql.catalyst.expressions.Or.equals(predicates.scala:315)
> org.apache.spark.sql.catalyst.expressions.Or.equals(predicates.scala:315)
> org.apache.spark.sql.catalyst.expressions.Or.equals(predicates.scala:315)
> scala.collection.mutable.FlatHashTable$class.addEntry(FlatHashTable.scala:151)
> scala.collection.mutable.HashSet.addEntry(HashSet.scala:40)
> scala.collection.mutable.FlatHashTable$class.addElem(FlatHashTable.scala:139)
> scala.collection.mutable.HashSet.addElem(HashSet.scala:40)
> scala.collection.mutable.HashSet.$plus$eq(HashSet.scala:59)
> scala.collection.mutable.HashSet.$plus$eq(HashSet.scala:40)
> scala.collection.generic.Growable$$anonfun$$plus$plus$eq$1.apply(Growable.scala:59)
> scala.collection.generic.Growable$$anonfun$$plus$plus$eq$1.apply(Growable.scala:59)
> scala.collection.mutable.HashSet.foreach(HashSet.scala:78)
> scala.collection.generic.Growable$class.$plus$plus$eq(Growable.scala:59)
> scala.collection.mutable.AbstractSet.$plus$plus$eq(Set.scala:46)
> scala.collection.mutable.HashSet.clone(HashSet.scala:83)
> scala.collection.mutable.HashSet.clone(HashSet.scala:40)
> org.apache.spark.sql.catalyst.expressions.ExpressionSet.$plus(ExpressionSet.scala:65)
> org.apache.spark.sql.catalyst.expressions.ExpressionSet.$plus(ExpressionSet.scala:50)
> scala.collection.SetLike$$anonfun$$plus$plus$1.apply(SetLike.scala:141)
> scala.collection.SetLike$$anonfun$$plus$plus$1.apply(SetLike.scala:141)
> scala.collection.TraversableOnce$$anonfun$foldLeft$1.apply(TraversableOnce.scala:157)
> scala.collection.TraversableOnce$$anonfun$foldLeft$1.apply(TraversableOnce.scala:157)
> scala.collection.immutable.HashSet$HashSet1.foreach(HashSet.scala:316)
> scala.collection.immutable.HashSet$HashTrieSet.foreach(HashSet.scala:972)
> scala.collection.immutable.HashSet$HashTrieSet.foreach(HashSet.scala:972)
> scala.collection.immutable.HashSet$HashTrieSet.foreach(HashSet.scala:972)
> scala.collection.TraversableOnce$class.foldLeft(TraversableOnce.scala:157)
> scala.collection.AbstractTraversable.foldLeft(Traversable.scala:104)
> scala.collection.TraversableOnce$class.$div$colon(TraversableOnce.scala:151)
> scala.collection.AbstractTraversable.$div$colon(Traversable.scala:104)
> scala.collection.SetLike$class.$plus$plus(SetLike.scala:141)
> org.apache.spark.sql.catalyst.expressions.ExpressionSet.$plus$plus(ExpressionSet.scala:50)
> org.apache.spark.sql.catalyst.plans.logical.UnaryNode$$anonfun$getAliasedConstraints$1.apply(LogicalPlan.scala:300)
> org.apache.spark.sql.catalyst.plans.logical.UnaryNode$$anonfun$getAliasedConstraints$1.apply(LogicalPlan.scala:297)
> scala.collection.immutable.List.foreach(List.scala:381)
> org.apache.spark.sql.catalyst.plans.logical.UnaryNode.getAliasedConstraints(LogicalPlan.scala:297)
> org.apache.spark.sql.catalyst.plans.logical.Project.validConstraints(basicLogicalOperators.scala:58)
> org.apache.spark.sql.catalyst.plans.QueryPlan.constraints$lzycompute(QueryPlan.scala:187)
> => holding
> Monitor(org.apache.spark.sql.catalyst.plans.logical.Join@1365611745})
> org.apache.spark.sql.catalyst.plans.QueryPlan.constraints(QueryPlan.scala:187)
> org.apache.spark.sql.catalyst.plans.logical.Project.validConstraints(basicLogicalOperators.scala:58)
> org.apache.spark.sql.catalyst.plans.QueryPlan.constraints$lzycompute(QueryPlan.scala:187)
> => holding
> Monitor(org.apache.spark.sql.catalyst.plans.logical.Join@1365611745})
> org.apache.spark.sql.catalyst.plans.QueryPlan.constraints(QueryPlan.scala:187)
> org.apache.spark.sql.catalyst.plans.logical.Project.validConstraints(basicLogicalOperators.scala:58)
> org.apache.spark.sql.catalyst.plans.QueryPlan.constraints$lzycompute(QueryPlan.scala:187)
> => holding
> Monitor(org.apache.spark.sql.catalyst.plans.logical.Join@1365611745})
> org.apache.spark.sql.catalyst.plans.QueryPlan.constraints(QueryPlan.scala:187)
> org.apache.spark.sql.catalyst.plans.logical.Project.validConstraints(basicLogicalOperators.scala:58)
> org.apache.spark.sql.catalyst.plans.QueryPlan.constraints$lzycompute(QueryPlan.scala:187)
> => holding
> Monitor(org.apache.spark.sql.catalyst.plans.logical.Join@1365611745})
> org.apache.spark.sql.catalyst.plans.QueryPlan.constraints(QueryPlan.scala:187)
> org.apache.spark.sql.catalyst.plans.logical.Project.validConstraints(basicLogicalOperators.scala:58)
> org.apache.spark.sql.catalyst.plans.QueryPlan.constraints$lzycompute(QueryPlan.scala:187)
> => holding
> Monitor(org.apache.spark.sql.catalyst.plans.logical.Join@1365611745})
> org.apache.spark.sql.catalyst.plans.QueryPlan.constraints(QueryPlan.scala:187)
> org.apache.spark.sql.catalyst.plans.logical.Join.validConstraints(basicLogicalOperators.scala:302)
> org.apache.spark.sql.catalyst.plans.QueryPlan.constraints$lzycompute(QueryPlan.scala:187)
> => holding
> Monitor(org.apache.spark.sql.catalyst.plans.logical.Join@1365611745})
> org.apache.spark.sql.catalyst.plans.QueryPlan.constraints(QueryPlan.scala:187)
> org.apache.spark.sql.catalyst.optimizer.InferFiltersFromConstraints$$anonfun$apply$13.applyOrElse(Optimizer.scala:618)
> org.apache.spark.sql.catalyst.optimizer.InferFiltersFromConstraints$$anonfun$apply$13.applyOrElse(Optimizer.scala:605)
> org.apache.spark.sql.catalyst.trees.TreeNode$$anonfun$3.apply(TreeNode.scala:332)
> org.apache.spark.sql.catalyst.trees.TreeNode$$anonfun$3.apply(TreeNode.scala:332)
> org.apache.spark.sql.catalyst.trees.CurrentOrigin$.withOrigin(TreeNode.scala:70)
> org.apache.spark.sql.catalyst.trees.TreeNode.transformDown(TreeNode.scala:331)
> org.apache.spark.sql.catalyst.trees.TreeNode$$anonfun$transformDown$1.apply(TreeNode.scala:337)
> org.apache.spark.sql.catalyst.trees.TreeNode$$anonfun$transformDown$1.apply(TreeNode.scala:337)
> org.apache.spark.sql.catalyst.trees.TreeNode$$anonfun$1.apply(TreeNode.scala:202)
> org.apache.spark.sql.catalyst.trees.TreeNode.mapProductIterator(TreeNode.scala:188)
> org.apache.spark.sql.catalyst.trees.TreeNode.mapChildren(TreeNode.scala:200)
> org.apache.spark.sql.catalyst.trees.TreeNode.transformDown(TreeNode.scala:337)
> org.apache.spark.sql.catalyst.trees.TreeNode$$anonfun$transformDown$1.apply(TreeNode.scala:337)
> org.apache.spark.sql.catalyst.trees.TreeNode$$anonfun$transformDown$1.apply(TreeNode.scala:337)
> org.apache.spark.sql.catalyst.trees.TreeNode$$anonfun$1.apply(TreeNode.scala:202)
> org.apache.spark.sql.catalyst.trees.TreeNode.mapProductIterator(TreeNode.scala:188)
> org.apache.spark.sql.catalyst.trees.TreeNode.mapChildren(TreeNode.scala:200)
> org.apache.spark.sql.catalyst.trees.TreeNode.transformDown(TreeNode.scala:337)
> org.apache.spark.sql.catalyst.trees.TreeNode$$anonfun$transformDown$1.apply(TreeNode.scala:337)
> org.apache.spark.sql.catalyst.trees.TreeNode$$anonfun$transformDown$1.apply(TreeNode.scala:337)
> org.apache.spark.sql.catalyst.trees.TreeNode$$anonfun$1.apply(TreeNode.scala:202)
> org.apache.spark.sql.catalyst.trees.TreeNode.mapProductIterator(TreeNode.scala:188)
> org.apache.spark.sql.catalyst.trees.TreeNode.mapChildren(TreeNode.scala:200)
> org.apache.spark.sql.catalyst.trees.TreeNode.transformDown(TreeNode.scala:337)
> org.apache.spark.sql.catalyst.trees.TreeNode$$anonfun$transformDown$1.apply(TreeNode.scala:337)
> org.apache.spark.sql.catalyst.trees.TreeNode$$anonfun$transformDown$1.apply(TreeNode.scala:337)
> org.apache.spark.sql.catalyst.trees.TreeNode$$anonfun$1.apply(TreeNode.scala:202)
> org.apache.spark.sql.catalyst.trees.TreeNode.mapProductIterator(TreeNode.scala:188)
> org.apache.spark.sql.catalyst.trees.TreeNode.mapChildren(TreeNode.scala:200)
> org.apache.spark.sql.catalyst.trees.TreeNode.transformDown(TreeNode.scala:337)
> org.apache.spark.sql.catalyst.trees.TreeNode.transform(TreeNode.scala:321)
> org.apache.spark.sql.catalyst.optimizer.InferFiltersFromConstraints$.apply(Optimizer.scala:605)
> org.apache.spark.sql.catalyst.optimizer.InferFiltersFromConstraints$.apply(Optimizer.scala:604)
> org.apache.spark.sql.catalyst.rules.RuleExecutor$$anonfun$execute$1$$anonfun$apply$1.apply(RuleExecutor.scala:85)
> org.apache.spark.sql.catalyst.rules.RuleExecutor$$anonfun$execute$1$$anonfun$apply$1.apply(RuleExecutor.scala:82)
> scala.collection.IndexedSeqOptimized$class.foldl(IndexedSeqOptimized.scala:57)
> scala.collection.IndexedSeqOptimized$class.foldLeft(IndexedSeqOptimized.scala:66)
> scala.collection.mutable.WrappedArray.foldLeft(WrappedArray.scala:35)
> org.apache.spark.sql.catalyst.rules.RuleExecutor$$anonfun$execute$1.apply(RuleExecutor.scala:82)
> org.apache.spark.sql.catalyst.rules.RuleExecutor$$anonfun$execute$1.apply(RuleExecutor.scala:74)
> scala.collection.immutable.List.foreach(List.scala:381)
> org.apache.spark.sql.catalyst.rules.RuleExecutor.execute(RuleExecutor.scala:74)
> org.apache.spark.sql.execution.QueryExecution.optimizedPlan$lzycompute(QueryExecution.scala:73)
> => holding
> Monitor(org.apache.spark.sql.execution.QueryExecution@184471747})
> org.apache.spark.sql.execution.QueryExecution.optimizedPlan(QueryExecution.scala:73)
> org.apache.spark.sql.execution.QueryExecution$$anonfun$toString$2.apply(QueryExecution.scala:230)
> org.apache.spark.sql.execution.QueryExecution$$anonfun$toString$2.apply(QueryExecution.scala:230)
> org.apache.spark.sql.execution.QueryExecution.stringOrError(QueryExecution.scala:107)
> org.apache.spark.sql.execution.QueryExecution.toString(QueryExecution.scala:230)
> org.apache.spark.sql.Dataset.rdd$lzycompute(Dataset.scala:2544)
> org.apache.spark.sql.Dataset.rdd(Dataset.scala:2544)...
> 
> 
> The CPU usage of the driver remains 100% like this:
> 
> 
> 
> I didn't find this issue in Spark 1.6.2, what causes this in Spark 2.1.0? 
> 
> 
> Any help is greatly appreciated!
> 
> 
> Best,
> Stan
> 
> 25FEF70B@52873242.80CAAD58 (27K)
> &lt;http://apache-spark-developers-list.1001551.n3.nabble.com/attachment/21050/0/25FEF70B%4052873242.80CAAD58&gt;





-----
Liang-Chi Hsieh | @viirya 
Spark Technology Center 
http://www.spark.tc/ 
--
View this message in context: http://apache-spark-developers-list.1001551.n3.nabble.com/The-driver-hangs-at-DataFrame-rdd-in-Spark-2-1-0-tp21050p21083.html
Sent from the Apache Spark Developers List mailing list archive at Nabble.com.

---------------------------------------------------------------------
To unsubscribe e-mail: dev-unsubscribe@spark.apache.org


Re: The driver hangs at DataFrame.rdd in Spark 2.1.0

Posted by Liang-Chi Hsieh <vi...@gmail.com>.
Hi Stan,

Looks like it is the same issue we are working to solve. Related PRs are:

https://github.com/apache/spark/pull/16998
https://github.com/apache/spark/pull/16785

You can take a look of those PRs and help review too. Thanks. 


StanZhai wrote
> Thanks for Cheng's help.
> 
> 
> It must be something wrong with InferFiltersFromConstraints, I just
> removed InferFiltersFromConstraints from
> org/apache/spark/sql/catalyst/optimizer/Optimizer.scala to avoid this
> issue. I will analysis this issue with the method you provided.
> 
> 
> 
> 
> ------------------ Original ------------------
> From:  "Cheng Lian [via Apache Spark Developers
> List]";&lt;ml-node+s1001551n21069h99@n3.nabble.com&gt;;
> Send time: Friday, Feb 24, 2017 2:28 AM
> To: "Stan Zhai"&lt;mail@zhaishidan.cn&gt;; 
> 
> Subject:  Re: The driver hangs at DataFrame.rdd in Spark 2.1.0
> 
> 
> 
>  	                   
> This one seems to be relevant, but it's already fixed in 2.1.0.
>      
> One way to debug is to turn on trace log and check how the      
> analyzer/optimizer behaves.
>      
>      
>      On 2/22/17 11:11 PM, StanZhai wrote:
>      
>             Could this be related to
> https://issues.apache.org/jira/browse/SPARK-17733 ?
>                 
>          
>          
>          
>          ------------------ Original ------------------
>                     From:  "Cheng Lian-3 [via Apache Spark Developers            
> List]";<[hidden               email]>;
>            Send time: Thursday, Feb 23, 2017 9:43 AM
>            To: "Stan Zhai"<[hidden               email]>; 
>            Subject:  Re: The driver hangs at DataFrame.rdd             in
> Spark 2.1.0
>          
>          
>          
>          
> Just from the thread dump you provided, it seems that this          
> particular query plan jams our optimizer. However, it's also          
> possible that the driver just happened to be running optimizer          
> rules at that particular time point.
>          
>          
> Since query planning doesn't touch any actual data, could you          
> please try to minimize this query by replacing the actual          
> relations with temporary views derived from Scala local          
> collections? In this way, it would be much easier for others           to
> reproduce issue.
>          
> Cheng
>          
>          
>          On 2/22/17 5:16 PM, Stan Zhai           wrote:
>          
>                     Thanks for lian's reply.
>            
>            
>            Here is the QueryPlan generated by Spark 1.6.2(I can't            
> get it in Spark 2.1.0):
>                         ...           
>                         
>                         
>              
>              ------------------ Original ------------------
>                             Subject:  Re: The driver hangs at                
> DataFrame.rdd in Spark 2.1.0
>              
>              
>              
>              
> What is the query plan? We had once observed query plans              
> that grow exponentially in iterative ML workloads and the              
> query planner hangs forever. For example, each iteration              
> combines 4 plan trees of the last iteration and forms a              
> larger plan tree. The size of the plan tree can easily               reach
> billions of nodes after 15 iterations.
>              
>              
>              On 2/22/17 9:29 AM, Stan Zhai               wrote:
>              
>                             Hi all,
>                
>                
>                The driver hangs at DataFrame.rdd in Spark 2.1.0 when                
> the DataFrame(SQL) is complex, Following thread dump of                 my
> driver:
>                ...
>                           
>            
>                   
>          
>          
>          
>                     If you reply to this email, your             message
> will be added to the discussion below:
>           
> http://apache-spark-developers-list.1001551.n3.nabble.com/Re-The-driver-hangs-at-DataFrame-rdd-in-Spark-2-1-0-tp21052p21053.html         
>                     To start a new topic under Apache Spark Developers
> List, email           [hidden email]           
>            To unsubscribe from Apache Spark Developers List, click here.
>            NAML 
>        
>        
>        
>        View this message in context: Re:         The driver hangs at
> DataFrame.rdd in Spark 2.1.0
>        Sent from the Apache         Spark Developers List mailing list
> archive at Nabble.com.
>           
>     	 	 	 	
>  	
>  	
>  	 		If you reply to this email, your message will be added to the
> discussion below:
>  	
> http://apache-spark-developers-list.1001551.n3.nabble.com/Re-The-driver-hangs-at-DataFrame-rdd-in-Spark-2-1-0-tp21052p21069.html 	
>  	 		To start a new topic under Apache Spark Developers List, email
> ml-node+s1001551n1h91@n3.nabble.com 
>  		To unsubscribe from Apache Spark Developers List, click here.
>  		NAML





-----
Liang-Chi Hsieh | @viirya 
Spark Technology Center 
http://www.spark.tc/ 
--
View this message in context: http://apache-spark-developers-list.1001551.n3.nabble.com/Re-The-driver-hangs-at-DataFrame-rdd-in-Spark-2-1-0-tp21052p21084.html
Sent from the Apache Spark Developers List mailing list archive at Nabble.com.

---------------------------------------------------------------------
To unsubscribe e-mail: dev-unsubscribe@spark.apache.org


Re: The driver hangs at DataFrame.rdd in Spark 2.1.0

Posted by StanZhai <ma...@zhaishidan.cn>.
Thanks for Cheng's help.


It must be something wrong with InferFiltersFromConstraints, I just removed InferFiltersFromConstraints from org/apache/spark/sql/catalyst/optimizer/Optimizer.scala to avoid this issue. I will analysis this issue with the method your provided.




------------------ Original ------------------
From:  "Cheng Lian [via Apache Spark Developers List]";<ml...@n3.nabble.com>;
Send time: Friday, Feb 24, 2017 2:28 AM
To: "Stan Zhai"<ma...@zhaishidan.cn>; 

Subject:  Re: The driver hangs at DataFrame.rdd in Spark 2.1.0



 	                   
This one seems to be relevant, but it's already fixed in 2.1.0.
     
One way to debug is to turn on trace log and check how the       analyzer/optimizer behaves.
     
     
     On 2/22/17 11:11 PM, StanZhai wrote:
     
            Could this be related to https://issues.apache.org/jira/browse/SPARK-17733 ?
                
         
         
         
         ------------------ Original ------------------
                    From:  "Cheng Lian-3 [via Apache Spark Developers             List]";<[hidden               email]>;
           Send time: Thursday, Feb 23, 2017 9:43 AM
           To: "Stan Zhai"<[hidden               email]>; 
           Subject:  Re: The driver hangs at DataFrame.rdd             in Spark 2.1.0
         
         
         
         
Just from the thread dump you provided, it seems that this           particular query plan jams our optimizer. However, it's also           possible that the driver just happened to be running optimizer           rules at that particular time point.
         
         
Since query planning doesn't touch any actual data, could you           please try to minimize this query by replacing the actual           relations with temporary views derived from Scala local           collections? In this way, it would be much easier for others           to reproduce issue.
         
Cheng
         
         
         On 2/22/17 5:16 PM, Stan Zhai           wrote:
         
                    Thanks for lian's reply.
           
           
           Here is the QueryPlan generated by Spark 1.6.2(I can't             get it in Spark 2.1.0):
                        ...           
                        
                        
             
             ------------------ Original ------------------
                            Subject:  Re: The driver hangs at                 DataFrame.rdd in Spark 2.1.0
             
             
             
             
What is the query plan? We had once observed query plans               that grow exponentially in iterative ML workloads and the               query planner hangs forever. For example, each iteration               combines 4 plan trees of the last iteration and forms a               larger plan tree. The size of the plan tree can easily               reach billions of nodes after 15 iterations.
             
             
             On 2/22/17 9:29 AM, Stan Zhai               wrote:
             
                            Hi all,
               
               
               The driver hangs at DataFrame.rdd in Spark 2.1.0 when                 the DataFrame(SQL) is complex, Following thread dump of                 my driver:
               ...
                          
           
                  
         
         
         
                    If you reply to this email, your             message will be added to the discussion below:
           http://apache-spark-developers-list.1001551.n3.nabble.com/Re-The-driver-hangs-at-DataFrame-rdd-in-Spark-2-1-0-tp21052p21053.html         
                    To start a new topic under Apache Spark Developers List, email           [hidden email]           
           To unsubscribe from Apache Spark Developers List, click here.
           NAML 
       
       
       
       View this message in context: Re:         The driver hangs at DataFrame.rdd in Spark 2.1.0
       Sent from the Apache         Spark Developers List mailing list archive at Nabble.com.
          
    	 	 	 	
 	
 	
 	 		If you reply to this email, your message will be added to the discussion below:
 		http://apache-spark-developers-list.1001551.n3.nabble.com/Re-The-driver-hangs-at-DataFrame-rdd-in-Spark-2-1-0-tp21052p21069.html 	
 	 		To start a new topic under Apache Spark Developers List, email ml-node+s1001551n1h91@n3.nabble.com 
 		To unsubscribe from Apache Spark Developers List, click here.
 		NAML



--
View this message in context: http://apache-spark-developers-list.1001551.n3.nabble.com/Re-The-driver-hangs-at-DataFrame-rdd-in-Spark-2-1-0-tp21052p21073.html
Sent from the Apache Spark Developers List mailing list archive at Nabble.com.

Re: The driver hangs at DataFrame.rdd in Spark 2.1.0

Posted by Cheng Lian <li...@gmail.com>.
This one seems to be relevant, but it's already fixed in 2.1.0.

One way to debug is to turn on trace log and check how the 
analyzer/optimizer behaves.


On 2/22/17 11:11 PM, StanZhai wrote:
> Could this be related to 
> https://issues.apache.org/jira/browse/SPARK-17733 ?
>
>
> ------------------ Original ------------------
> *From: * "Cheng Lian-3 [via Apache Spark Developers List]";<[hidden 
> email] </user/SendEmail.jtp?type=node&node=21054&i=0>>;
> *Send time:* Thursday, Feb 23, 2017 9:43 AM
> *To:* "Stan Zhai"<[hidden email] 
> </user/SendEmail.jtp?type=node&node=21054&i=1>>;
> *Subject: * Re: The driver hangs at DataFrame.rdd in Spark 2.1.0
>
> Just from the thread dump you provided, it seems that this particular 
> query plan jams our optimizer. However, it's also possible that the 
> driver just happened to be running optimizer rules at that particular 
> time point.
>
> Since query planning doesn't touch any actual data, could you please 
> try to minimize this query by replacing the actual relations with 
> temporary views derived from Scala local collections? In this way, it 
> would be much easier for others to reproduce issue.
>
> Cheng
>
>
> On 2/22/17 5:16 PM, Stan Zhai wrote:
>> Thanks for lian's reply.
>>
>> Here is the QueryPlan generated by Spark 1.6.2(I can't get it in 
>> Spark 2.1.0):
>> |...|
>> ||
>>
>> ------------------ Original ------------------
>> *Subject: * Re: The driver hangs at DataFrame.rdd in Spark 2.1.0
>>
>> What is the query plan? We had once observed query plans that grow 
>> exponentially in iterative ML workloads and the query planner hangs 
>> forever. For example, each iteration combines 4 plan trees of the 
>> last iteration and forms a larger plan tree. The size of the plan 
>> tree can easily reach billions of nodes after 15 iterations.
>>
>>
>> On 2/22/17 9:29 AM, Stan Zhai wrote:
>>> Hi all,
>>>
>>> The driver hangs at DataFrame.rdd in Spark 2.1.0 when the 
>>> DataFrame(SQL) is complex, Following thread dump of my driver:
>>> ...
>>
>
>
>
> ------------------------------------------------------------------------
> If you reply to this email, your message will be added to the 
> discussion below:
> http://apache-spark-developers-list.1001551.n3.nabble.com/Re-The-driver-hangs-at-DataFrame-rdd-in-Spark-2-1-0-tp21052p21053.html 
>
> To start a new topic under Apache Spark Developers List, email [hidden 
> email] </user/SendEmail.jtp?type=node&node=21054&i=2>
> To unsubscribe from Apache Spark Developers List, click here.
> NAML 
> <http://apache-spark-developers-list.1001551.n3.nabble.com/template/NamlServlet.jtp?macro=macro_viewer&id=instant_html%21nabble%3Aemail.naml&base=nabble.naml.namespaces.BasicNamespace-nabble.view.web.template.NabbleNamespace-nabble.naml.namespaces.BasicNamespace-nabble.view.web.template.NabbleNamespace-nabble.view.web.template.NodeNamespace&breadcrumbs=notify_subscribers%21nabble%3Aemail.naml-instant_emails%21nabble%3Aemail.naml-send_instant_email%21nabble%3Aemail.naml> 
>
>
> ------------------------------------------------------------------------
> View this message in context: Re: The driver hangs at DataFrame.rdd in 
> Spark 2.1.0 
> <http://apache-spark-developers-list.1001551.n3.nabble.com/Re-The-driver-hangs-at-DataFrame-rdd-in-Spark-2-1-0-tp21052p21054.html>
> Sent from the Apache Spark Developers List mailing list archive 
> <http://apache-spark-developers-list.1001551.n3.nabble.com/> at 
> Nabble.com.


Re: The driver hangs at DataFrame.rdd in Spark 2.1.0

Posted by StanZhai <ma...@zhaishidan.cn>.
Could this be related to https://issues.apache.org/jira/browse/SPARK-17733 ?




------------------ Original ------------------
From:  "Cheng Lian-3 [via Apache Spark Developers List]";<ml...@n3.nabble.com>;
Send time: Thursday, Feb 23, 2017 9:43 AM
To: "Stan Zhai"<ma...@zhaishidan.cn>; 

Subject:  Re: The driver hangs at DataFrame.rdd in Spark 2.1.0



 	                   
Just from the thread dump you provided, it seems that this       particular query plan jams our optimizer. However, it's also       possible that the driver just happened to be running optimizer       rules at that particular time point.
     
     
Since query planning doesn't touch any actual data, could you       please try to minimize this query by replacing the actual       relations with temporary views derived from Scala local       collections? In this way, it would be much easier for others to       reproduce issue.
     
Cheng
     
     
     On 2/22/17 5:16 PM, Stan Zhai wrote:
     
            Thanks for lian's reply.
       
       
       Here is the QueryPlan generated by Spark 1.6.2(I can't get it         in Spark 2.1.0):
                ...       
        
                
         
         ------------------ Original ------------------
                    Subject:  Re: The driver hangs at DataFrame.rdd             in Spark 2.1.0
         
         
         
         
What is the query plan? We had once observed query plans that           grow exponentially in iterative ML workloads and the query           planner hangs forever. For example, each iteration combines 4           plan trees of the last iteration and forms a larger plan tree.           The size of the plan tree can easily reach billions of nodes           after 15 iterations.
         
         
         On 2/22/17 9:29 AM, Stan Zhai           wrote:
         
                    Hi all,
           
           
           The driver hangs at DataFrame.rdd in Spark 2.1.0 when the             DataFrame(SQL) is complex, Following thread dump of my             driver:
           ...
                  
       
          
    	 	 	 	
 	
 	
 	 		If you reply to this email, your message will be added to the discussion below:
 		http://apache-spark-developers-list.1001551.n3.nabble.com/Re-The-driver-hangs-at-DataFrame-rdd-in-Spark-2-1-0-tp21052p21053.html 	
 	 		To start a new topic under Apache Spark Developers List, email ml-node+s1001551n1h91@n3.nabble.com 
 		To unsubscribe from Apache Spark Developers List, click here.
 		NAML



--
View this message in context: http://apache-spark-developers-list.1001551.n3.nabble.com/Re-The-driver-hangs-at-DataFrame-rdd-in-Spark-2-1-0-tp21052p21054.html
Sent from the Apache Spark Developers List mailing list archive at Nabble.com.

Re: The driver hangs at DataFrame.rdd in Spark 2.1.0

Posted by Cheng Lian <li...@databricks.com>.
Just from the thread dump you provided, it seems that this particular 
query plan jams our optimizer. However, it's also possible that the 
driver just happened to be running optimizer rules at that particular 
time point.

Since query planning doesn't touch any actual data, could you please try 
to minimize this query by replacing the actual relations with temporary 
views derived from Scala local collections? In this way, it would be 
much easier for others to reproduce issue.

Cheng


On 2/22/17 5:16 PM, Stan Zhai wrote:
> Thanks for lian's reply.
>
> Here is the QueryPlan generated by Spark 1.6.2(I can't get it in Spark 
> 2.1.0):
>
> |== Parsed Logical Plan == 'GroupingSets [0], ['col0], 
> [unresolvedalias('col0 AS col0#3605374),unresolvedalias('sum('col1) AS 
> col1#3605375),unresolvedalias('sum('col2) AS 
> col2#3605376),unresolvedalias('avg('col3) AS 
> col3#3605377),unresolvedalias('sum('col4) AS 
> col4#3605378),unresolvedalias('sum('col5) AS 
> col5#3605379),unresolvedalias(('sum('col22) / 'sum('col23)) AS 
> col6#3605380),unresolvedalias('sum('col7) AS 
> col7#3605381),unresolvedalias('sum('col8) AS 
> col8#3605382),unresolvedalias('sum('col9) AS 
> col9#3605383),unresolvedalias('sum('col10) AS 
> col10#3605384),unresolvedalias('sum('col11) AS 
> col11#3605385),unresolvedalias(('sum('col24) / 'sum('col25)) AS 
> col12#3605386),unresolvedalias(('sum('col24) / 'sum('col27)) AS 
> col13#3605387),unresolvedalias(('sum('col24) / 'sum('col29)) AS 
> col14#3605388),unresolvedalias(('sum('col24) / 'sum('col31)) AS 
> col15#3605389),unresolvedalias(('sum('col25) / 'sum('col23)) AS 
> col16#3605390),unresolvedalias(('sum('col27) / 'sum('col23)) AS 
> col17#3605391),unresolvedalias(('sum('col29) / 'sum('col27)) AS 
> col18#3605392),unresolvedalias(('sum('col31) / 'sum('col29)) AS 
> col19#3605393),unresolvedalias(('sum('col31) / 'sum('col27)) AS 
> col20#3605394),unresolvedalias('sum('col21) AS 
> col21#3605395),unresolvedalias('GROUPING__ID AS GROUPING__ID#3605396)] 
> +- 'UnresolvedRelation `tmp_join_tb_5c0f9ebc18fc8b07_3`, None == 
> Analyzed Logical Plan == col0: string, col1: double, col2: double, 
> col3: double, col4: double, col5: double, col6: double, col7: double, 
> col8: double, col9: double, col10: double, col11: double, col12: 
> double, col13: double, col14: double, col15: double, col16: double, 
> col17: double, col18: double, col19: double, col20: double, col21: 
> double, GROUPING__ID: int Aggregate 
> [col0#3605399,grouping__id#3605398], [col0#3605399 AS 
> col0#3605374,(sum(col1#3605333),mode=Complete,isDistinct=false) AS 
> col1#3605375,(sum(col2#3605334),mode=Complete,isDistinct=false) AS 
> col2#3605376,(avg(col3#3605335),mode=Complete,isDistinct=false) AS 
> col3#3605377,(sum(col4#3605336),mode=Complete,isDistinct=false) AS 
> col4#3605378,(sum(col5#3605337),mode=Complete,isDistinct=false) AS 
> col5#3605379,((sum(col22#3605354),mode=Complete,isDistinct=false) / 
> (sum(col23#3605355),mode=Complete,isDistinct=false)) AS 
> col6#3605380,(sum(col7#3605339),mode=Complete,isDistinct=false) AS 
> col7#3605381,(sum(col8#3605340),mode=Complete,isDistinct=false) AS 
> col8#3605382,(sum(col9#3605341),mode=Complete,isDistinct=false) AS 
> col9#3605383,(sum(col10#3605342),mode=Complete,isDistinct=false) AS 
> col10#3605384,(sum(col11#3605343),mode=Complete,isDistinct=false) AS 
> col11#3605385,((sum(col24#3605356),mode=Complete,isDistinct=false) / 
> (sum(col25#3605357),mode=Complete,isDistinct=false)) AS 
> col12#3605386,((sum(col24#3605356),mode=Complete,isDistinct=false) / 
> (sum(col27#3605359),mode=Complete,isDistinct=false)) AS 
> col13#3605387,((sum(col24#3605356),mode=Complete,isDistinct=false) / 
> (sum(col29#3605361),mode=Complete,isDistinct=false)) AS 
> col14#3605388,((sum(col24#3605356),mode=Complete,isDistinct=false) / 
> (sum(col31#3605363),mode=Complete,isDistinct=false)) AS 
> col15#3605389,((sum(col25#3605357),mode=Complete,isDistinct=false) / 
> (sum(col23#3605355),mode=Complete,isDistinct=false)) AS 
> col16#3605390,((sum(col27#3605359),mode=Complete,isDistinct=false) / 
> (sum(col23#3605355),mode=Complete,isDistinct=false)) AS 
> col17#3605391,((sum(col29#3605361),mode=Complete,isDistinct=false) / 
> (sum(col27#3605359),mode=Complete,isDistinct=false)) AS 
> col18#3605392,((sum(col31#3605363),mode=Complete,isDistinct=false) / 
> (sum(col29#3605361),mode=Complete,isDistinct=false)) AS 
> col19#3605393,((sum(col31#3605363),mode=Complete,isDistinct=false) / 
> (sum(col27#3605359),mode=Complete,isDistinct=false)) AS 
> col20#3605394,(sum(col21#3605353),mode=Complete,isDistinct=false) AS 
> col21#3605395,GROUPING__ID#3605398 AS GROUPING__ID#3605396] +- Expand 
> [ArrayBuffer(col0#3605332, col1#3605333, col2#3605334, col3#3605335, 
> col4#3605336, col5#3605337, col6#3605338, col7#3605339, col8#3605340, 
> col9#3605341, col10#3605342, col11#3605343, col12#3605344, 
> col13#3605345, col14#3605346, col15#3605347, col16#3605348, 
> col17#3605349, col18#3605350, col19#3605351, col20#3605352, 
> col21#3605353, col22#3605354, col23#3605355, col24#3605356, 
> col25#3605357, col26#3605358, col27#3605359, col28#3605360, 
> col29#3605361, col30#3605362, col31#3605363, col32#3605364, 
> col33#3605365, col34#3605366, col35#3605367, col36#3605368, 
> col37#3605369, col38#3605370, col39#3605371, col40#3605372, 
> col41#3605373, null, 0)], 
> [col0#3605332,col1#3605333,col2#3605334,col3#3605335,col4#3605336,col5#3605337,col6#3605338,col7#3605339,col8#3605340,col9#3605341,col10#3605342,col11#3605343,col12#3605344,col13#3605345,col14#3605346,col15#3605347,col16#3605348,col17#3605349,col18#3605350,col19#3605351,col20#3605352,col21#3605353,col22#3605354,col23#3605355,col24#3605356,col25#3605357,col26#3605358,col27#3605359,col28#3605360,col29#3605361,col30#3605362,col31#3605363,col32#3605364,col33#3605365,col34#3605366,col35#3605367,col36#3605368,col37#3605369,col38#3605370,col39#3605371,col40#3605372,col41#3605373,col0#3605399,grouping__id#3605398] 
> +- Project 
> [col0#3605332,col1#3605333,col2#3605334,col3#3605335,col4#3605336,col5#3605337,col6#3605338,col7#3605339,col8#3605340,col9#3605341,col10#3605342,col11#3605343,col12#3605344,col13#3605345,col14#3605346,col15#3605347,col16#3605348,col17#3605349,col18#3605350,col19#3605351,col20#3605352,col21#3605353,col22#3605354,col23#3605355,col24#3605356,col25#3605357,col26#3605358,col27#3605359,col28#3605360,col29#3605361,col30#3605362,col31#3605363,col32#3605364,col33#3605365,col34#3605366,col35#3605367,col36#3605368,col37#3605369,col38#3605370,col39#3605371,col40#3605372,col41#3605373,col0#3605332 
> AS col0#3605399] +- Subquery tmp_join_tb_5c0f9ebc18fc8b07_3 +- Project 
> [col0#3604986 AS col0#3605332,col1#3604987 AS 
> col1#3605333,col2#3605081 AS col2#3605334,col3#3604989 AS 
> col3#3605335,col4#3604990 AS col4#3605336,col5#3604991 AS 
> col5#3605337,col6#3604992 AS col6#3605338,col7#3604993 AS 
> col7#3605339,col8#3604994 AS col8#3605340,col9#3605088 AS 
> col9#3605341,col10#3604996 AS col10#3605342,col11#3604997 AS 
> col11#3605343,col12#3604998 AS col12#3605344,col13#3604999 AS 
> col13#3605345,col14#3605000 AS col14#3605346,col15#3605001 AS 
> col15#3605347,col16#3605002 AS col16#3605348,col17#3605003 AS 
> col17#3605349,col18#3605004 AS col18#3605350,col19#3605005 AS 
> col19#3605351,col20#3605006 AS col20#3605352,col21#3605100 AS 
> col21#3605353,col22#3605008 AS col22#3605354,col23#3605009 AS 
> col23#3605355,col24#3605010 AS col24#3605356,col25#3605011 AS 
> col25#3605357,col26#3605012 AS col26#3605358,col27#3605013 AS 
> col27#3605359,col28#3605014 AS col28#3605360,col29#3605015 AS 
> col29#3605361,col30#3605016 AS col30#3605362,col31#3605017 AS 
> col31#3605363,col32#3605018 AS col32#3605364,col33#3605019 AS 
> col33#3605365,col34#3605020 AS col34#3605366,col35#3605021 AS 
> col35#3605367,col36#3605022 AS col36#3605368,col37#3605023 AS 
> col37#3605369,col38#3605024 AS col38#3605370,col39#3605025 AS 
> col39#3605371,col40#3605026 AS col40#3605372,col41#3605027 AS 
> col41#3605373] +- Join LeftOuter, Some((if (isnull(col0#3604986)) else 
> col0#3604986 = if (isnull(col0#3605079)) else col0#3605079)) :- 
> Subquery tmp_tb_e2e59562f7f4d928 : +- Project [col0#3604944 AS 
> col0#3604986,col1#3604945 AS col1#3604987,col2#3604946 AS 
> col2#3604988,col3#3604947 AS col3#3604989,col4#3604948 AS 
> col4#3604990,col5#3604949 AS col5#3604991,col6#3604950 AS 
> col6#3604992,col7#3604951 AS col7#3604993,col8#3604952 AS 
> col8#3604994,col9#3604953 AS col9#3604995,col10#3604954 AS 
> col10#3604996,col11#3604955 AS col11#3604997,col12#3604956 AS 
> col12#3604998,col13#3604957 AS col13#3604999,col14#3604958 AS 
> col14#3605000,col15#3604959 AS col15#3605001,col16#3604960 AS 
> col16#3605002,col17#3604961 AS col17#3605003,col18#3604962 AS 
> col18#3605004,col19#3604963 AS col19#3605005,col20#3604964 AS 
> col20#3605006,col21#3604965 AS col21#3605007,col22#3604966 AS 
> col22#3605008,col23#3604967 AS col23#3605009,col24#3604968 AS 
> col24#3605010,col25#3604969 AS col25#3605011,col26#3604970 AS 
> col26#3605012,col27#3604971 AS col27#3605013,col28#3604972 AS 
> col28#3605014,col29#3604973 AS col29#3605015,col30#3604974 AS 
> col30#3605016,col31#3604975 AS col31#3605017,col32#3604976 AS 
> col32#3605018,col33#3604977 AS col33#3605019,col34#3604978 AS 
> col34#3605020,col35#3604979 AS col35#3605021,col36#3604980 AS 
> col36#3605022,col37#3604981 AS col37#3605023,col38#3604982 AS 
> col38#3605024,col39#3604983 AS col39#3605025,col40#3604984 AS 
> col40#3605026,col41#3604985 AS col41#3605027] : +- Subquery 
> tmp_tb_e1f587a505324947 : +- Project [col0#3604902 AS 
> col0#3604944,col1#3604903 AS col1#3604945,col2#3604904 AS 
> col2#3604946,col3#3604905 AS col3#3604947,col4#3604906 AS 
> col4#3604948,col5#3604907 AS col5#3604949,col6#3604908 AS 
> col6#3604950,col7#3604909 AS col7#3604951,col8#3604910 AS 
> col8#3604952,col9#3604911 AS col9#3604953,col10#3604912 AS 
> col10#3604954,col11#3604913 AS col11#3604955,col12#3604914 AS 
> col12#3604956,col13#3604915 AS col13#3604957,col14#3604916 AS 
> col14#3604958,col15#3604917 AS col15#3604959,col16#3604918 AS 
> col16#3604960,col17#3604919 AS col17#3604961,col18#3604920 AS 
> col18#3604962,col19#3604921 AS col19#3604963,col20#3604922 AS 
> col20#3604964,col21#3604923 AS col21#3604965,col22#3604924 AS 
> col22#3604966,col23#3604925 AS col23#3604967,col24#3604926 AS 
> col24#3604968,col25#3604927 AS col25#3604969,col26#3604928 AS 
> col26#3604970,col27#3604929 AS col27#3604971,col28#3604930 AS 
> col28#3604972,col29#3604931 AS col29#3604973,col30#3604932 AS 
> col30#3604974,col31#3604933 AS col31#3604975,col32#3604934 AS 
> col32#3604976,col33#3604935 AS col33#3604977,col34#3604936 AS 
> col34#3604978,col35#3604937 AS col35#3604979,col36#3604938 AS 
> col36#3604980,col37#3604939 AS col37#3604981,col38#3604940 AS 
> col38#3604982,col39#3604941 AS col39#3604983,col40#3604942 AS 
> col40#3604984,col41#3604943 AS col41#3604985] : +- Subquery 
> tmp_tb_af5dfe0207076186 : +- Project [col0#3604860 AS 
> col0#3604902,col1#3604861 AS col1#3604903,col2#3604862 AS 
> col2#3604904,col3#3604863 AS col3#3604905,col4#3604864 AS 
> col4#3604906,col5#3604865 AS col5#3604907,col6#3604866 AS 
> col6#3604908,col7#3604867 AS col7#3604909,col8#3604868 AS 
> col8#3604910,col9#3604869 AS col9#3604911,col10#3604870 AS 
> col10#3604912,col11#3604871 AS col11#3604913,col12#3604872 AS 
> col12#3604914,col13#3604873 AS col13#3604915,col14#3604874 AS 
> col14#3604916,col15#3604875 AS col15#3604917,col16#3604876 AS 
> col16#3604918,col17#3604877 AS col17#3604919,col18#3604878 AS 
> col18#3604920,col19#3604879 AS col19#3604921,col20#3604880 AS 
> col20#3604922,col21#3604881 AS col21#3604923,col22#3604882 AS 
> col22#3604924,col23#3604883 AS col23#3604925,col24#3604884 AS 
> col24#3604926,col25#3604885 AS col25#3604927,col26#3604886 AS 
> col26#3604928,col27#3604887 AS col27#3604929,col28#3604888 AS 
> col28#3604930,col29#3604889 AS col29#3604931,col30#3604890 AS 
> col30#3604932,col31#3604891 AS col31#3604933,col32#3604892 AS 
> col32#3604934,col33#3604893 AS col33#3604935,col34#3604894 AS 
> col34#3604936,col35#3604895 AS col35#3604937,col36#3604896 AS 
> col36#3604938,col37#3604897 AS col37#3604939,col38#3604898 AS 
> col38#3604940,col39#3604899 AS col39#3604941,col40#3604900 AS 
> col40#3604942,col41#3604901 AS col41#3604943] : +- Subquery 
> tmp_tb_d6388581be8bd02b : +- Project [col0#3604818 AS 
> col0#3604860,col1#3604819 AS col1#3604861,col2#3604820 AS 
> col2#3604862,col3#3604821 AS col3#3604863,col4#3604822 AS 
> col4#3604864,col5#3604823 AS col5#3604865,col6#3604824 AS 
> col6#3604866,col7#3604825 AS col7#3604867,col8#3604826 AS 
> col8#3604868,col9#3604827 AS col9#3604869,col10#3604828 AS 
> col10#3604870,col11#3604829 AS col11#3604871,col12#3604830 AS 
> col12#3604872,col13#3604831 AS col13#3604873,col14#3604832 AS 
> col14#3604874,col15#3604833 AS col15#3604875,col16#3604834 AS 
> col16#3604876,col17#3604835 AS col17#3604877,col18#3604836 AS 
> col18#3604878,col19#3604837 AS col19#3604879,col20#3604838 AS 
> col20#3604880,col21#3604839 AS col21#3604881,col22#3604840 AS 
> col22#3604882,col23#3604841 AS col23#3604883,col24#3604842 AS 
> col24#3604884,col25#3604843 AS col25#3604885,col26#3604844 AS 
> col26#3604886,col27#3604845 AS col27#3604887,col28#3604846 AS 
> col28#3604888,col29#3604847 AS col29#3604889,col30#3604848 AS 
> col30#3604890,col31#3604849 AS col31#3604891,col32#3604850 AS 
> col32#3604892,col33#3604851 AS col33#3604893,col34#3604852 AS 
> col34#3604894,col35#3604853 AS col35#3604895,col36#3604854 AS 
> col36#3604896,col37#3604855 AS col37#3604897,col38#3604856 AS 
> col38#3604898,col39#3604857 AS col39#3604899,col40#3604858 AS 
> col40#3604900,col41#3604859 AS col41#3604901] : +- Filter 
> ((((((((((((((((((((isnotnull(col1#3604819) || 
> isnotnull(col2#3604820)) || isnotnull(col3#3604821)) || 
> isnotnull(col4#3604822)) || isnotnull(col5#3604823)) || 
> isnotnull(col6#3604824)) || isnotnull(col7#3604825)) || 
> isnotnull(col8#3604826)) || isnotnull(col9#3604827)) || 
> isnotnull(col10#3604828)) || isnotnull(col11#3604829)) || 
> isnotnull(col12#3604830)) || isnotnull(col13#3604831)) || 
> isnotnull(col14#3604832)) || isnotnull(col15#3604833)) || 
> isnotnull(col16#3604834)) || isnotnull(col17#3604835)) || 
> isnotnull(col18#3604836)) || isnotnull(col19#3604837)) || 
> isnotnull(col20#3604838)) || isnotnull(col21#3604839)) : +- Subquery 
> tmp_join_tb_00d22afcd5fd25d4 : +- Project [col0#3604561 AS 
> col0#3604818,col1#3604562 AS col1#3604819,col2#3604563 AS 
> col2#3604820,col4#3604779 AS col3#3604821,col4#3604565 AS 
> col4#3604822,col5#3604566 AS col5#3604823,col6#3604567 AS 
> col6#3604824,col7#3604568 AS col7#3604825,col8#3604569 AS 
> col8#3604826,col9#3604570 AS col9#3604827,col10#3604571 AS 
> col10#3604828,col11#3604572 AS col11#3604829,col12#3604573 AS 
> col12#3604830,col13#3604574 AS col13#3604831,col14#3604575 AS 
> col14#3604832,col15#3604576 AS col15#3604833,col16#3604577 AS 
> col16#3604834,col17#3604578 AS col17#3604835,col18#3604579 AS 
> col18#3604836,col19#3604580 AS col19#3604837,col20#3604581 AS 
> col20#3604838,col21#3604582 AS col21#3604839,col22#3604583 AS 
> col22#3604840,col23#3604584 AS col23#3604841,col24#3604585 AS 
> col24#3604842,col25#3604586 AS col25#3604843,col26#3604587 AS 
> col26#3604844,col27#3604588 AS col27#3604845,col28#3604589 AS 
> col28#3604846,col29#3604590 AS col29#3604847,col30#3604591 AS 
> col30#3604848,col31#3604592 AS col31#3604849,col32#3604593 AS 
> col32#3604850,col33#3604594 AS col33#3604851,col34#3604595 AS 
> col34#3604852,col35#3604596 AS col35#3604853,col36#3604597 AS 
> col36#3604854,col37#3604598 AS col37#3604855,col38#3604599 AS 
> col38#3604856,col39#3604600 AS col39#3604857,col40#3604601 AS 
> col40#3604858,col41#3604602 AS col41#3604859] : +- Join LeftOuter, 
> Some(((if (isnull(col0#3604561)) else col0#3604561 = if 
> (isnull(col1#3604776)) else col1#3604776) && (if (isnull(1)) else 
> cast(1 as string) = if (isnull(1)) else cast(1 as string)))) : :- 
> Subquery tmp_tb_0b50b8442300cd3b_1 : : +- Project [col0#3604519 AS 
> col0#3604561,col1#3604520 AS col1#3604562,col2#3604521 AS 
> col2#3604563,col3#3604522 AS col3#3604564,col4#3604523 AS 
> col4#3604565,col5#3604524 AS col5#3604566,col6#3604525 AS 
> col6#3604567,col7#3604526 AS col7#3604568,col8#3604527 AS 
> col8#3604569,col9#3604528 AS col9#3604570,col10#3604529 AS 
> col10#3604571,col11#3604530 AS col11#3604572,col12#3604531 AS 
> col12#3604573,col13#3604532 AS col13#3604574,col14#3604533 AS 
> col14#3604575,col15#3604534 AS col15#3604576,col16#3604535 AS 
> col16#3604577,col17#3604536 AS col17#3604578,col18#3604537 AS 
> col18#3604579,col19#3604538 AS col19#3604580,col20#3604539 AS 
> col20#3604581,col21#3604540 AS col21#3604582,col22#3604541 AS 
> col22#3604583,col23#3604542 AS col23#3604584,col24#3604543 AS 
> col24#3604585,col25#3604544 AS col25#3604586,col26#3604545 AS 
> col26#3604587,col27#3604546 AS col27#3604588,col28#3604547 AS 
> col28#3604589,col29#3604548 AS col29#3604590,col30#3604549 AS 
> col30#3604591,col31#3604550 AS col31#3604592,col32#3604551 AS 
> col32#3604593,col33#3604552 AS col33#3604594,col34#3604553 AS 
> col34#3604595,col35#3604554 AS col35#3604596,col36#3604555 AS 
> col36#3604597,col37#3604556 AS col37#3604598,col38#3604557 AS 
> col38#3604599,col39#3604558 AS col39#3604600,col40#3604559 AS 
> col40#3604601,col41#3604560 AS col41#3604602] : : +- Subquery 
> 726cbefe72d042efacfe27eefed5a4ef_0c82a43bbcb57a2e_0 : : +- Aggregate 
> [fkc3802436#3604322], [fkc3802436#3604322 AS 
> col0#3604519,(sum(cast(fka9b7b4ee#3604332 as 
> double)),mode=Complete,isDistinct=false) AS 
> col1#3604520,(sum(cast(fka9b7b4ee#3604332 as 
> double)),mode=Complete,isDistinct=false) AS 
> col2#3604521,(sum(cast(fka9b7b4ee#3604332 as 
> double)),mode=Complete,isDistinct=false) AS 
> col3#3604522,(sum(cast(fk6938b0f1#3604330 as 
> double)),mode=Complete,isDistinct=false) AS 
> col4#3604523,(sum(cast(fk9768a0c6#3604331 as 
> double)),mode=Complete,isDistinct=false) AS 
> col5#3604524,((sum(cast(fka9b7b4ee#3604332 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fk9768a0c6#3604331 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col6#3604525,(sum(cast(fk5b784c3d#3604350 as 
> double)),mode=Complete,isDistinct=false) AS 
> col7#3604526,(sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false) AS 
> col8#3604527,(sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false) AS 
> col9#3604528,(sum(cast(fk983801f0#3604356 as 
> double)),mode=Complete,isDistinct=false) AS 
> col10#3604529,(sum(cast(fke9adbd11#3604357 as 
> double)),mode=Complete,isDistinct=false) AS 
> col11#3604530,((sum(cast(fk644dd14e#3604333 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fk5b784c3d#3604350 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col12#3604531,((sum(cast(fk644dd14e#3604333 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col13#3604532,((sum(cast(fk644dd14e#3604333 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fk983801f0#3604356 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col14#3604533,((sum(cast(fk644dd14e#3604333 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fke9adbd11#3604357 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col15#3604534,((sum(cast(fk5b784c3d#3604350 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fk9768a0c6#3604331 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col16#3604535,((sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fk9768a0c6#3604331 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col17#3604536,((sum(cast(fk983801f0#3604356 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col18#3604537,((sum(cast(fke9adbd11#3604357 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fk983801f0#3604356 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col19#3604538,((sum(cast(fke9adbd11#3604357 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col20#3604539,(sum(cast(fke9adbd11#3604357 as 
> double)),mode=Complete,isDistinct=false) AS 
> col21#3604540,(sum(cast(fka9b7b4ee#3604332 as 
> double)),mode=Complete,isDistinct=false) AS 
> col22#3604541,(sum(cast(fk9768a0c6#3604331 as 
> double)),mode=Complete,isDistinct=false) AS 
> col23#3604542,(sum(cast(fk644dd14e#3604333 as 
> double)),mode=Complete,isDistinct=false) AS 
> col24#3604543,(sum(cast(fk5b784c3d#3604350 as 
> double)),mode=Complete,isDistinct=false) AS 
> col25#3604544,(sum(cast(fk644dd14e#3604333 as 
> double)),mode=Complete,isDistinct=false) AS 
> col26#3604545,(sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false) AS 
> col27#3604546,(sum(cast(fk644dd14e#3604333 as 
> double)),mode=Complete,isDistinct=false) AS 
> col28#3604547,(sum(cast(fk983801f0#3604356 as 
> double)),mode=Complete,isDistinct=false) AS 
> col29#3604548,(sum(cast(fk644dd14e#3604333 as 
> double)),mode=Complete,isDistinct=false) AS 
> col30#3604549,(sum(cast(fke9adbd11#3604357 as 
> double)),mode=Complete,isDistinct=false) AS 
> col31#3604550,(sum(cast(fk9768a0c6#3604331 as 
> double)),mode=Complete,isDistinct=false) AS 
> col32#3604551,(sum(cast(fk5b784c3d#3604350 as 
> double)),mode=Complete,isDistinct=false) AS 
> col33#3604552,(sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false) AS 
> col34#3604553,(sum(cast(fk9768a0c6#3604331 as 
> double)),mode=Complete,isDistinct=false) AS 
> col35#3604554,(sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false) AS 
> col36#3604555,(sum(cast(fk983801f0#3604356 as 
> double)),mode=Complete,isDistinct=false) AS 
> col37#3604556,(sum(cast(fk983801f0#3604356 as 
> double)),mode=Complete,isDistinct=false) AS 
> col38#3604557,(sum(cast(fke9adbd11#3604357 as 
> double)),mode=Complete,isDistinct=false) AS 
> col39#3604558,(sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false) AS 
> col40#3604559,(sum(cast(fke9adbd11#3604357 as 
> double)),mode=Complete,isDistinct=false) AS col41#3604560] : : +- 
> Filter ((fke1ef2a3d#3604321 = 东吴) && ((2017-02-01 00:00:00 <= 
> fkb804c35c#3604315) && (fkb804c35c#3604315 <= 2017-02-21 23:59:59))) : 
> : +- Subquery 
> mock_tb_id_86a163a55407d3b9_aa610e9a5676044c133c92922491a0a9 : : +- 
> Project 
> [fkb804c35c#3604315,fke1ef2a3d#3604321,fkc3802436#3604322,fk6938b0f1#3604330,fk9768a0c6#3604331,fka9b7b4ee#3604332,fk644dd14e#3604333,fk2afad0bc#3604349,fk5b784c3d#3604350,fk983801f0#3604356,fke9adbd11#3604357] 
> : : +- Subquery 
> 726cbefe72d042efacfe27eefed5a4ef_expendvfield_aa610e9a5676044c133c92922491a0a9 
> : : +- Project 
> [fkb804c35c#3604315,fke1ef2a3d#3604321,fkc3802436#3604322,fk6938b0f1#3604330,fk9768a0c6#3604331,fka9b7b4ee#3604332,fk644dd14e#3604333,fk2afad0bc#3604349,fk5b784c3d#3604350,fk983801f0#3604356,fke9adbd11#3604357] 
> : : +- Subquery 726cbefe72d042efacfe27eefed5a4ef : : +- 
> Relation[fkb804c35c#3604315,fk14b81600#3604316,fkc5848e45#3604317,fkc5fd3d59#3604318,fkb3b66e06#3604319,fk5345154e#3604320,fke1ef2a3d#3604321,fkc3802436#3604322,fkc1835f5e#3604323,fk3c97e290#3604324,fk0d9f524c#3604325,fk94739939#3604326,fk6f06b7e6#3604327,fk2f4bc742#3604328,fka894a817#3604329,fk6938b0f1#3604330,fk9768a0c6#3604331,fka9b7b4ee#3604332,fk644dd14e#3604333,fk14156ab8#3604334,fk0cff3ee7#3604335,fkbeb2eaff#3604336,fk65d2e57c#3604337,fk2057de12#3604338,fk6b48d715#3604339,fkfc93a68e#3604340,fk0444374a#3604341,fk87c5db7c#3604342,fkae319449#3604343,fk571f3eb5#3604344,fk4ca40a2b#3604345,fkc3ae8b08#3604346,fk51d422ab#3604347,fka82a7d62#3604348,fk2afad0bc#3604349,fk5b784c3d#3604350,fkca3a89a4#3604351,fk720a720c#3604352,fk8582dbe5#3604353,fk786d6e3c#3604354,fk3c675be7#3604355,fk983801f0#3604356,fke9adbd11#3604357,fk19d5a76b#3604358,fk0d0f580e#3604359,fk3a8ccb91#3604360,fk8fa0d5e8#3604361,fkd31e4724#3604362,fk874ca4e5#3604363,fk809384be#3604364,fkb9df99f7#3604365,fk2b120bee#3604366,fkcc1e115b#3604367,fk355fc528#3604368,fk2d0e2f85#3604369,fkc8054eb7#3604370,fked1cbfa7#3604371,fk65026b16#3604372,fk1874f932#3604373,fkd382f64d#3604374,fk0e328bae#3604375,fk44e818fd#3604376,fk554714b9#3604377,fka2c91a0e#3604378,fk2b120c52#3604379,fk32c3890a#3604380,fka54b4e53#3604381,fk5bd5ea3c#3604382] 
> ParquetRelation: stan.726cbefe72d042efacfe27eefed5a4ef : +- Subquery 
> tmp_tb_599dc55b4f21d9d6 : +- Project [col0#3604732 AS 
> col0#3604775,col1#3604733 AS col1#3604776,col2#3604734 AS 
> col2#3604777,col3#3604735 AS col3#3604778,col4#3604736 AS 
> col4#3604779,col5#3604737 AS col5#3604780,col6#3604738 AS 
> col6#3604781,col7#3604739 AS col7#3604782,col8#3604740 AS 
> col8#3604783,col9#3604741 AS col9#3604784,col10#3604742 AS 
> col10#3604785,col11#3604743 AS col11#3604786,col12#3604744 AS 
> col12#3604787,col13#3604745 AS col13#3604788,col14#3604746 AS 
> col14#3604789,col15#3604747 AS col15#3604790,col16#3604748 AS 
> col16#3604791,col17#3604749 AS col17#3604792,col18#3604750 AS 
> col18#3604793,col19#3604751 AS col19#3604794,col20#3604752 AS 
> col20#3604795,col21#3604753 AS col21#3604796,col22#3604754 AS 
> col22#3604797,col23#3604755 AS col23#3604798,col24#3604756 AS 
> col24#3604799,col25#3604757 AS col25#3604800,col26#3604758 AS 
> col26#3604801,col27#3604759 AS col27#3604802,col28#3604760 AS 
> col28#3604803,col29#3604761 AS col29#3604804,col30#3604762 AS 
> col30#3604805,col31#3604763 AS col31#3604806,col32#3604764 AS 
> col32#3604807,col33#3604765 AS col33#3604808,col34#3604766 AS 
> col34#3604809,col35#3604767 AS col35#3604810,col36#3604768 AS 
> col36#3604811,col37#3604769 AS col37#3604812,col38#3604770 AS 
> col38#3604813,col39#3604771 AS col39#3604814,col40#3604772 AS 
> col40#3604815,col41#3604773 AS col41#3604816,col42#3604774 AS 
> col42#3604817] : +- Filter (col0#3604732 = 2017-02-21 00:00:00) : +- 
> Subquery tmp_join_tb_88eeb94b7e70026a : +- Project [col0#3604646 AS 
> col0#3604732,col1#3604647 AS col1#3604733,col2#3604648 AS 
> col2#3604734,col3#3604649 AS 
> col3#3604735,HiveSimpleUDF#site.stanzhai.udf.UDFNumCmp(col4#3604650,col4#3604693,1) 
> AS col4#3604736,col5#3604651 AS col5#3604737,col6#3604652 AS 
> col6#3604738,col7#3604653 AS col7#3604739,col8#3604654 AS 
> col8#3604740,col9#3604655 AS col9#3604741,col10#3604656 AS 
> col10#3604742,col11#3604657 AS col11#3604743,col12#3604658 AS 
> col12#3604744,col13#3604659 AS col13#3604745,col14#3604660 AS 
> col14#3604746,col15#3604661 AS col15#3604747,col16#3604662 AS 
> col16#3604748,col17#3604663 AS col17#3604749,col18#3604664 AS 
> col18#3604750,col19#3604665 AS col19#3604751,col20#3604666 AS 
> col20#3604752,col21#3604667 AS col21#3604753,col22#3604668 AS 
> col22#3604754,col23#3604669 AS col23#3604755,col24#3604670 AS 
> col24#3604756,col25#3604671 AS col25#3604757,col26#3604672 AS 
> col26#3604758,col27#3604673 AS col27#3604759,col28#3604674 AS 
> col28#3604760,col29#3604675 AS col29#3604761,col30#3604676 AS 
> col30#3604762,col31#3604677 AS col31#3604763,col32#3604678 AS 
> col32#3604764,col33#3604679 AS col33#3604765,col34#3604680 AS 
> col34#3604766,col35#3604681 AS col35#3604767,col36#3604682 AS 
> col36#3604768,col37#3604683 AS col37#3604769,col38#3604684 AS 
> col38#3604770,col39#3604685 AS col39#3604771,col40#3604686 AS 
> col40#3604772,col41#3604687 AS col41#3604773,col42#3604688 AS 
> col42#3604774] : +- Join LeftOuter, Some((((if (isnull(col1#3604647)) 
> else col1#3604647 = if (isnull(col1#3604690)) else col1#3604690) && 
> (col0#3604646 = 
> HiveSimpleUDF#site.stanzhai.udf.UDFGetNext(col0#3604689,day,day,1))) 
> && (col0#3604646 = 2017-02-21 00:00:00))) : :- Subquery 
> tmp_tb_51d812b1654a0a98 : : +- Project [col0#3604603 AS 
> col0#3604646,col1#3604604 AS col1#3604647,col2#3604605 AS 
> col2#3604648,col3#3604606 AS col3#3604649,col4#3604607 AS 
> col4#3604650,col5#3604608 AS col5#3604651,col6#3604609 AS 
> col6#3604652,col7#3604610 AS col7#3604653,col8#3604611 AS 
> col8#3604654,col9#3604612 AS col9#3604655,col10#3604613 AS 
> col10#3604656,col11#3604614 AS col11#3604657,col12#3604615 AS 
> col12#3604658,col13#3604616 AS col13#3604659,col14#3604617 AS 
> col14#3604660,col15#3604618 AS col15#3604661,col16#3604619 AS 
> col16#3604662,col17#3604620 AS col17#3604663,col18#3604621 AS 
> col18#3604664,col19#3604622 AS col19#3604665,col20#3604623 AS 
> col20#3604666,col21#3604624 AS col21#3604667,col22#3604625 AS 
> col22#3604668,col23#3604626 AS col23#3604669,col24#3604627 AS 
> col24#3604670,col25#3604628 AS col25#3604671,col26#3604629 AS 
> col26#3604672,col27#3604630 AS col27#3604673,col28#3604631 AS 
> col28#3604674,col29#3604632 AS col29#3604675,col30#3604633 AS 
> col30#3604676,col31#3604634 AS col31#3604677,col32#3604635 AS 
> col32#3604678,col33#3604636 AS col33#3604679,col34#3604637 AS 
> col34#3604680,col35#3604638 AS col35#3604681,col36#3604639 AS 
> col36#3604682,col37#3604640 AS col37#3604683,col38#3604641 AS 
> col38#3604684,col39#3604642 AS col39#3604685,col40#3604643 AS 
> col40#3604686,col41#3604644 AS col41#3604687,col42#3604645 AS 
> col42#3604688] : : +- Subquery 
> 726cbefe72d042efacfe27eefed5a4ef_f54b458f5cbb803c_1 : : +- Aggregate 
> [fkc3802436#3604322,year(cast(fkb804c35c#3604315 as 
> date)),month(cast(fkb804c35c#3604315 as 
> date)),dayofmonth(cast(fkb804c35c#3604315 as date))], [if 
> (((isnull(year(cast(fkb804c35c#3604315 as date))) || 
> isnull(month(cast(fkb804c35c#3604315 as date)))) || 
> isnull(dayofmonth(cast(fkb804c35c#3604315 as date))))) null else 
> UDF(year(cast(fkb804c35c#3604315 as 
> date)),month(cast(fkb804c35c#3604315 as 
> date)),dayofmonth(cast(fkb804c35c#3604315 as date))) AS 
> col0#3604603,fkc3802436#3604322 AS 
> col1#3604604,(sum(cast(fka9b7b4ee#3604332 as 
> double)),mode=Complete,isDistinct=false) AS 
> col2#3604605,(sum(cast(fka9b7b4ee#3604332 as 
> double)),mode=Complete,isDistinct=false) AS 
> col3#3604606,(sum(cast(fka9b7b4ee#3604332 as 
> double)),mode=Complete,isDistinct=false) AS 
> col4#3604607,(sum(cast(fk6938b0f1#3604330 as 
> double)),mode=Complete,isDistinct=false) AS 
> col5#3604608,(sum(cast(fk9768a0c6#3604331 as 
> double)),mode=Complete,isDistinct=false) AS 
> col6#3604609,((sum(cast(fka9b7b4ee#3604332 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fk9768a0c6#3604331 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col7#3604610,(sum(cast(fk5b784c3d#3604350 as 
> double)),mode=Complete,isDistinct=false) AS 
> col8#3604611,(sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false) AS 
> col9#3604612,(sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false) AS 
> col10#3604613,(sum(cast(fk983801f0#3604356 as 
> double)),mode=Complete,isDistinct=false) AS 
> col11#3604614,(sum(cast(fke9adbd11#3604357 as 
> double)),mode=Complete,isDistinct=false) AS 
> col12#3604615,((sum(cast(fk644dd14e#3604333 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fk5b784c3d#3604350 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col13#3604616,((sum(cast(fk644dd14e#3604333 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col14#3604617,((sum(cast(fk644dd14e#3604333 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fk983801f0#3604356 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col15#3604618,((sum(cast(fk644dd14e#3604333 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fke9adbd11#3604357 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col16#3604619,((sum(cast(fk5b784c3d#3604350 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fk9768a0c6#3604331 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col17#3604620,((sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fk9768a0c6#3604331 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col18#3604621,((sum(cast(fk983801f0#3604356 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col19#3604622,((sum(cast(fke9adbd11#3604357 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fk983801f0#3604356 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col20#3604623,((sum(cast(fke9adbd11#3604357 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col21#3604624,(sum(cast(fke9adbd11#3604357 as 
> double)),mode=Complete,isDistinct=false) AS 
> col22#3604625,(sum(cast(fka9b7b4ee#3604332 as 
> double)),mode=Complete,isDistinct=false) AS 
> col23#3604626,(sum(cast(fk9768a0c6#3604331 as 
> double)),mode=Complete,isDistinct=false) AS 
> col24#3604627,(sum(cast(fk644dd14e#3604333 as 
> double)),mode=Complete,isDistinct=false) AS 
> col25#3604628,(sum(cast(fk5b784c3d#3604350 as 
> double)),mode=Complete,isDistinct=false) AS 
> col26#3604629,(sum(cast(fk644dd14e#3604333 as 
> double)),mode=Complete,isDistinct=false) AS 
> col27#3604630,(sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false) AS 
> col28#3604631,(sum(cast(fk644dd14e#3604333 as 
> double)),mode=Complete,isDistinct=false) AS 
> col29#3604632,(sum(cast(fk983801f0#3604356 as 
> double)),mode=Complete,isDistinct=false) AS 
> col30#3604633,(sum(cast(fk644dd14e#3604333 as 
> double)),mode=Complete,isDistinct=false) AS 
> col31#3604634,(sum(cast(fke9adbd11#3604357 as 
> double)),mode=Complete,isDistinct=false) AS 
> col32#3604635,(sum(cast(fk9768a0c6#3604331 as 
> double)),mode=Complete,isDistinct=false) AS 
> col33#3604636,(sum(cast(fk5b784c3d#3604350 as 
> double)),mode=Complete,isDistinct=false) AS 
> col34#3604637,(sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false) AS 
> col35#3604638,(sum(cast(fk9768a0c6#3604331 as 
> double)),mode=Complete,isDistinct=false) AS 
> col36#3604639,(sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false) AS 
> col37#3604640,(sum(cast(fk983801f0#3604356 as 
> double)),mode=Complete,isDistinct=false) AS 
> col38#3604641,(sum(cast(fk983801f0#3604356 as 
> double)),mode=Complete,isDistinct=false) AS 
> col39#3604642,(sum(cast(fke9adbd11#3604357 as 
> double)),mode=Complete,isDistinct=false) AS 
> col40#3604643,(sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false) AS 
> col41#3604644,(sum(cast(fke9adbd11#3604357 as 
> double)),mode=Complete,isDistinct=false) AS col42#3604645] : : +- 
> Filter (fke1ef2a3d#3604321 = 东吴) : : +- Subquery 
> mock_tb_id_86a163a55407d3b9_aa610e9a5676044c133c92922491a0a9 : : +- 
> Project 
> [fkb804c35c#3604315,fke1ef2a3d#3604321,fkc3802436#3604322,fk6938b0f1#3604330,fk9768a0c6#3604331,fka9b7b4ee#3604332,fk644dd14e#3604333,fk2afad0bc#3604349,fk5b784c3d#3604350,fk983801f0#3604356,fke9adbd11#3604357] 
> : : +- Subquery 
> 726cbefe72d042efacfe27eefed5a4ef_expendvfield_aa610e9a5676044c133c92922491a0a9 
> : : +- Project 
> [fkb804c35c#3604315,fke1ef2a3d#3604321,fkc3802436#3604322,fk6938b0f1#3604330,fk9768a0c6#3604331,fka9b7b4ee#3604332,fk644dd14e#3604333,fk2afad0bc#3604349,fk5b784c3d#3604350,fk983801f0#3604356,fke9adbd11#3604357] 
> : : +- Subquery 726cbefe72d042efacfe27eefed5a4ef : : +- 
> Relation[fkb804c35c#3604315,fk14b81600#3604316,fkc5848e45#3604317,fkc5fd3d59#3604318,fkb3b66e06#3604319,fk5345154e#3604320,fke1ef2a3d#3604321,fkc3802436#3604322,fkc1835f5e#3604323,fk3c97e290#3604324,fk0d9f524c#3604325,fk94739939#3604326,fk6f06b7e6#3604327,fk2f4bc742#3604328,fka894a817#3604329,fk6938b0f1#3604330,fk9768a0c6#3604331,fka9b7b4ee#3604332,fk644dd14e#3604333,fk14156ab8#3604334,fk0cff3ee7#3604335,fkbeb2eaff#3604336,fk65d2e57c#3604337,fk2057de12#3604338,fk6b48d715#3604339,fkfc93a68e#3604340,fk0444374a#3604341,fk87c5db7c#3604342,fkae319449#3604343,fk571f3eb5#3604344,fk4ca40a2b#3604345,fkc3ae8b08#3604346,fk51d422ab#3604347,fka82a7d62#3604348,fk2afad0bc#3604349,fk5b784c3d#3604350,fkca3a89a4#3604351,fk720a720c#3604352,fk8582dbe5#3604353,fk786d6e3c#3604354,fk3c675be7#3604355,fk983801f0#3604356,fke9adbd11#3604357,fk19d5a76b#3604358,fk0d0f580e#3604359,fk3a8ccb91#3604360,fk8fa0d5e8#3604361,fkd31e4724#3604362,fk874ca4e5#3604363,fk809384be#3604364,fkb9df99f7#3604365,fk2b120bee#3604366,fkcc1e115b#3604367,fk355fc528#3604368,fk2d0e2f85#3604369,fkc8054eb7#3604370,fked1cbfa7#3604371,fk65026b16#3604372,fk1874f932#3604373,fkd382f64d#3604374,fk0e328bae#3604375,fk44e818fd#3604376,fk554714b9#3604377,fka2c91a0e#3604378,fk2b120c52#3604379,fk32c3890a#3604380,fka54b4e53#3604381,fk5bd5ea3c#3604382] 
> ParquetRelation: stan.726cbefe72d042efacfe27eefed5a4ef : +- Subquery 
> tmp_tb_51d812b1654a0a98_1 : +- Project [col0#3604603 AS 
> col0#3604689,col1#3604604 AS col1#3604690,col2#3604605 AS 
> col2#3604691,col3#3604606 AS col3#3604692,col4#3604607 AS 
> col4#3604693,col5#3604608 AS col5#3604694,col6#3604609 AS 
> col6#3604695,col7#3604610 AS col7#3604696,col8#3604611 AS 
> col8#3604697,col9#3604612 AS col9#3604698,col10#3604613 AS 
> col10#3604699,col11#3604614 AS col11#3604700,col12#3604615 AS 
> col12#3604701,col13#3604616 AS col13#3604702,col14#3604617 AS 
> col14#3604703,col15#3604618 AS col15#3604704,col16#3604619 AS 
> col16#3604705,col17#3604620 AS col17#3604706,col18#3604621 AS 
> col18#3604707,col19#3604622 AS col19#3604708,col20#3604623 AS 
> col20#3604709,col21#3604624 AS col21#3604710,col22#3604625 AS 
> col22#3604711,col23#3604626 AS col23#3604712,col24#3604627 AS 
> col24#3604713,col25#3604628 AS col25#3604714,col26#3604629 AS 
> col26#3604715,col27#3604630 AS col27#3604716,col28#3604631 AS 
> col28#3604717,col29#3604632 AS col29#3604718,col30#3604633 AS 
> col30#3604719,col31#3604634 AS col31#3604720,col32#3604635 AS 
> col32#3604721,col33#3604636 AS col33#3604722,col34#3604637 AS 
> col34#3604723,col35#3604638 AS col35#3604724,col36#3604639 AS 
> col36#3604725,col37#3604640 AS col37#3604726,col38#3604641 AS 
> col38#3604727,col39#3604642 AS col39#3604728,col40#3604643 AS 
> col40#3604729,col41#3604644 AS col41#3604730,col42#3604645 AS 
> col42#3604731] : +- Subquery 
> 726cbefe72d042efacfe27eefed5a4ef_f54b458f5cbb803c_1 : +- Aggregate 
> [fkc3802436#3604322,year(cast(fkb804c35c#3604315 as 
> date)),month(cast(fkb804c35c#3604315 as 
> date)),dayofmonth(cast(fkb804c35c#3604315 as date))], [if 
> (((isnull(year(cast(fkb804c35c#3604315 as date))) || 
> isnull(month(cast(fkb804c35c#3604315 as date)))) || 
> isnull(dayofmonth(cast(fkb804c35c#3604315 as date))))) null else 
> UDF(year(cast(fkb804c35c#3604315 as 
> date)),month(cast(fkb804c35c#3604315 as 
> date)),dayofmonth(cast(fkb804c35c#3604315 as date))) AS 
> col0#3604603,fkc3802436#3604322 AS 
> col1#3604604,(sum(cast(fka9b7b4ee#3604332 as 
> double)),mode=Complete,isDistinct=false) AS 
> col2#3604605,(sum(cast(fka9b7b4ee#3604332 as 
> double)),mode=Complete,isDistinct=false) AS 
> col3#3604606,(sum(cast(fka9b7b4ee#3604332 as 
> double)),mode=Complete,isDistinct=false) AS 
> col4#3604607,(sum(cast(fk6938b0f1#3604330 as 
> double)),mode=Complete,isDistinct=false) AS 
> col5#3604608,(sum(cast(fk9768a0c6#3604331 as 
> double)),mode=Complete,isDistinct=false) AS 
> col6#3604609,((sum(cast(fka9b7b4ee#3604332 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fk9768a0c6#3604331 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col7#3604610,(sum(cast(fk5b784c3d#3604350 as 
> double)),mode=Complete,isDistinct=false) AS 
> col8#3604611,(sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false) AS 
> col9#3604612,(sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false) AS 
> col10#3604613,(sum(cast(fk983801f0#3604356 as 
> double)),mode=Complete,isDistinct=false) AS 
> col11#3604614,(sum(cast(fke9adbd11#3604357 as 
> double)),mode=Complete,isDistinct=false) AS 
> col12#3604615,((sum(cast(fk644dd14e#3604333 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fk5b784c3d#3604350 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col13#3604616,((sum(cast(fk644dd14e#3604333 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col14#3604617,((sum(cast(fk644dd14e#3604333 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fk983801f0#3604356 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col15#3604618,((sum(cast(fk644dd14e#3604333 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fke9adbd11#3604357 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col16#3604619,((sum(cast(fk5b784c3d#3604350 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fk9768a0c6#3604331 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col17#3604620,((sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fk9768a0c6#3604331 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col18#3604621,((sum(cast(fk983801f0#3604356 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col19#3604622,((sum(cast(fke9adbd11#3604357 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fk983801f0#3604356 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col20#3604623,((sum(cast(fke9adbd11#3604357 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col21#3604624,(sum(cast(fke9adbd11#3604357 as 
> double)),mode=Complete,isDistinct=false) AS 
> col22#3604625,(sum(cast(fka9b7b4ee#3604332 as 
> double)),mode=Complete,isDistinct=false) AS 
> col23#3604626,(sum(cast(fk9768a0c6#3604331 as 
> double)),mode=Complete,isDistinct=false) AS 
> col24#3604627,(sum(cast(fk644dd14e#3604333 as 
> double)),mode=Complete,isDistinct=false) AS 
> col25#3604628,(sum(cast(fk5b784c3d#3604350 as 
> double)),mode=Complete,isDistinct=false) AS 
> col26#3604629,(sum(cast(fk644dd14e#3604333 as 
> double)),mode=Complete,isDistinct=false) AS 
> col27#3604630,(sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false) AS 
> col28#3604631,(sum(cast(fk644dd14e#3604333 as 
> double)),mode=Complete,isDistinct=false) AS 
> col29#3604632,(sum(cast(fk983801f0#3604356 as 
> double)),mode=Complete,isDistinct=false) AS 
> col30#3604633,(sum(cast(fk644dd14e#3604333 as 
> double)),mode=Complete,isDistinct=false) AS 
> col31#3604634,(sum(cast(fke9adbd11#3604357 as 
> double)),mode=Complete,isDistinct=false) AS 
> col32#3604635,(sum(cast(fk9768a0c6#3604331 as 
> double)),mode=Complete,isDistinct=false) AS 
> col33#3604636,(sum(cast(fk5b784c3d#3604350 as 
> double)),mode=Complete,isDistinct=false) AS 
> col34#3604637,(sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false) AS 
> col35#3604638,(sum(cast(fk9768a0c6#3604331 as 
> double)),mode=Complete,isDistinct=false) AS 
> col36#3604639,(sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false) AS 
> col37#3604640,(sum(cast(fk983801f0#3604356 as 
> double)),mode=Complete,isDistinct=false) AS 
> col38#3604641,(sum(cast(fk983801f0#3604356 as 
> double)),mode=Complete,isDistinct=false) AS 
> col39#3604642,(sum(cast(fke9adbd11#3604357 as 
> double)),mode=Complete,isDistinct=false) AS 
> col40#3604643,(sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false) AS 
> col41#3604644,(sum(cast(fke9adbd11#3604357 as 
> double)),mode=Complete,isDistinct=false) AS col42#3604645] : +- Filter 
> (fke1ef2a3d#3604321 = 东吴) : +- Subquery 
> mock_tb_id_86a163a55407d3b9_aa610e9a5676044c133c92922491a0a9 : +- 
> Project 
> [fkb804c35c#3604315,fke1ef2a3d#3604321,fkc3802436#3604322,fk6938b0f1#3604330,fk9768a0c6#3604331,fka9b7b4ee#3604332,fk644dd14e#3604333,fk2afad0bc#3604349,fk5b784c3d#3604350,fk983801f0#3604356,fke9adbd11#3604357] 
> : +- Subquery 
> 726cbefe72d042efacfe27eefed5a4ef_expendvfield_aa610e9a5676044c133c92922491a0a9 
> : +- Project 
> [fkb804c35c#3604315,fke1ef2a3d#3604321,fkc3802436#3604322,fk6938b0f1#3604330,fk9768a0c6#3604331,fka9b7b4ee#3604332,fk644dd14e#3604333,fk2afad0bc#3604349,fk5b784c3d#3604350,fk983801f0#3604356,fke9adbd11#3604357] 
> : +- Subquery 726cbefe72d042efacfe27eefed5a4ef : +- 
> Relation[fkb804c35c#3604315,fk14b81600#3604316,fkc5848e45#3604317,fkc5fd3d59#3604318,fkb3b66e06#3604319,fk5345154e#3604320,fke1ef2a3d#3604321,fkc3802436#3604322,fkc1835f5e#3604323,fk3c97e290#3604324,fk0d9f524c#3604325,fk94739939#3604326,fk6f06b7e6#3604327,fk2f4bc742#3604328,fka894a817#3604329,fk6938b0f1#3604330,fk9768a0c6#3604331,fka9b7b4ee#3604332,fk644dd14e#3604333,fk14156ab8#3604334,fk0cff3ee7#3604335,fkbeb2eaff#3604336,fk65d2e57c#3604337,fk2057de12#3604338,fk6b48d715#3604339,fkfc93a68e#3604340,fk0444374a#3604341,fk87c5db7c#3604342,fkae319449#3604343,fk571f3eb5#3604344,fk4ca40a2b#3604345,fkc3ae8b08#3604346,fk51d422ab#3604347,fka82a7d62#3604348,fk2afad0bc#3604349,fk5b784c3d#3604350,fkca3a89a4#3604351,fk720a720c#3604352,fk8582dbe5#3604353,fk786d6e3c#3604354,fk3c675be7#3604355,fk983801f0#3604356,fke9adbd11#3604357,fk19d5a76b#3604358,fk0d0f580e#3604359,fk3a8ccb91#3604360,fk8fa0d5e8#3604361,fkd31e4724#3604362,fk874ca4e5#3604363,fk809384be#3604364,fkb9df99f7#3604365,fk2b120bee#3604366,fkcc1e115b#3604367,fk355fc528#3604368,fk2d0e2f85#3604369,fkc8054eb7#3604370,fked1cbfa7#3604371,fk65026b16#3604372,fk1874f932#3604373,fkd382f64d#3604374,fk0e328bae#3604375,fk44e818fd#3604376,fk554714b9#3604377,fka2c91a0e#3604378,fk2b120c52#3604379,fk32c3890a#3604380,fka54b4e53#3604381,fk5bd5ea3c#3604382] 
> ParquetRelation: stan.726cbefe72d042efacfe27eefed5a4ef +- Subquery 
> tmp_tb_d7c946c7e85a3f95_1 +- Project [col0#3605028 AS 
> col0#3605079,col1#3605029 AS col1#3605080,col2#3605030 AS 
> col2#3605081,col3#3605031 AS col3#3605082,col4#3605032 AS 
> col4#3605083,col5#3605033 AS col5#3605084,col6#3605034 AS 
> col6#3605085,col7#3605035 AS col7#3605086,col8#3605036 AS 
> col8#3605087,col9#3605037 AS col9#3605088,col10#3605038 AS 
> col10#3605089,col11#3605039 AS col11#3605090,col12#3605040 AS 
> col12#3605091,col13#3605041 AS col13#3605092,col14#3605042 AS 
> col14#3605093,col15#3605043 AS col15#3605094,col16#3605044 AS 
> col16#3605095,col17#3605045 AS col17#3605096,col18#3605046 AS 
> col18#3605097,col19#3605047 AS col19#3605098,col20#3605048 AS 
> col20#3605099,col21#3605049 AS col21#3605100,col22#3605050 AS 
> col22#3605101,col23#3605051 AS col23#3605102,col24#3605052 AS 
> col24#3605103,col25#3605053 AS col25#3605104,col26#3605054 AS 
> col26#3605105,col27#3605055 AS col27#3605106,col28#3605056 AS 
> col28#3605107,col29#3605057 AS col29#3605108,col30#3605058 AS 
> col30#3605109,col31#3605059 AS col31#3605110,col32#3605060 AS 
> col32#3605111,col33#3605061 AS col33#3605112,col34#3605062 AS 
> col34#3605113,col35#3605063 AS col35#3605114,col36#3605064 AS 
> col36#3605115,col37#3605065 AS col37#3605116,col38#3605066 AS 
> col38#3605117,col39#3605067 AS col39#3605118,col40#3605068 AS 
> col40#3605119,col41#3605069 AS col41#3605120] +- Subquery 
> 726cbefe72d042efacfe27eefed5a4ef_1dc7445f30f89b16_0 +- Project 
> [col0#3605028,col1#3605029,col2#3605030,col3#3605031,col4#3605032,col5#3605033,col6#3605034,col7#3605035,col8#3605036,col9#3605037,col10#3605038,col11#3605039,col12#3605040,col13#3605041,col14#3605042,col15#3605043,col16#3605044,col17#3605045,col18#3605046,col19#3605047,col20#3605048,col21#3605049,col22#3605050,col23#3605051,col24#3605052,col25#3605053,col26#3605054,col27#3605055,col28#3605056,col29#3605057,col30#3605058,col31#3605059,col32#3605060,col33#3605061,col34#3605062,col35#3605063,col36#3605064,col37#3605065,col38#3605066,col39#3605067,col40#3605068,col41#3605069] 
> +- Project 
> [col0#3605028,col1#3605029,col3#3605031,col4#3605032,col5#3605033,col6#3605034,col7#3605035,col8#3605036,col10#3605038,col11#3605039,col12#3605040,col13#3605041,col14#3605042,col15#3605043,col16#3605044,col17#3605045,col18#3605046,col19#3605047,col20#3605048,col22#3605050,col23#3605051,col24#3605052,col25#3605053,col26#3605054,col27#3605055,col28#3605056,col29#3605057,col30#3605058,col31#3605059,col32#3605060,col33#3605061,col34#3605062,col35#3605063,col36#3605064,col37#3605065,col38#3605066,col39#3605067,col40#3605068,col41#3605069,_w0#3605070,_w1#3605071,_w2#3605072,_w3#3605073,_w4#3605074,_w5#3605075,_we0#3605076,_we1#3605077,_we2#3605078,(_w0#3605070 
> / _we0#3605076) AS col2#3605030,(_w2#3605072 / _we1#3605077) AS 
> col9#3605037,(_w4#3605074 / _we2#3605078) AS col21#3605049] +- Window 
> [col0#3605028,col1#3605029,col3#3605031,col4#3605032,col5#3605033,col6#3605034,col7#3605035,col8#3605036,col10#3605038,col11#3605039,col12#3605040,col13#3605041,col14#3605042,col15#3605043,col16#3605044,col17#3605045,col18#3605046,col19#3605047,col20#3605048,col22#3605050,col23#3605051,col24#3605052,col25#3605053,col26#3605054,col27#3605055,col28#3605056,col29#3605057,col30#3605058,col31#3605059,col32#3605060,col33#3605061,col34#3605062,col35#3605063,col36#3605064,col37#3605065,col38#3605066,col39#3605067,col40#3605068,col41#3605069,_w0#3605070,_w1#3605071,_w2#3605072,_w3#3605073,_w4#3605074,_w5#3605075], 
> [HiveWindowFunction#org.apache.hadoop.hive.ql.udf.generic.GenericUDAFSum(_w1#3605071) 
> windowspecdefinition(ROWS BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED 
> FOLLOWING) AS 
> _we0#3605076,HiveWindowFunction#org.apache.hadoop.hive.ql.udf.generic.GenericUDAFSum(_w3#3605073) 
> windowspecdefinition(ROWS BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED 
> FOLLOWING) AS 
> _we1#3605077,HiveWindowFunction#org.apache.hadoop.hive.ql.udf.generic.GenericUDAFSum(_w5#3605075) 
> windowspecdefinition(ROWS BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED 
> FOLLOWING) AS _we2#3605078] +- Aggregate [fkc3802436#3604322], 
> [fkc3802436#3604322 AS col0#3605028,(sum(cast(fka9b7b4ee#3604332 as 
> double)),mode=Complete,isDistinct=false) AS 
> col1#3605029,(sum(cast(fka9b7b4ee#3604332 as 
> double)),mode=Complete,isDistinct=false) AS 
> col3#3605031,(sum(cast(fk6938b0f1#3604330 as 
> double)),mode=Complete,isDistinct=false) AS 
> col4#3605032,(sum(cast(fk9768a0c6#3604331 as 
> double)),mode=Complete,isDistinct=false) AS 
> col5#3605033,((sum(cast(fka9b7b4ee#3604332 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fk9768a0c6#3604331 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col6#3605034,(sum(cast(fk5b784c3d#3604350 as 
> double)),mode=Complete,isDistinct=false) AS 
> col7#3605035,(sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false) AS 
> col8#3605036,(sum(cast(fk983801f0#3604356 as 
> double)),mode=Complete,isDistinct=false) AS 
> col10#3605038,(sum(cast(fke9adbd11#3604357 as 
> double)),mode=Complete,isDistinct=false) AS 
> col11#3605039,((sum(cast(fk644dd14e#3604333 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fk5b784c3d#3604350 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col12#3605040,((sum(cast(fk644dd14e#3604333 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col13#3605041,((sum(cast(fk644dd14e#3604333 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fk983801f0#3604356 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col14#3605042,((sum(cast(fk644dd14e#3604333 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fke9adbd11#3604357 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col15#3605043,((sum(cast(fk5b784c3d#3604350 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fk9768a0c6#3604331 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col16#3605044,((sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fk9768a0c6#3604331 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col17#3605045,((sum(cast(fk983801f0#3604356 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col18#3605046,((sum(cast(fke9adbd11#3604357 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fk983801f0#3604356 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col19#3605047,((sum(cast(fke9adbd11#3604357 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col20#3605048,(sum(cast(fka9b7b4ee#3604332 as 
> double)),mode=Complete,isDistinct=false) AS 
> col22#3605050,(sum(cast(fk9768a0c6#3604331 as 
> double)),mode=Complete,isDistinct=false) AS 
> col23#3605051,(sum(cast(fk644dd14e#3604333 as 
> double)),mode=Complete,isDistinct=false) AS 
> col24#3605052,(sum(cast(fk5b784c3d#3604350 as 
> double)),mode=Complete,isDistinct=false) AS 
> col25#3605053,(sum(cast(fk644dd14e#3604333 as 
> double)),mode=Complete,isDistinct=false) AS 
> col26#3605054,(sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false) AS 
> col27#3605055,(sum(cast(fk644dd14e#3604333 as 
> double)),mode=Complete,isDistinct=false) AS 
> col28#3605056,(sum(cast(fk983801f0#3604356 as 
> double)),mode=Complete,isDistinct=false) AS 
> col29#3605057,(sum(cast(fk644dd14e#3604333 as 
> double)),mode=Complete,isDistinct=false) AS 
> col30#3605058,(sum(cast(fke9adbd11#3604357 as 
> double)),mode=Complete,isDistinct=false) AS 
> col31#3605059,(sum(cast(fk9768a0c6#3604331 as 
> double)),mode=Complete,isDistinct=false) AS 
> col32#3605060,(sum(cast(fk5b784c3d#3604350 as 
> double)),mode=Complete,isDistinct=false) AS 
> col33#3605061,(sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false) AS 
> col34#3605062,(sum(cast(fk9768a0c6#3604331 as 
> double)),mode=Complete,isDistinct=false) AS 
> col35#3605063,(sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false) AS 
> col36#3605064,(sum(cast(fk983801f0#3604356 as 
> double)),mode=Complete,isDistinct=false) AS 
> col37#3605065,(sum(cast(fk983801f0#3604356 as 
> double)),mode=Complete,isDistinct=false) AS 
> col38#3605066,(sum(cast(fke9adbd11#3604357 as 
> double)),mode=Complete,isDistinct=false) AS 
> col39#3605067,(sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false) AS 
> col40#3605068,(sum(cast(fke9adbd11#3604357 as 
> double)),mode=Complete,isDistinct=false) AS 
> col41#3605069,(sum(cast(fka9b7b4ee#3604332 as 
> double)),mode=Complete,isDistinct=false) AS 
> _w0#3605070,(sum(cast(fka9b7b4ee#3604332 as 
> double)),mode=Complete,isDistinct=false) AS 
> _w1#3605071,(sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false) AS 
> _w2#3605072,(sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false) AS 
> _w3#3605073,(sum(cast(fke9adbd11#3604357 as 
> double)),mode=Complete,isDistinct=false) AS 
> _w4#3605074,(sum(cast(fke9adbd11#3604357 as 
> double)),mode=Complete,isDistinct=false) AS _w5#3605075] +- Filter 
> ((fke1ef2a3d#3604321 = 东吴) && ((2017-02-01 00:00:00 <= 
> fkb804c35c#3604315) && (fkb804c35c#3604315 <= 2017-02-21 23:59:59))) 
> +- Subquery 
> mock_tb_id_86a163a55407d3b9_aa610e9a5676044c133c92922491a0a9 +- 
> Project 
> [fkb804c35c#3604315,fke1ef2a3d#3604321,fkc3802436#3604322,fk6938b0f1#3604330,fk9768a0c6#3604331,fka9b7b4ee#3604332,fk644dd14e#3604333,fk2afad0bc#3604349,fk5b784c3d#3604350,fk983801f0#3604356,fke9adbd11#3604357] 
> +- Subquery 
> 726cbefe72d042efacfe27eefed5a4ef_expendvfield_aa610e9a5676044c133c92922491a0a9 
> +- Project 
> [fkb804c35c#3604315,fke1ef2a3d#3604321,fkc3802436#3604322,fk6938b0f1#3604330,fk9768a0c6#3604331,fka9b7b4ee#3604332,fk644dd14e#3604333,fk2afad0bc#3604349,fk5b784c3d#3604350,fk983801f0#3604356,fke9adbd11#3604357] 
> +- Subquery 726cbefe72d042efacfe27eefed5a4ef +- 
> Relation[fkb804c35c#3604315,fk14b81600#3604316,fkc5848e45#3604317,fkc5fd3d59#3604318,fkb3b66e06#3604319,fk5345154e#3604320,fke1ef2a3d#3604321,fkc3802436#3604322,fkc1835f5e#3604323,fk3c97e290#3604324,fk0d9f524c#3604325,fk94739939#3604326,fk6f06b7e6#3604327,fk2f4bc742#3604328,fka894a817#3604329,fk6938b0f1#3604330,fk9768a0c6#3604331,fka9b7b4ee#3604332,fk644dd14e#3604333,fk14156ab8#3604334,fk0cff3ee7#3604335,fkbeb2eaff#3604336,fk65d2e57c#3604337,fk2057de12#3604338,fk6b48d715#3604339,fkfc93a68e#3604340,fk0444374a#3604341,fk87c5db7c#3604342,fkae319449#3604343,fk571f3eb5#3604344,fk4ca40a2b#3604345,fkc3ae8b08#3604346,fk51d422ab#3604347,fka82a7d62#3604348,fk2afad0bc#3604349,fk5b784c3d#3604350,fkca3a89a4#3604351,fk720a720c#3604352,fk8582dbe5#3604353,fk786d6e3c#3604354,fk3c675be7#3604355,fk983801f0#3604356,fke9adbd11#3604357,fk19d5a76b#3604358,fk0d0f580e#3604359,fk3a8ccb91#3604360,fk8fa0d5e8#3604361,fkd31e4724#3604362,fk874ca4e5#3604363,fk809384be#3604364,fkb9df99f7#3604365,fk2b120bee#3604366,fkcc1e115b#3604367,fk355fc528#3604368,fk2d0e2f85#3604369,fkc8054eb7#3604370,fked1cbfa7#3604371,fk65026b16#3604372,fk1874f932#3604373,fkd382f64d#3604374,fk0e328bae#3604375,fk44e818fd#3604376,fk554714b9#3604377,fka2c91a0e#3604378,fk2b120c52#3604379,fk32c3890a#3604380,fka54b4e53#3604381,fk5bd5ea3c#3604382] 
> ParquetRelation: stan.726cbefe72d042efacfe27eefed5a4ef == Optimized 
> Logical Plan == Aggregate [col0#3605399,grouping__id#3605398], 
> [col0#3605399 AS 
> col0#3605374,(sum(col1#3605333),mode=Complete,isDistinct=false) AS 
> col1#3605375,(sum(col2#3605334),mode=Complete,isDistinct=false) AS 
> col2#3605376,(avg(col3#3605335),mode=Complete,isDistinct=false) AS 
> col3#3605377,(sum(col4#3605336),mode=Complete,isDistinct=false) AS 
> col4#3605378,(sum(col5#3605337),mode=Complete,isDistinct=false) AS 
> col5#3605379,((sum(col22#3605354),mode=Complete,isDistinct=false) / 
> (sum(col23#3605355),mode=Complete,isDistinct=false)) AS 
> col6#3605380,(sum(col7#3605339),mode=Complete,isDistinct=false) AS 
> col7#3605381,(sum(col8#3605340),mode=Complete,isDistinct=false) AS 
> col8#3605382,(sum(col9#3605341),mode=Complete,isDistinct=false) AS 
> col9#3605383,(sum(col10#3605342),mode=Complete,isDistinct=false) AS 
> col10#3605384,(sum(col11#3605343),mode=Complete,isDistinct=false) AS 
> col11#3605385,((sum(col24#3605356),mode=Complete,isDistinct=false) / 
> (sum(col25#3605357),mode=Complete,isDistinct=false)) AS 
> col12#3605386,((sum(col24#3605356),mode=Complete,isDistinct=false) / 
> (sum(col27#3605359),mode=Complete,isDistinct=false)) AS 
> col13#3605387,((sum(col24#3605356),mode=Complete,isDistinct=false) / 
> (sum(col29#3605361),mode=Complete,isDistinct=false)) AS 
> col14#3605388,((sum(col24#3605356),mode=Complete,isDistinct=false) / 
> (sum(col31#3605363),mode=Complete,isDistinct=false)) AS 
> col15#3605389,((sum(col25#3605357),mode=Complete,isDistinct=false) / 
> (sum(col23#3605355),mode=Complete,isDistinct=false)) AS 
> col16#3605390,((sum(col27#3605359),mode=Complete,isDistinct=false) / 
> (sum(col23#3605355),mode=Complete,isDistinct=false)) AS 
> col17#3605391,((sum(col29#3605361),mode=Complete,isDistinct=false) / 
> (sum(col27#3605359),mode=Complete,isDistinct=false)) AS 
> col18#3605392,((sum(col31#3605363),mode=Complete,isDistinct=false) / 
> (sum(col29#3605361),mode=Complete,isDistinct=false)) AS 
> col19#3605393,((sum(col31#3605363),mode=Complete,isDistinct=false) / 
> (sum(col27#3605359),mode=Complete,isDistinct=false)) AS 
> col20#3605394,(sum(col21#3605353),mode=Complete,isDistinct=false) AS 
> col21#3605395,GROUPING__ID#3605398 AS GROUPING__ID#3605396] +- Project 
> [col0#3605399,col25#3605357,col31#3605363,col7#3605339,col9#3605341,col10#3605342,col29#3605361,col23#3605355,col21#3605353,col8#3605340,col24#3605356,grouping__id#3605398,col3#3605335,col4#3605336,col27#3605359,col1#3605333,col5#3605337,col22#3605354,col2#3605334,col11#3605343] 
> +- Expand [ArrayBuffer(col0#3605332, col1#3605333, col2#3605334, 
> col3#3605335, col4#3605336, col5#3605337, col6#3605338, col7#3605339, 
> col8#3605340, col9#3605341, col10#3605342, col11#3605343, 
> col12#3605344, col13#3605345, col14#3605346, col15#3605347, 
> col16#3605348, col17#3605349, col18#3605350, col19#3605351, 
> col20#3605352, col21#3605353, col22#3605354, col23#3605355, 
> col24#3605356, col25#3605357, col26#3605358, col27#3605359, 
> col28#3605360, col29#3605361, col30#3605362, col31#3605363, 
> col32#3605364, col33#3605365, col34#3605366, col35#3605367, 
> col36#3605368, col37#3605369, col38#3605370, col39#3605371, 
> col40#3605372, col41#3605373, null, 0)], 
> [col0#3605332,col1#3605333,col2#3605334,col3#3605335,col4#3605336,col5#3605337,col6#3605338,col7#3605339,col8#3605340,col9#3605341,col10#3605342,col11#3605343,col12#3605344,col13#3605345,col14#3605346,col15#3605347,col16#3605348,col17#3605349,col18#3605350,col19#3605351,col20#3605352,col21#3605353,col22#3605354,col23#3605355,col24#3605356,col25#3605357,col26#3605358,col27#3605359,col28#3605360,col29#3605361,col30#3605362,col31#3605363,col32#3605364,col33#3605365,col34#3605366,col35#3605367,col36#3605368,col37#3605369,col38#3605370,col39#3605371,col40#3605372,col41#3605373,col0#3605399,grouping__id#3605398] 
> +- Project [col0#3604986 AS col0#3605332,col1#3604987 AS 
> col1#3605333,col2#3605081 AS col2#3605334,col3#3604989 AS 
> col3#3605335,col4#3604990 AS col4#3605336,col5#3604991 AS 
> col5#3605337,col6#3604992 AS col6#3605338,col7#3604993 AS 
> col7#3605339,col8#3604994 AS col8#3605340,col9#3605088 AS 
> col9#3605341,col10#3604996 AS col10#3605342,col11#3604997 AS 
> col11#3605343,col12#3604998 AS col12#3605344,col13#3604999 AS 
> col13#3605345,col14#3605000 AS col14#3605346,col15#3605001 AS 
> col15#3605347,col16#3605002 AS col16#3605348,col17#3605003 AS 
> col17#3605349,col18#3605004 AS col18#3605350,col19#3605005 AS 
> col19#3605351,col20#3605006 AS col20#3605352,col21#3605100 AS 
> col21#3605353,col22#3605008 AS col22#3605354,col23#3605009 AS 
> col23#3605355,col24#3605010 AS col24#3605356,col25#3605011 AS 
> col25#3605357,col26#3605012 AS col26#3605358,col27#3605013 AS 
> col27#3605359,col28#3605014 AS col28#3605360,col29#3605015 AS 
> col29#3605361,col30#3605016 AS col30#3605362,col31#3605017 AS 
> col31#3605363,col32#3605018 AS col32#3605364,col33#3605019 AS 
> col33#3605365,col34#3605020 AS col34#3605366,col35#3605021 AS 
> col35#3605367,col36#3605022 AS col36#3605368,col37#3605023 AS 
> col37#3605369,col38#3605024 AS col38#3605370,col39#3605025 AS 
> col39#3605371,col40#3605026 AS col40#3605372,col41#3605027 AS 
> col41#3605373,col0#3604986 AS col0#3605399] +- Join LeftOuter, 
> Some((if (isnull(col0#3604986)) else col0#3604986 = if 
> (isnull(col0#3605079)) else col0#3605079)) :- Project [col6#3604567 AS 
> col6#3604992,col0#3604561 AS col0#3604986,col16#3604577 AS 
> col16#3605002,col35#3604596 AS col35#3605021,col32#3604593 AS 
> col32#3605018,col8#3604569 AS col8#3604994,col17#3604578 AS 
> col17#3605003,col4#3604779 AS col3#3604989,col41#3604602 AS 
> col41#3605027,col22#3604583 AS col22#3605008,col30#3604591 AS 
> col30#3605016,col12#3604573 AS col12#3604998,col29#3604590 AS 
> col29#3605015,col34#3604595 AS col34#3605020,col31#3604592 AS 
> col31#3605017,col26#3604587 AS col26#3605012,col28#3604589 AS 
> col28#3605014,col7#3604568 AS col7#3604993,col39#3604600 AS 
> col39#3605025,col36#3604597 AS col36#3605022,col15#3604576 AS 
> col15#3605001,col33#3604594 AS col33#3605019,col1#3604562 AS 
> col1#3604987,col13#3604574 AS col13#3604999,col11#3604572 AS 
> col11#3604997,col10#3604571 AS col10#3604996,col20#3604581 AS 
> col20#3605006,col38#3604599 AS col38#3605024,col18#3604579 AS 
> col18#3605004,col24#3604585 AS col24#3605010,col19#3604580 AS 
> col19#3605005,col37#3604598 AS col37#3605023,col14#3604575 AS 
> col14#3605000,col27#3604588 AS col27#3605013,col5#3604566 AS 
> col5#3604991,col4#3604565 AS col4#3604990,col25#3604586 AS 
> col25#3605011,col23#3604584 AS col23#3605009,col40#3604601 AS 
> col40#3605026] : +- Filter ((((((((((((((((((((isnotnull(col1#3604562) 
> || isnotnull(col2#3604563)) || isnotnull(col4#3604779)) || 
> isnotnull(col4#3604565)) || isnotnull(col5#3604566)) || 
> isnotnull(col6#3604567)) || isnotnull(col7#3604568)) || 
> isnotnull(col8#3604569)) || isnotnull(col9#3604570)) || 
> isnotnull(col10#3604571)) || isnotnull(col11#3604572)) || 
> isnotnull(col12#3604573)) || isnotnull(col13#3604574)) || 
> isnotnull(col14#3604575)) || isnotnull(col15#3604576)) || 
> isnotnull(col16#3604577)) || isnotnull(col17#3604578)) || 
> isnotnull(col18#3604579)) || isnotnull(col19#3604580)) || 
> isnotnull(col20#3604581)) || isnotnull(col21#3604582)) : +- Join 
> LeftOuter, Some((if (isnull(col0#3604561)) else col0#3604561 = if 
> (isnull(col1#3604776)) else col1#3604776)) : :- Project [col0#3604519 
> AS col0#3604561,col1#3604520 AS col1#3604562,col2#3604521 AS 
> col2#3604563,col3#3604522 AS col3#3604564,col4#3604523 AS 
> col4#3604565,col5#3604524 AS col5#3604566,col6#3604525 AS 
> col6#3604567,col7#3604526 AS col7#3604568,col8#3604527 AS 
> col8#3604569,col9#3604528 AS col9#3604570,col10#3604529 AS 
> col10#3604571,col11#3604530 AS col11#3604572,col12#3604531 AS 
> col12#3604573,col13#3604532 AS col13#3604574,col14#3604533 AS 
> col14#3604575,col15#3604534 AS col15#3604576,col16#3604535 AS 
> col16#3604577,col17#3604536 AS col17#3604578,col18#3604537 AS 
> col18#3604579,col19#3604538 AS col19#3604580,col20#3604539 AS 
> col20#3604581,col21#3604540 AS col21#3604582,col22#3604541 AS 
> col22#3604583,col23#3604542 AS col23#3604584,col24#3604543 AS 
> col24#3604585,col25#3604544 AS col25#3604586,col26#3604545 AS 
> col26#3604587,col27#3604546 AS col27#3604588,col28#3604547 AS 
> col28#3604589,col29#3604548 AS col29#3604590,col30#3604549 AS 
> col30#3604591,col31#3604550 AS col31#3604592,col32#3604551 AS 
> col32#3604593,col33#3604552 AS col33#3604594,col34#3604553 AS 
> col34#3604595,col35#3604554 AS col35#3604596,col36#3604555 AS 
> col36#3604597,col37#3604556 AS col37#3604598,col38#3604557 AS 
> col38#3604599,col39#3604558 AS col39#3604600,col40#3604559 AS 
> col40#3604601,col41#3604560 AS col41#3604602] : : +- Aggregate 
> [fkc3802436#3604322], [fkc3802436#3604322 AS 
> col0#3604519,(sum(cast(fka9b7b4ee#3604332 as 
> double)),mode=Complete,isDistinct=false) AS 
> col1#3604520,(sum(cast(fka9b7b4ee#3604332 as 
> double)),mode=Complete,isDistinct=false) AS 
> col2#3604521,(sum(cast(fka9b7b4ee#3604332 as 
> double)),mode=Complete,isDistinct=false) AS 
> col3#3604522,(sum(cast(fk6938b0f1#3604330 as 
> double)),mode=Complete,isDistinct=false) AS 
> col4#3604523,(sum(cast(fk9768a0c6#3604331 as 
> double)),mode=Complete,isDistinct=false) AS 
> col5#3604524,((sum(cast(fka9b7b4ee#3604332 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fk9768a0c6#3604331 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col6#3604525,(sum(cast(fk5b784c3d#3604350 as 
> double)),mode=Complete,isDistinct=false) AS 
> col7#3604526,(sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false) AS 
> col8#3604527,(sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false) AS 
> col9#3604528,(sum(cast(fk983801f0#3604356 as 
> double)),mode=Complete,isDistinct=false) AS 
> col10#3604529,(sum(cast(fke9adbd11#3604357 as 
> double)),mode=Complete,isDistinct=false) AS 
> col11#3604530,((sum(cast(fk644dd14e#3604333 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fk5b784c3d#3604350 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col12#3604531,((sum(cast(fk644dd14e#3604333 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col13#3604532,((sum(cast(fk644dd14e#3604333 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fk983801f0#3604356 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col14#3604533,((sum(cast(fk644dd14e#3604333 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fke9adbd11#3604357 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col15#3604534,((sum(cast(fk5b784c3d#3604350 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fk9768a0c6#3604331 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col16#3604535,((sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fk9768a0c6#3604331 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col17#3604536,((sum(cast(fk983801f0#3604356 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col18#3604537,((sum(cast(fke9adbd11#3604357 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fk983801f0#3604356 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col19#3604538,((sum(cast(fke9adbd11#3604357 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col20#3604539,(sum(cast(fke9adbd11#3604357 as 
> double)),mode=Complete,isDistinct=false) AS 
> col21#3604540,(sum(cast(fka9b7b4ee#3604332 as 
> double)),mode=Complete,isDistinct=false) AS 
> col22#3604541,(sum(cast(fk9768a0c6#3604331 as 
> double)),mode=Complete,isDistinct=false) AS 
> col23#3604542,(sum(cast(fk644dd14e#3604333 as 
> double)),mode=Complete,isDistinct=false) AS 
> col24#3604543,(sum(cast(fk5b784c3d#3604350 as 
> double)),mode=Complete,isDistinct=false) AS 
> col25#3604544,(sum(cast(fk644dd14e#3604333 as 
> double)),mode=Complete,isDistinct=false) AS 
> col26#3604545,(sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false) AS 
> col27#3604546,(sum(cast(fk644dd14e#3604333 as 
> double)),mode=Complete,isDistinct=false) AS 
> col28#3604547,(sum(cast(fk983801f0#3604356 as 
> double)),mode=Complete,isDistinct=false) AS 
> col29#3604548,(sum(cast(fk644dd14e#3604333 as 
> double)),mode=Complete,isDistinct=false) AS 
> col30#3604549,(sum(cast(fke9adbd11#3604357 as 
> double)),mode=Complete,isDistinct=false) AS 
> col31#3604550,(sum(cast(fk9768a0c6#3604331 as 
> double)),mode=Complete,isDistinct=false) AS 
> col32#3604551,(sum(cast(fk5b784c3d#3604350 as 
> double)),mode=Complete,isDistinct=false) AS 
> col33#3604552,(sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false) AS 
> col34#3604553,(sum(cast(fk9768a0c6#3604331 as 
> double)),mode=Complete,isDistinct=false) AS 
> col35#3604554,(sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false) AS 
> col36#3604555,(sum(cast(fk983801f0#3604356 as 
> double)),mode=Complete,isDistinct=false) AS 
> col37#3604556,(sum(cast(fk983801f0#3604356 as 
> double)),mode=Complete,isDistinct=false) AS 
> col38#3604557,(sum(cast(fke9adbd11#3604357 as 
> double)),mode=Complete,isDistinct=false) AS 
> col39#3604558,(sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false) AS 
> col40#3604559,(sum(cast(fke9adbd11#3604357 as 
> double)),mode=Complete,isDistinct=false) AS col41#3604560] : : +- 
> Project 
> [fk5b784c3d#3604350,fk983801f0#3604356,fke9adbd11#3604357,fk6938b0f1#3604330,fk9768a0c6#3604331,fk2afad0bc#3604349,fkc3802436#3604322,fk644dd14e#3604333,fka9b7b4ee#3604332] 
> : : +- Filter ((fke1ef2a3d#3604321 = 东吴) && ((2017-02-01 00:00:00 <= 
> fkb804c35c#3604315) && (fkb804c35c#3604315 <= 2017-02-21 23:59:59))) : 
> : +- 
> Relation[fkb804c35c#3604315,fk14b81600#3604316,fkc5848e45#3604317,fkc5fd3d59#3604318,fkb3b66e06#3604319,fk5345154e#3604320,fke1ef2a3d#3604321,fkc3802436#3604322,fkc1835f5e#3604323,fk3c97e290#3604324,fk0d9f524c#3604325,fk94739939#3604326,fk6f06b7e6#3604327,fk2f4bc742#3604328,fka894a817#3604329,fk6938b0f1#3604330,fk9768a0c6#3604331,fka9b7b4ee#3604332,fk644dd14e#3604333,fk14156ab8#3604334,fk0cff3ee7#3604335,fkbeb2eaff#3604336,fk65d2e57c#3604337,fk2057de12#3604338,fk6b48d715#3604339,fkfc93a68e#3604340,fk0444374a#3604341,fk87c5db7c#3604342,fkae319449#3604343,fk571f3eb5#3604344,fk4ca40a2b#3604345,fkc3ae8b08#3604346,fk51d422ab#3604347,fka82a7d62#3604348,fk2afad0bc#3604349,fk5b784c3d#3604350,fkca3a89a4#3604351,fk720a720c#3604352,fk8582dbe5#3604353,fk786d6e3c#3604354,fk3c675be7#3604355,fk983801f0#3604356,fke9adbd11#3604357,fk19d5a76b#3604358,fk0d0f580e#3604359,fk3a8ccb91#3604360,fk8fa0d5e8#3604361,fkd31e4724#3604362,fk874ca4e5#3604363,fk809384be#3604364,fkb9df99f7#3604365,fk2b120bee#3604366,fkcc1e115b#3604367,fk355fc528#3604368,fk2d0e2f85#3604369,fkc8054eb7#3604370,fked1cbfa7#3604371,fk65026b16#3604372,fk1874f932#3604373,fkd382f64d#3604374,fk0e328bae#3604375,fk44e818fd#3604376,fk554714b9#3604377,fka2c91a0e#3604378,fk2b120c52#3604379,fk32c3890a#3604380,fka54b4e53#3604381,fk5bd5ea3c#3604382] 
> ParquetRelation: stan.726cbefe72d042efacfe27eefed5a4ef : +- Project 
> [col0#3604646 AS col0#3604775,col1#3604647 AS 
> col1#3604776,col2#3604648 AS col2#3604777,col3#3604649 AS 
> col3#3604778,HiveSimpleUDF#site.stanzhai.udf.UDFNumCmp(col4#3604650,col4#3604693,1) 
> AS col4#3604779,col5#3604651 AS col5#3604780,col6#3604652 AS 
> col6#3604781,col7#3604653 AS col7#3604782,col8#3604654 AS 
> col8#3604783,col9#3604655 AS col9#3604784,col10#3604656 AS 
> col10#3604785,col11#3604657 AS col11#3604786,col12#3604658 AS 
> col12#3604787,col13#3604659 AS col13#3604788,col14#3604660 AS 
> col14#3604789,col15#3604661 AS col15#3604790,col16#3604662 AS 
> col16#3604791,col17#3604663 AS col17#3604792,col18#3604664 AS 
> col18#3604793,col19#3604665 AS col19#3604794,col20#3604666 AS 
> col20#3604795,col21#3604667 AS col21#3604796,col22#3604668 AS 
> col22#3604797,col23#3604669 AS col23#3604798,col24#3604670 AS 
> col24#3604799,col25#3604671 AS col25#3604800,col26#3604672 AS 
> col26#3604801,col27#3604673 AS col27#3604802,col28#3604674 AS 
> col28#3604803,col29#3604675 AS col29#3604804,col30#3604676 AS 
> col30#3604805,col31#3604677 AS col31#3604806,col32#3604678 AS 
> col32#3604807,col33#3604679 AS col33#3604808,col34#3604680 AS 
> col34#3604809,col35#3604681 AS col35#3604810,col36#3604682 AS 
> col36#3604811,col37#3604683 AS col37#3604812,col38#3604684 AS 
> col38#3604813,col39#3604685 AS col39#3604814,col40#3604686 AS 
> col40#3604815,col41#3604687 AS col41#3604816,col42#3604688 AS 
> col42#3604817] : +- Join LeftOuter, Some((((col0#3604646 = 2017-02-21 
> 00:00:00) && (if (isnull(col1#3604647)) else col1#3604647 = if 
> (isnull(col1#3604690)) else col1#3604690)) && (col0#3604646 = 
> HiveSimpleUDF#site.stanzhai.udf.UDFGetNext(col0#3604689,day,day,1)))) 
> : :- Project [col0#3604603 AS col0#3604646,col1#3604604 AS 
> col1#3604647,col2#3604605 AS col2#3604648,col3#3604606 AS 
> col3#3604649,col4#3604607 AS col4#3604650,col5#3604608 AS 
> col5#3604651,col6#3604609 AS col6#3604652,col7#3604610 AS 
> col7#3604653,col8#3604611 AS col8#3604654,col9#3604612 AS 
> col9#3604655,col10#3604613 AS col10#3604656,col11#3604614 AS 
> col11#3604657,col12#3604615 AS col12#3604658,col13#3604616 AS 
> col13#3604659,col14#3604617 AS col14#3604660,col15#3604618 AS 
> col15#3604661,col16#3604619 AS col16#3604662,col17#3604620 AS 
> col17#3604663,col18#3604621 AS col18#3604664,col19#3604622 AS 
> col19#3604665,col20#3604623 AS col20#3604666,col21#3604624 AS 
> col21#3604667,col22#3604625 AS col22#3604668,col23#3604626 AS 
> col23#3604669,col24#3604627 AS col24#3604670,col25#3604628 AS 
> col25#3604671,col26#3604629 AS col26#3604672,col27#3604630 AS 
> col27#3604673,col28#3604631 AS col28#3604674,col29#3604632 AS 
> col29#3604675,col30#3604633 AS col30#3604676,col31#3604634 AS 
> col31#3604677,col32#3604635 AS col32#3604678,col33#3604636 AS 
> col33#3604679,col34#3604637 AS col34#3604680,col35#3604638 AS 
> col35#3604681,col36#3604639 AS col36#3604682,col37#3604640 AS 
> col37#3604683,col38#3604641 AS col38#3604684,col39#3604642 AS 
> col39#3604685,col40#3604643 AS col40#3604686,col41#3604644 AS 
> col41#3604687,col42#3604645 AS col42#3604688] : : +- Aggregate 
> [fkc3802436#3604322,year(cast(fkb804c35c#3604315 as 
> date)),month(cast(fkb804c35c#3604315 as 
> date)),dayofmonth(cast(fkb804c35c#3604315 as date))], [if 
> (((isnull(year(cast(fkb804c35c#3604315 as date))) || 
> isnull(month(cast(fkb804c35c#3604315 as date)))) || 
> isnull(dayofmonth(cast(fkb804c35c#3604315 as date))))) null else 
> UDF(year(cast(fkb804c35c#3604315 as 
> date)),month(cast(fkb804c35c#3604315 as 
> date)),dayofmonth(cast(fkb804c35c#3604315 as date))) AS 
> col0#3604603,fkc3802436#3604322 AS 
> col1#3604604,(sum(cast(fka9b7b4ee#3604332 as 
> double)),mode=Complete,isDistinct=false) AS 
> col2#3604605,(sum(cast(fka9b7b4ee#3604332 as 
> double)),mode=Complete,isDistinct=false) AS 
> col3#3604606,(sum(cast(fka9b7b4ee#3604332 as 
> double)),mode=Complete,isDistinct=false) AS 
> col4#3604607,(sum(cast(fk6938b0f1#3604330 as 
> double)),mode=Complete,isDistinct=false) AS 
> col5#3604608,(sum(cast(fk9768a0c6#3604331 as 
> double)),mode=Complete,isDistinct=false) AS 
> col6#3604609,((sum(cast(fka9b7b4ee#3604332 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fk9768a0c6#3604331 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col7#3604610,(sum(cast(fk5b784c3d#3604350 as 
> double)),mode=Complete,isDistinct=false) AS 
> col8#3604611,(sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false) AS 
> col9#3604612,(sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false) AS 
> col10#3604613,(sum(cast(fk983801f0#3604356 as 
> double)),mode=Complete,isDistinct=false) AS 
> col11#3604614,(sum(cast(fke9adbd11#3604357 as 
> double)),mode=Complete,isDistinct=false) AS 
> col12#3604615,((sum(cast(fk644dd14e#3604333 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fk5b784c3d#3604350 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col13#3604616,((sum(cast(fk644dd14e#3604333 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col14#3604617,((sum(cast(fk644dd14e#3604333 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fk983801f0#3604356 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col15#3604618,((sum(cast(fk644dd14e#3604333 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fke9adbd11#3604357 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col16#3604619,((sum(cast(fk5b784c3d#3604350 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fk9768a0c6#3604331 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col17#3604620,((sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fk9768a0c6#3604331 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col18#3604621,((sum(cast(fk983801f0#3604356 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col19#3604622,((sum(cast(fke9adbd11#3604357 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fk983801f0#3604356 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col20#3604623,((sum(cast(fke9adbd11#3604357 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col21#3604624,(sum(cast(fke9adbd11#3604357 as 
> double)),mode=Complete,isDistinct=false) AS 
> col22#3604625,(sum(cast(fka9b7b4ee#3604332 as 
> double)),mode=Complete,isDistinct=false) AS 
> col23#3604626,(sum(cast(fk9768a0c6#3604331 as 
> double)),mode=Complete,isDistinct=false) AS 
> col24#3604627,(sum(cast(fk644dd14e#3604333 as 
> double)),mode=Complete,isDistinct=false) AS 
> col25#3604628,(sum(cast(fk5b784c3d#3604350 as 
> double)),mode=Complete,isDistinct=false) AS 
> col26#3604629,(sum(cast(fk644dd14e#3604333 as 
> double)),mode=Complete,isDistinct=false) AS 
> col27#3604630,(sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false) AS 
> col28#3604631,(sum(cast(fk644dd14e#3604333 as 
> double)),mode=Complete,isDistinct=false) AS 
> col29#3604632,(sum(cast(fk983801f0#3604356 as 
> double)),mode=Complete,isDistinct=false) AS 
> col30#3604633,(sum(cast(fk644dd14e#3604333 as 
> double)),mode=Complete,isDistinct=false) AS 
> col31#3604634,(sum(cast(fke9adbd11#3604357 as 
> double)),mode=Complete,isDistinct=false) AS 
> col32#3604635,(sum(cast(fk9768a0c6#3604331 as 
> double)),mode=Complete,isDistinct=false) AS 
> col33#3604636,(sum(cast(fk5b784c3d#3604350 as 
> double)),mode=Complete,isDistinct=false) AS 
> col34#3604637,(sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false) AS 
> col35#3604638,(sum(cast(fk9768a0c6#3604331 as 
> double)),mode=Complete,isDistinct=false) AS 
> col36#3604639,(sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false) AS 
> col37#3604640,(sum(cast(fk983801f0#3604356 as 
> double)),mode=Complete,isDistinct=false) AS 
> col38#3604641,(sum(cast(fk983801f0#3604356 as 
> double)),mode=Complete,isDistinct=false) AS 
> col39#3604642,(sum(cast(fke9adbd11#3604357 as 
> double)),mode=Complete,isDistinct=false) AS 
> col40#3604643,(sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false) AS 
> col41#3604644,(sum(cast(fke9adbd11#3604357 as 
> double)),mode=Complete,isDistinct=false) AS col42#3604645] : : +- 
> Project 
> [fk5b784c3d#3604350,fk983801f0#3604356,fke9adbd11#3604357,fk6938b0f1#3604330,fkb804c35c#3604315,fk9768a0c6#3604331,fk2afad0bc#3604349,fkc3802436#3604322,fk644dd14e#3604333,fka9b7b4ee#3604332] 
> : : +- Filter ((fke1ef2a3d#3604321 = 东吴) && (if 
> (((isnull(year(cast(fkb804c35c#3604315 as date))) || 
> isnull(month(cast(fkb804c35c#3604315 as date)))) || 
> isnull(dayofmonth(cast(fkb804c35c#3604315 as date))))) null else 
> UDF(year(cast(fkb804c35c#3604315 as 
> date)),month(cast(fkb804c35c#3604315 as 
> date)),dayofmonth(cast(fkb804c35c#3604315 as date))) = 2017-02-21 
> 00:00:00)) : : +- 
> Relation[fkb804c35c#3604315,fk14b81600#3604316,fkc5848e45#3604317,fkc5fd3d59#3604318,fkb3b66e06#3604319,fk5345154e#3604320,fke1ef2a3d#3604321,fkc3802436#3604322,fkc1835f5e#3604323,fk3c97e290#3604324,fk0d9f524c#3604325,fk94739939#3604326,fk6f06b7e6#3604327,fk2f4bc742#3604328,fka894a817#3604329,fk6938b0f1#3604330,fk9768a0c6#3604331,fka9b7b4ee#3604332,fk644dd14e#3604333,fk14156ab8#3604334,fk0cff3ee7#3604335,fkbeb2eaff#3604336,fk65d2e57c#3604337,fk2057de12#3604338,fk6b48d715#3604339,fkfc93a68e#3604340,fk0444374a#3604341,fk87c5db7c#3604342,fkae319449#3604343,fk571f3eb5#3604344,fk4ca40a2b#3604345,fkc3ae8b08#3604346,fk51d422ab#3604347,fka82a7d62#3604348,fk2afad0bc#3604349,fk5b784c3d#3604350,fkca3a89a4#3604351,fk720a720c#3604352,fk8582dbe5#3604353,fk786d6e3c#3604354,fk3c675be7#3604355,fk983801f0#3604356,fke9adbd11#3604357,fk19d5a76b#3604358,fk0d0f580e#3604359,fk3a8ccb91#3604360,fk8fa0d5e8#3604361,fkd31e4724#3604362,fk874ca4e5#3604363,fk809384be#3604364,fkb9df99f7#3604365,fk2b120bee#3604366,fkcc1e115b#3604367,fk355fc528#3604368,fk2d0e2f85#3604369,fkc8054eb7#3604370,fked1cbfa7#3604371,fk65026b16#3604372,fk1874f932#3604373,fkd382f64d#3604374,fk0e328bae#3604375,fk44e818fd#3604376,fk554714b9#3604377,fka2c91a0e#3604378,fk2b120c52#3604379,fk32c3890a#3604380,fka54b4e53#3604381,fk5bd5ea3c#3604382] 
> ParquetRelation: stan.726cbefe72d042efacfe27eefed5a4ef : +- Project 
> [col1#3604604 AS col1#3604690,col4#3604607 AS 
> col4#3604693,col0#3604603 AS col0#3604689] : +- Aggregate 
> [fkc3802436#3604322,year(cast(fkb804c35c#3604315 as 
> date)),month(cast(fkb804c35c#3604315 as 
> date)),dayofmonth(cast(fkb804c35c#3604315 as date))], [if 
> (((isnull(year(cast(fkb804c35c#3604315 as date))) || 
> isnull(month(cast(fkb804c35c#3604315 as date)))) || 
> isnull(dayofmonth(cast(fkb804c35c#3604315 as date))))) null else 
> UDF(year(cast(fkb804c35c#3604315 as 
> date)),month(cast(fkb804c35c#3604315 as 
> date)),dayofmonth(cast(fkb804c35c#3604315 as date))) AS 
> col0#3604603,fkc3802436#3604322 AS 
> col1#3604604,(sum(cast(fka9b7b4ee#3604332 as 
> double)),mode=Complete,isDistinct=false) AS col4#3604607] : +- Project 
> [fkc3802436#3604322,fkb804c35c#3604315,fka9b7b4ee#3604332] : +- Filter 
> (fke1ef2a3d#3604321 = 东吴) : +- 
> Relation[fkb804c35c#3604315,fk14b81600#3604316,fkc5848e45#3604317,fkc5fd3d59#3604318,fkb3b66e06#3604319,fk5345154e#3604320,fke1ef2a3d#3604321,fkc3802436#3604322,fkc1835f5e#3604323,fk3c97e290#3604324,fk0d9f524c#3604325,fk94739939#3604326,fk6f06b7e6#3604327,fk2f4bc742#3604328,fka894a817#3604329,fk6938b0f1#3604330,fk9768a0c6#3604331,fka9b7b4ee#3604332,fk644dd14e#3604333,fk14156ab8#3604334,fk0cff3ee7#3604335,fkbeb2eaff#3604336,fk65d2e57c#3604337,fk2057de12#3604338,fk6b48d715#3604339,fkfc93a68e#3604340,fk0444374a#3604341,fk87c5db7c#3604342,fkae319449#3604343,fk571f3eb5#3604344,fk4ca40a2b#3604345,fkc3ae8b08#3604346,fk51d422ab#3604347,fka82a7d62#3604348,fk2afad0bc#3604349,fk5b784c3d#3604350,fkca3a89a4#3604351,fk720a720c#3604352,fk8582dbe5#3604353,fk786d6e3c#3604354,fk3c675be7#3604355,fk983801f0#3604356,fke9adbd11#3604357,fk19d5a76b#3604358,fk0d0f580e#3604359,fk3a8ccb91#3604360,fk8fa0d5e8#3604361,fkd31e4724#3604362,fk874ca4e5#3604363,fk809384be#3604364,fkb9df99f7#3604365,fk2b120bee#3604366,fkcc1e115b#3604367,fk355fc528#3604368,fk2d0e2f85#3604369,fkc8054eb7#3604370,fked1cbfa7#3604371,fk65026b16#3604372,fk1874f932#3604373,fkd382f64d#3604374,fk0e328bae#3604375,fk44e818fd#3604376,fk554714b9#3604377,fka2c91a0e#3604378,fk2b120c52#3604379,fk32c3890a#3604380,fka54b4e53#3604381,fk5bd5ea3c#3604382] 
> ParquetRelation: stan.726cbefe72d042efacfe27eefed5a4ef +- Project 
> [(_w0#3605070 / _we0#3605076) AS col2#3605081,(_w4#3605074 / 
> _we2#3605078) AS col21#3605100,col0#3605028 AS 
> col0#3605079,(_w2#3605072 / _we1#3605077) AS col9#3605088] +- Window 
> [col0#3605028,col1#3605029,col3#3605031,col4#3605032,col5#3605033,col6#3605034,col7#3605035,col8#3605036,col10#3605038,col11#3605039,col12#3605040,col13#3605041,col14#3605042,col15#3605043,col16#3605044,col17#3605045,col18#3605046,col19#3605047,col20#3605048,col22#3605050,col23#3605051,col24#3605052,col25#3605053,col26#3605054,col27#3605055,col28#3605056,col29#3605057,col30#3605058,col31#3605059,col32#3605060,col33#3605061,col34#3605062,col35#3605063,col36#3605064,col37#3605065,col38#3605066,col39#3605067,col40#3605068,col41#3605069,_w0#3605070,_w1#3605071,_w2#3605072,_w3#3605073,_w4#3605074,_w5#3605075], 
> [HiveWindowFunction#org.apache.hadoop.hive.ql.udf.generic.GenericUDAFSum(_w1#3605071) 
> windowspecdefinition(ROWS BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED 
> FOLLOWING) AS 
> _we0#3605076,HiveWindowFunction#org.apache.hadoop.hive.ql.udf.generic.GenericUDAFSum(_w3#3605073) 
> windowspecdefinition(ROWS BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED 
> FOLLOWING) AS 
> _we1#3605077,HiveWindowFunction#org.apache.hadoop.hive.ql.udf.generic.GenericUDAFSum(_w5#3605075) 
> windowspecdefinition(ROWS BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED 
> FOLLOWING) AS _we2#3605078] +- Aggregate [fkc3802436#3604322], 
> [fkc3802436#3604322 AS col0#3605028,(sum(cast(fka9b7b4ee#3604332 as 
> double)),mode=Complete,isDistinct=false) AS 
> col1#3605029,(sum(cast(fka9b7b4ee#3604332 as 
> double)),mode=Complete,isDistinct=false) AS 
> col3#3605031,(sum(cast(fk6938b0f1#3604330 as 
> double)),mode=Complete,isDistinct=false) AS 
> col4#3605032,(sum(cast(fk9768a0c6#3604331 as 
> double)),mode=Complete,isDistinct=false) AS 
> col5#3605033,((sum(cast(fka9b7b4ee#3604332 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fk9768a0c6#3604331 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col6#3605034,(sum(cast(fk5b784c3d#3604350 as 
> double)),mode=Complete,isDistinct=false) AS 
> col7#3605035,(sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false) AS 
> col8#3605036,(sum(cast(fk983801f0#3604356 as 
> double)),mode=Complete,isDistinct=false) AS 
> col10#3605038,(sum(cast(fke9adbd11#3604357 as 
> double)),mode=Complete,isDistinct=false) AS 
> col11#3605039,((sum(cast(fk644dd14e#3604333 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fk5b784c3d#3604350 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col12#3605040,((sum(cast(fk644dd14e#3604333 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col13#3605041,((sum(cast(fk644dd14e#3604333 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fk983801f0#3604356 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col14#3605042,((sum(cast(fk644dd14e#3604333 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fke9adbd11#3604357 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col15#3605043,((sum(cast(fk5b784c3d#3604350 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fk9768a0c6#3604331 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col16#3605044,((sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fk9768a0c6#3604331 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col17#3605045,((sum(cast(fk983801f0#3604356 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col18#3605046,((sum(cast(fke9adbd11#3604357 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fk983801f0#3604356 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col19#3605047,((sum(cast(fke9adbd11#3604357 as 
> double)),mode=Complete,isDistinct=false) / 
> (sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false)) AS 
> col20#3605048,(sum(cast(fka9b7b4ee#3604332 as 
> double)),mode=Complete,isDistinct=false) AS 
> col22#3605050,(sum(cast(fk9768a0c6#3604331 as 
> double)),mode=Complete,isDistinct=false) AS 
> col23#3605051,(sum(cast(fk644dd14e#3604333 as 
> double)),mode=Complete,isDistinct=false) AS 
> col24#3605052,(sum(cast(fk5b784c3d#3604350 as 
> double)),mode=Complete,isDistinct=false) AS 
> col25#3605053,(sum(cast(fk644dd14e#3604333 as 
> double)),mode=Complete,isDistinct=false) AS 
> col26#3605054,(sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false) AS 
> col27#3605055,(sum(cast(fk644dd14e#3604333 as 
> double)),mode=Complete,isDistinct=false) AS 
> col28#3605056,(sum(cast(fk983801f0#3604356 as 
> double)),mode=Complete,isDistinct=false) AS 
> col29#3605057,(sum(cast(fk644dd14e#3604333 as 
> double)),mode=Complete,isDistinct=false) AS 
> col30#3605058,(sum(cast(fke9adbd11#3604357 as 
> double)),mode=Complete,isDistinct=false) AS 
> col31#3605059,(sum(cast(fk9768a0c6#3604331 as 
> double)),mode=Complete,isDistinct=false) AS 
> col32#3605060,(sum(cast(fk5b784c3d#3604350 as 
> double)),mode=Complete,isDistinct=false) AS 
> col33#3605061,(sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false) AS 
> col34#3605062,(sum(cast(fk9768a0c6#3604331 as 
> double)),mode=Complete,isDistinct=false) AS 
> col35#3605063,(sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false) AS 
> col36#3605064,(sum(cast(fk983801f0#3604356 as 
> double)),mode=Complete,isDistinct=false) AS 
> col37#3605065,(sum(cast(fk983801f0#3604356 as 
> double)),mode=Complete,isDistinct=false) AS 
> col38#3605066,(sum(cast(fke9adbd11#3604357 as 
> double)),mode=Complete,isDistinct=false) AS 
> col39#3605067,(sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false) AS 
> col40#3605068,(sum(cast(fke9adbd11#3604357 as 
> double)),mode=Complete,isDistinct=false) AS 
> col41#3605069,(sum(cast(fka9b7b4ee#3604332 as 
> double)),mode=Complete,isDistinct=false) AS 
> _w0#3605070,(sum(cast(fka9b7b4ee#3604332 as 
> double)),mode=Complete,isDistinct=false) AS 
> _w1#3605071,(sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false) AS 
> _w2#3605072,(sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Complete,isDistinct=false) AS 
> _w3#3605073,(sum(cast(fke9adbd11#3604357 as 
> double)),mode=Complete,isDistinct=false) AS 
> _w4#3605074,(sum(cast(fke9adbd11#3604357 as 
> double)),mode=Complete,isDistinct=false) AS _w5#3605075] +- Project 
> [fk5b784c3d#3604350,fk983801f0#3604356,fke9adbd11#3604357,fk6938b0f1#3604330,fk9768a0c6#3604331,fk2afad0bc#3604349,fkc3802436#3604322,fk644dd14e#3604333,fka9b7b4ee#3604332] 
> +- Filter ((fke1ef2a3d#3604321 = 东吴) && ((2017-02-01 00:00:00 <= 
> fkb804c35c#3604315) && (fkb804c35c#3604315 <= 2017-02-21 23:59:59))) 
> +- 
> Relation[fkb804c35c#3604315,fk14b81600#3604316,fkc5848e45#3604317,fkc5fd3d59#3604318,fkb3b66e06#3604319,fk5345154e#3604320,fke1ef2a3d#3604321,fkc3802436#3604322,fkc1835f5e#3604323,fk3c97e290#3604324,fk0d9f524c#3604325,fk94739939#3604326,fk6f06b7e6#3604327,fk2f4bc742#3604328,fka894a817#3604329,fk6938b0f1#3604330,fk9768a0c6#3604331,fka9b7b4ee#3604332,fk644dd14e#3604333,fk14156ab8#3604334,fk0cff3ee7#3604335,fkbeb2eaff#3604336,fk65d2e57c#3604337,fk2057de12#3604338,fk6b48d715#3604339,fkfc93a68e#3604340,fk0444374a#3604341,fk87c5db7c#3604342,fkae319449#3604343,fk571f3eb5#3604344,fk4ca40a2b#3604345,fkc3ae8b08#3604346,fk51d422ab#3604347,fka82a7d62#3604348,fk2afad0bc#3604349,fk5b784c3d#3604350,fkca3a89a4#3604351,fk720a720c#3604352,fk8582dbe5#3604353,fk786d6e3c#3604354,fk3c675be7#3604355,fk983801f0#3604356,fke9adbd11#3604357,fk19d5a76b#3604358,fk0d0f580e#3604359,fk3a8ccb91#3604360,fk8fa0d5e8#3604361,fkd31e4724#3604362,fk874ca4e5#3604363,fk809384be#3604364,fkb9df99f7#3604365,fk2b120bee#3604366,fkcc1e115b#3604367,fk355fc528#3604368,fk2d0e2f85#3604369,fkc8054eb7#3604370,fked1cbfa7#3604371,fk65026b16#3604372,fk1874f932#3604373,fkd382f64d#3604374,fk0e328bae#3604375,fk44e818fd#3604376,fk554714b9#3604377,fka2c91a0e#3604378,fk2b120c52#3604379,fk32c3890a#3604380,fka54b4e53#3604381,fk5bd5ea3c#3604382] 
> ParquetRelation: stan.726cbefe72d042efacfe27eefed5a4ef == Physical 
> Plan == TungstenAggregate(key=[col0#3605399,grouping__id#3605398], 
> functions=[(sum(col1#3605333),mode=Final,isDistinct=false),(sum(col2#3605334),mode=Final,isDistinct=false),(avg(col3#3605335),mode=Final,isDistinct=false),(sum(col4#3605336),mode=Final,isDistinct=false),(sum(col5#3605337),mode=Final,isDistinct=false),(sum(col22#3605354),mode=Final,isDistinct=false),(sum(col23#3605355),mode=Final,isDistinct=false),(sum(col7#3605339),mode=Final,isDistinct=false),(sum(col8#3605340),mode=Final,isDistinct=false),(sum(col9#3605341),mode=Final,isDistinct=false),(sum(col10#3605342),mode=Final,isDistinct=false),(sum(col11#3605343),mode=Final,isDistinct=false),(sum(col24#3605356),mode=Final,isDistinct=false),(sum(col25#3605357),mode=Final,isDistinct=false),(sum(col27#3605359),mode=Final,isDistinct=false),(sum(col29#3605361),mode=Final,isDistinct=false),(sum(col31#3605363),mode=Final,isDistinct=false),(sum(col21#3605353),mode=Final,isDistinct=false)], 
> output=[col0#3605374,col1#3605375,col2#3605376,col3#3605377,col4#3605378,col5#3605379,col6#3605380,col7#3605381,col8#3605382,col9#3605383,col10#3605384,col11#3605385,col12#3605386,col13#3605387,col14#3605388,col15#3605389,col16#3605390,col17#3605391,col18#3605392,col19#3605393,col20#3605394,col21#3605395,GROUPING__ID#3605396]) 
> +- TungstenExchange 
> hashpartitioning(col0#3605399,grouping__id#3605398,114), None +- 
> TungstenAggregate(key=[col0#3605399,grouping__id#3605398], 
> functions=[(sum(col1#3605333),mode=Partial,isDistinct=false),(sum(col2#3605334),mode=Partial,isDistinct=false),(avg(col3#3605335),mode=Partial,isDistinct=false),(sum(col4#3605336),mode=Partial,isDistinct=false),(sum(col5#3605337),mode=Partial,isDistinct=false),(sum(col22#3605354),mode=Partial,isDistinct=false),(sum(col23#3605355),mode=Partial,isDistinct=false),(sum(col7#3605339),mode=Partial,isDistinct=false),(sum(col8#3605340),mode=Partial,isDistinct=false),(sum(col9#3605341),mode=Partial,isDistinct=false),(sum(col10#3605342),mode=Partial,isDistinct=false),(sum(col11#3605343),mode=Partial,isDistinct=false),(sum(col24#3605356),mode=Partial,isDistinct=false),(sum(col25#3605357),mode=Partial,isDistinct=false),(sum(col27#3605359),mode=Partial,isDistinct=false),(sum(col29#3605361),mode=Partial,isDistinct=false),(sum(col31#3605363),mode=Partial,isDistinct=false),(sum(col21#3605353),mode=Partial,isDistinct=false)], 
> output=[col0#3605399,grouping__id#3605398,sum#3605468,sum#3605469,sum#3605470,count#3605471L,sum#3605472,sum#3605473,sum#3605474,sum#3605475,sum#3605476,sum#3605477,sum#3605478,sum#3605479,sum#3605480,sum#3605481,sum#3605482,sum#3605483,sum#3605484,sum#3605485,sum#3605486]) 
> +- Project 
> [col0#3605399,col25#3605357,col31#3605363,col7#3605339,col9#3605341,col10#3605342,col29#3605361,col23#3605355,col21#3605353,col8#3605340,col24#3605356,grouping__id#3605398,col3#3605335,col4#3605336,col27#3605359,col1#3605333,col5#3605337,col22#3605354,col2#3605334,col11#3605343] 
> +- Expand [ArrayBuffer(col0#3605332, col1#3605333, col2#3605334, 
> col3#3605335, col4#3605336, col5#3605337, col6#3605338, col7#3605339, 
> col8#3605340, col9#3605341, col10#3605342, col11#3605343, 
> col12#3605344, col13#3605345, col14#3605346, col15#3605347, 
> col16#3605348, col17#3605349, col18#3605350, col19#3605351, 
> col20#3605352, col21#3605353, col22#3605354, col23#3605355, 
> col24#3605356, col25#3605357, col26#3605358, col27#3605359, 
> col28#3605360, col29#3605361, col30#3605362, col31#3605363, 
> col32#3605364, col33#3605365, col34#3605366, col35#3605367, 
> col36#3605368, col37#3605369, col38#3605370, col39#3605371, 
> col40#3605372, col41#3605373, null, 0)], 
> [col0#3605332,col1#3605333,col2#3605334,col3#3605335,col4#3605336,col5#3605337,col6#3605338,col7#3605339,col8#3605340,col9#3605341,col10#3605342,col11#3605343,col12#3605344,col13#3605345,col14#3605346,col15#3605347,col16#3605348,col17#3605349,col18#3605350,col19#3605351,col20#3605352,col21#3605353,col22#3605354,col23#3605355,col24#3605356,col25#3605357,col26#3605358,col27#3605359,col28#3605360,col29#3605361,col30#3605362,col31#3605363,col32#3605364,col33#3605365,col34#3605366,col35#3605367,col36#3605368,col37#3605369,col38#3605370,col39#3605371,col40#3605372,col41#3605373,col0#3605399,grouping__id#3605398] 
> +- Project [col0#3604986 AS col0#3605332,col1#3604987 AS 
> col1#3605333,col2#3605081 AS col2#3605334,col3#3604989 AS 
> col3#3605335,col4#3604990 AS col4#3605336,col5#3604991 AS 
> col5#3605337,col6#3604992 AS col6#3605338,col7#3604993 AS 
> col7#3605339,col8#3604994 AS col8#3605340,col9#3605088 AS 
> col9#3605341,col10#3604996 AS col10#3605342,col11#3604997 AS 
> col11#3605343,col12#3604998 AS col12#3605344,col13#3604999 AS 
> col13#3605345,col14#3605000 AS col14#3605346,col15#3605001 AS 
> col15#3605347,col16#3605002 AS col16#3605348,col17#3605003 AS 
> col17#3605349,col18#3605004 AS col18#3605350,col19#3605005 AS 
> col19#3605351,col20#3605006 AS col20#3605352,col21#3605100 AS 
> col21#3605353,col22#3605008 AS col22#3605354,col23#3605009 AS 
> col23#3605355,col24#3605010 AS col24#3605356,col25#3605011 AS 
> col25#3605357,col26#3605012 AS col26#3605358,col27#3605013 AS 
> col27#3605359,col28#3605014 AS col28#3605360,col29#3605015 AS 
> col29#3605361,col30#3605016 AS col30#3605362,col31#3605017 AS 
> col31#3605363,col32#3605018 AS col32#3605364,col33#3605019 AS 
> col33#3605365,col34#3605020 AS col34#3605366,col35#3605021 AS 
> col35#3605367,col36#3605022 AS col36#3605368,col37#3605023 AS 
> col37#3605369,col38#3605024 AS col38#3605370,col39#3605025 AS 
> col39#3605371,col40#3605026 AS col40#3605372,col41#3605027 AS 
> col41#3605373,col0#3604986 AS col0#3605399] +- SortMergeOuterJoin [if 
> (isnull(col0#3604986)) else col0#3604986], [if (isnull(col0#3605079)) 
> else col0#3605079], LeftOuter, None :- Sort [if (isnull(col0#3604986)) 
> else col0#3604986 ASC], false, 0 : +- TungstenExchange 
> hashpartitioning(if (isnull(col0#3604986)) else col0#3604986,114), 
> None : +- Project [col6#3604567 AS col6#3604992,col0#3604561 AS 
> col0#3604986,col16#3604577 AS col16#3605002,col35#3604596 AS 
> col35#3605021,col32#3604593 AS col32#3605018,col8#3604569 AS 
> col8#3604994,col17#3604578 AS col17#3605003,col4#3604779 AS 
> col3#3604989,col41#3604602 AS col41#3605027,col22#3604583 AS 
> col22#3605008,col30#3604591 AS col30#3605016,col12#3604573 AS 
> col12#3604998,col29#3604590 AS col29#3605015,col34#3604595 AS 
> col34#3605020,col31#3604592 AS col31#3605017,col26#3604587 AS 
> col26#3605012,col28#3604589 AS col28#3605014,col7#3604568 AS 
> col7#3604993,col39#3604600 AS col39#3605025,col36#3604597 AS 
> col36#3605022,col15#3604576 AS col15#3605001,col33#3604594 AS 
> col33#3605019,col1#3604562 AS col1#3604987,col13#3604574 AS 
> col13#3604999,col11#3604572 AS col11#3604997,col10#3604571 AS 
> col10#3604996,col20#3604581 AS col20#3605006,col38#3604599 AS 
> col38#3605024,col18#3604579 AS col18#3605004,col24#3604585 AS 
> col24#3605010,col19#3604580 AS col19#3605005,col37#3604598 AS 
> col37#3605023,col14#3604575 AS col14#3605000,col27#3604588 AS 
> col27#3605013,col5#3604566 AS col5#3604991,col4#3604565 AS 
> col4#3604990,col25#3604586 AS col25#3605011,col23#3604584 AS 
> col23#3605009,col40#3604601 AS col40#3605026] : +- Filter 
> ((((((((((((((((((((isnotnull(col1#3604562) || 
> isnotnull(col2#3604563)) || isnotnull(col4#3604779)) || 
> isnotnull(col4#3604565)) || isnotnull(col5#3604566)) || 
> isnotnull(col6#3604567)) || isnotnull(col7#3604568)) || 
> isnotnull(col8#3604569)) || isnotnull(col9#3604570)) || 
> isnotnull(col10#3604571)) || isnotnull(col11#3604572)) || 
> isnotnull(col12#3604573)) || isnotnull(col13#3604574)) || 
> isnotnull(col14#3604575)) || isnotnull(col15#3604576)) || 
> isnotnull(col16#3604577)) || isnotnull(col17#3604578)) || 
> isnotnull(col18#3604579)) || isnotnull(col19#3604580)) || 
> isnotnull(col20#3604581)) || isnotnull(col21#3604582)) : +- 
> SortMergeOuterJoin [if (isnull(col0#3604561)) else col0#3604561], [if 
> (isnull(col1#3604776)) else col1#3604776], LeftOuter, None : :- Sort 
> [if (isnull(col0#3604561)) else col0#3604561 ASC], false, 0 : : +- 
> TungstenExchange hashpartitioning(if (isnull(col0#3604561)) else 
> col0#3604561,114), None : : +- Project [col0#3604519 AS 
> col0#3604561,col1#3604520 AS col1#3604562,col2#3604521 AS 
> col2#3604563,col3#3604522 AS col3#3604564,col4#3604523 AS 
> col4#3604565,col5#3604524 AS col5#3604566,col6#3604525 AS 
> col6#3604567,col7#3604526 AS col7#3604568,col8#3604527 AS 
> col8#3604569,col9#3604528 AS col9#3604570,col10#3604529 AS 
> col10#3604571,col11#3604530 AS col11#3604572,col12#3604531 AS 
> col12#3604573,col13#3604532 AS col13#3604574,col14#3604533 AS 
> col14#3604575,col15#3604534 AS col15#3604576,col16#3604535 AS 
> col16#3604577,col17#3604536 AS col17#3604578,col18#3604537 AS 
> col18#3604579,col19#3604538 AS col19#3604580,col20#3604539 AS 
> col20#3604581,col21#3604540 AS col21#3604582,col22#3604541 AS 
> col22#3604583,col23#3604542 AS col23#3604584,col24#3604543 AS 
> col24#3604585,col25#3604544 AS col25#3604586,col26#3604545 AS 
> col26#3604587,col27#3604546 AS col27#3604588,col28#3604547 AS 
> col28#3604589,col29#3604548 AS col29#3604590,col30#3604549 AS 
> col30#3604591,col31#3604550 AS col31#3604592,col32#3604551 AS 
> col32#3604593,col33#3604552 AS col33#3604594,col34#3604553 AS 
> col34#3604595,col35#3604554 AS col35#3604596,col36#3604555 AS 
> col36#3604597,col37#3604556 AS col37#3604598,col38#3604557 AS 
> col38#3604599,col39#3604558 AS col39#3604600,col40#3604559 AS 
> col40#3604601,col41#3604560 AS col41#3604602] : : +- 
> TungstenAggregate(key=[fkc3802436#3604322], 
> functions=[(sum(cast(fka9b7b4ee#3604332 as 
> double)),mode=Final,isDistinct=false),(sum(cast(fk6938b0f1#3604330 as 
> double)),mode=Final,isDistinct=false),(sum(cast(fk9768a0c6#3604331 as 
> double)),mode=Final,isDistinct=false),(sum(cast(fk5b784c3d#3604350 as 
> double)),mode=Final,isDistinct=false),(sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Final,isDistinct=false),(sum(cast(fk983801f0#3604356 as 
> double)),mode=Final,isDistinct=false),(sum(cast(fke9adbd11#3604357 as 
> double)),mode=Final,isDistinct=false),(sum(cast(fk644dd14e#3604333 as 
> double)),mode=Final,isDistinct=false)], 
> output=[col0#3604519,col1#3604520,col2#3604521,col3#3604522,col4#3604523,col5#3604524,col6#3604525,col7#3604526,col8#3604527,col9#3604528,col10#3604529,col11#3604530,col12#3604531,col13#3604532,col14#3604533,col15#3604534,col16#3604535,col17#3604536,col18#3604537,col19#3604538,col20#3604539,col21#3604540,col22#3604541,col23#3604542,col24#3604543,col25#3604544,col26#3604545,col27#3604546,col28#3604547,col29#3604548,col30#3604549,col31#3604550,col32#3604551,col33#3604552,col34#3604553,col35#3604554,col36#3604555,col37#3604556,col38#3604557,col39#3604558,col40#3604559,col41#3604560]) 
> : : +- TungstenExchange hashpartitioning(fkc3802436#3604322,114), None 
> : : +- TungstenAggregate(key=[fkc3802436#3604322], 
> functions=[(sum(cast(fka9b7b4ee#3604332 as 
> double)),mode=Partial,isDistinct=false),(sum(cast(fk6938b0f1#3604330 
> as 
> double)),mode=Partial,isDistinct=false),(sum(cast(fk9768a0c6#3604331 
> as 
> double)),mode=Partial,isDistinct=false),(sum(cast(fk5b784c3d#3604350 
> as 
> double)),mode=Partial,isDistinct=false),(sum(cast(fk2afad0bc#3604349 
> as 
> double)),mode=Partial,isDistinct=false),(sum(cast(fk983801f0#3604356 
> as 
> double)),mode=Partial,isDistinct=false),(sum(cast(fke9adbd11#3604357 
> as 
> double)),mode=Partial,isDistinct=false),(sum(cast(fk644dd14e#3604333 
> as double)),mode=Partial,isDistinct=false)], 
> output=[fkc3802436#3604322,sum#3605267,sum#3605268,sum#3605269,sum#3605270,sum#3605271,sum#3605272,sum#3605273,sum#3605274]) 
> : : +- Project 
> [fk5b784c3d#3604350,fk983801f0#3604356,fke9adbd11#3604357,fk6938b0f1#3604330,fk9768a0c6#3604331,fk2afad0bc#3604349,fkc3802436#3604322,fk644dd14e#3604333,fka9b7b4ee#3604332] 
> : : +- Filter (((fke1ef2a3d#3604321 = 东吴) && (2017-02-01 00:00:00 <= 
> fkb804c35c#3604315)) && (fkb804c35c#3604315 <= 2017-02-21 23:59:59)) : 
> : +- Scan ParquetRelation: 
> stan.726cbefe72d042efacfe27eefed5a4ef[fk5b784c3d#3604350,fk983801f0#3604356,fke9adbd11#3604357,fk6938b0f1#3604330,fkb804c35c#3604315,fke1ef2a3d#3604321,fk9768a0c6#3604331,fk2afad0bc#3604349,fkc3802436#3604322,fk644dd14e#3604333,fka9b7b4ee#3604332] 
> InputPaths: 
> hdfs://hdcluster/user/hive/warehouse/stan.db/726cbefe72d042efacfe27eefed5a4ef, 
> PushedFilters: [EqualTo(fke1ef2a3d,东吴), 
> GreaterThanOrEqual(fkb804c35c,2017-02-01 00:00:00), 
> LessThanOrEqual(fkb804c35c,2017-02-21 23:59:59)] : +- Sort [if 
> (isnull(col1#3604776)) else col1#3604776 ASC], false, 0 : +- 
> TungstenExchange hashpartitioning(if (isnull(col1#3604776)) else 
> col1#3604776,114), None : +- Project [col0#3604646 AS 
> col0#3604775,col1#3604647 AS col1#3604776,col2#3604648 AS 
> col2#3604777,col3#3604649 AS 
> col3#3604778,HiveSimpleUDF#site.stanzhai.udf.UDFNumCmp(col4#3604650,col4#3604693,1) 
> AS col4#3604779,col5#3604651 AS col5#3604780,col6#3604652 AS 
> col6#3604781,col7#3604653 AS col7#3604782,col8#3604654 AS 
> col8#3604783,col9#3604655 AS col9#3604784,col10#3604656 AS 
> col10#3604785,col11#3604657 AS col11#3604786,col12#3604658 AS 
> col12#3604787,col13#3604659 AS col13#3604788,col14#3604660 AS 
> col14#3604789,col15#3604661 AS col15#3604790,col16#3604662 AS 
> col16#3604791,col17#3604663 AS col17#3604792,col18#3604664 AS 
> col18#3604793,col19#3604665 AS col19#3604794,col20#3604666 AS 
> col20#3604795,col21#3604667 AS col21#3604796,col22#3604668 AS 
> col22#3604797,col23#3604669 AS col23#3604798,col24#3604670 AS 
> col24#3604799,col25#3604671 AS col25#3604800,col26#3604672 AS 
> col26#3604801,col27#3604673 AS col27#3604802,col28#3604674 AS 
> col28#3604803,col29#3604675 AS col29#3604804,col30#3604676 AS 
> col30#3604805,col31#3604677 AS col31#3604806,col32#3604678 AS 
> col32#3604807,col33#3604679 AS col33#3604808,col34#3604680 AS 
> col34#3604809,col35#3604681 AS col35#3604810,col36#3604682 AS 
> col36#3604811,col37#3604683 AS col37#3604812,col38#3604684 AS 
> col38#3604813,col39#3604685 AS col39#3604814,col40#3604686 AS 
> col40#3604815,col41#3604687 AS col41#3604816,col42#3604688 AS 
> col42#3604817] : +- SortMergeOuterJoin [col0#3604646,if 
> (isnull(col1#3604647)) else col1#3604647,col0#3604646], [2017-02-21 
> 00:00:00,if (isnull(col1#3604690)) else 
> col1#3604690,HiveSimpleUDF#site.stanzhai.udf.UDFGetNext(col0#3604689,day,day,1)], 
> LeftOuter, None : :- Sort [col0#3604646 ASC,if (isnull(col1#3604647)) 
> else col1#3604647 ASC,col0#3604646 ASC], false, 0 : : +- 
> TungstenExchange hashpartitioning(col0#3604646,if 
> (isnull(col1#3604647)) else col1#3604647,col0#3604646,114), None : : 
> +- Project [col0#3604603 AS col0#3604646,col1#3604604 AS 
> col1#3604647,col2#3604605 AS col2#3604648,col3#3604606 AS 
> col3#3604649,col4#3604607 AS col4#3604650,col5#3604608 AS 
> col5#3604651,col6#3604609 AS col6#3604652,col7#3604610 AS 
> col7#3604653,col8#3604611 AS col8#3604654,col9#3604612 AS 
> col9#3604655,col10#3604613 AS col10#3604656,col11#3604614 AS 
> col11#3604657,col12#3604615 AS col12#3604658,col13#3604616 AS 
> col13#3604659,col14#3604617 AS col14#3604660,col15#3604618 AS 
> col15#3604661,col16#3604619 AS col16#3604662,col17#3604620 AS 
> col17#3604663,col18#3604621 AS col18#3604664,col19#3604622 AS 
> col19#3604665,col20#3604623 AS col20#3604666,col21#3604624 AS 
> col21#3604667,col22#3604625 AS col22#3604668,col23#3604626 AS 
> col23#3604669,col24#3604627 AS col24#3604670,col25#3604628 AS 
> col25#3604671,col26#3604629 AS col26#3604672,col27#3604630 AS 
> col27#3604673,col28#3604631 AS col28#3604674,col29#3604632 AS 
> col29#3604675,col30#3604633 AS col30#3604676,col31#3604634 AS 
> col31#3604677,col32#3604635 AS col32#3604678,col33#3604636 AS 
> col33#3604679,col34#3604637 AS col34#3604680,col35#3604638 AS 
> col35#3604681,col36#3604639 AS col36#3604682,col37#3604640 AS 
> col37#3604683,col38#3604641 AS col38#3604684,col39#3604642 AS 
> col39#3604685,col40#3604643 AS col40#3604686,col41#3604644 AS 
> col41#3604687,col42#3604645 AS col42#3604688] : : +- 
> TungstenAggregate(key=[fkc3802436#3604322,year(cast(fkb804c35c#3604315 
> as date))#3605434,month(cast(fkb804c35c#3604315 as 
> date))#3605435,dayofmonth(cast(fkb804c35c#3604315 as date))#3605436], 
> functions=[(sum(cast(fka9b7b4ee#3604332 as 
> double)),mode=Final,isDistinct=false),(sum(cast(fk6938b0f1#3604330 as 
> double)),mode=Final,isDistinct=false),(sum(cast(fk9768a0c6#3604331 as 
> double)),mode=Final,isDistinct=false),(sum(cast(fk5b784c3d#3604350 as 
> double)),mode=Final,isDistinct=false),(sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Final,isDistinct=false),(sum(cast(fk983801f0#3604356 as 
> double)),mode=Final,isDistinct=false),(sum(cast(fke9adbd11#3604357 as 
> double)),mode=Final,isDistinct=false),(sum(cast(fk644dd14e#3604333 as 
> double)),mode=Final,isDistinct=false)], 
> output=[col0#3604603,col1#3604604,col2#3604605,col3#3604606,col4#3604607,col5#3604608,col6#3604609,col7#3604610,col8#3604611,col9#3604612,col10#3604613,col11#3604614,col12#3604615,col13#3604616,col14#3604617,col15#3604618,col16#3604619,col17#3604620,col18#3604621,col19#3604622,col20#3604623,col21#3604624,col22#3604625,col23#3604626,col24#3604627,col25#3604628,col26#3604629,col27#3604630,col28#3604631,col29#3604632,col30#3604633,col31#3604634,col32#3604635,col33#3604636,col34#3604637,col35#3604638,col36#3604639,col37#3604640,col38#3604641,col39#3604642,col40#3604643,col41#3604644,col42#3604645]) 
> : : +- TungstenExchange 
> hashpartitioning(fkc3802436#3604322,year(cast(fkb804c35c#3604315 as 
> date))#3605434,month(cast(fkb804c35c#3604315 as 
> date))#3605435,dayofmonth(cast(fkb804c35c#3604315 as 
> date))#3605436,114), None : : +- 
> TungstenAggregate(key=[fkc3802436#3604322,year(cast(fkb804c35c#3604315 
> as date)) AS year(cast(fkb804c35c#3604315 as 
> date))#3605434,month(cast(fkb804c35c#3604315 as date)) AS 
> month(cast(fkb804c35c#3604315 as 
> date))#3605435,dayofmonth(cast(fkb804c35c#3604315 as date)) AS 
> dayofmonth(cast(fkb804c35c#3604315 as date))#3605436], 
> functions=[(sum(cast(fka9b7b4ee#3604332 as 
> double)),mode=Partial,isDistinct=false),(sum(cast(fk6938b0f1#3604330 
> as 
> double)),mode=Partial,isDistinct=false),(sum(cast(fk9768a0c6#3604331 
> as 
> double)),mode=Partial,isDistinct=false),(sum(cast(fk5b784c3d#3604350 
> as 
> double)),mode=Partial,isDistinct=false),(sum(cast(fk2afad0bc#3604349 
> as 
> double)),mode=Partial,isDistinct=false),(sum(cast(fk983801f0#3604356 
> as 
> double)),mode=Partial,isDistinct=false),(sum(cast(fke9adbd11#3604357 
> as 
> double)),mode=Partial,isDistinct=false),(sum(cast(fk644dd14e#3604333 
> as double)),mode=Partial,isDistinct=false)], 
> output=[fkc3802436#3604322,year(cast(fkb804c35c#3604315 as 
> date))#3605434,month(cast(fkb804c35c#3604315 as 
> date))#3605435,dayofmonth(cast(fkb804c35c#3604315 as 
> date))#3605436,sum#3605294,sum#3605295,sum#3605296,sum#3605297,sum#3605298,sum#3605299,sum#3605300,sum#3605301]) 
> : : +- Project 
> [fk5b784c3d#3604350,fk983801f0#3604356,fke9adbd11#3604357,fk6938b0f1#3604330,fkb804c35c#3604315,fk9768a0c6#3604331,fk2afad0bc#3604349,fkc3802436#3604322,fk644dd14e#3604333,fka9b7b4ee#3604332] 
> : : +- Filter ((if (((isnull(year(cast(fkb804c35c#3604315 as date))) 
> || isnull(month(cast(fkb804c35c#3604315 as date)))) || 
> isnull(dayofmonth(cast(fkb804c35c#3604315 as date))))) null else 
> UDF(year(cast(fkb804c35c#3604315 as 
> date)),month(cast(fkb804c35c#3604315 as 
> date)),dayofmonth(cast(fkb804c35c#3604315 as date))) = 2017-02-21 
> 00:00:00) && (fke1ef2a3d#3604321 = 东吴)) : : +- Scan ParquetRelation: 
> stan.726cbefe72d042efacfe27eefed5a4ef[fk5b784c3d#3604350,fk983801f0#3604356,fke9adbd11#3604357,fk6938b0f1#3604330,fkb804c35c#3604315,fke1ef2a3d#3604321,fk9768a0c6#3604331,fk2afad0bc#3604349,fkc3802436#3604322,fk644dd14e#3604333,fka9b7b4ee#3604332] 
> InputPaths: 
> hdfs://hdcluster/user/hive/warehouse/stan.db/726cbefe72d042efacfe27eefed5a4ef, 
> PushedFilters: [EqualTo(fke1ef2a3d,东吴)] : +- Sort [2017-02-21 00:00:00 
> ASC,if (isnull(col1#3604690)) else col1#3604690 
> ASC,HiveSimpleUDF#site.stanzhai.udf.UDFGetNext(col0#3604689,day,day,1) 
> ASC], false, 0 : +- TungstenExchange hashpartitioning(2017-02-21 
> 00:00:00,if (isnull(col1#3604690)) else 
> col1#3604690,HiveSimpleUDF#site.stanzhai.udf.UDFGetNext(col0#3604689,day,day,1),114), 
> None : +- Project [col1#3604604 AS col1#3604690,col4#3604607 AS 
> col4#3604693,col0#3604603 AS col0#3604689] : +- 
> TungstenAggregate(key=[fkc3802436#3604322,year(cast(fkb804c35c#3604315 
> as date))#3605438,month(cast(fkb804c35c#3604315 as 
> date))#3605439,dayofmonth(cast(fkb804c35c#3604315 as date))#3605440], 
> functions=[(sum(cast(fka9b7b4ee#3604332 as 
> double)),mode=Final,isDistinct=false)], 
> output=[col0#3604603,col1#3604604,col4#3604607]) : +- TungstenExchange 
> hashpartitioning(fkc3802436#3604322,year(cast(fkb804c35c#3604315 as 
> date))#3605438,month(cast(fkb804c35c#3604315 as 
> date))#3605439,dayofmonth(cast(fkb804c35c#3604315 as 
> date))#3605440,114), None : +- 
> TungstenAggregate(key=[fkc3802436#3604322,year(cast(fkb804c35c#3604315 
> as date)) AS year(cast(fkb804c35c#3604315 as 
> date))#3605438,month(cast(fkb804c35c#3604315 as date)) AS 
> month(cast(fkb804c35c#3604315 as 
> date))#3605439,dayofmonth(cast(fkb804c35c#3604315 as date)) AS 
> dayofmonth(cast(fkb804c35c#3604315 as date))#3605440], 
> functions=[(sum(cast(fka9b7b4ee#3604332 as 
> double)),mode=Partial,isDistinct=false)], 
> output=[fkc3802436#3604322,year(cast(fkb804c35c#3604315 as 
> date))#3605438,month(cast(fkb804c35c#3604315 as 
> date))#3605439,dayofmonth(cast(fkb804c35c#3604315 as 
> date))#3605440,sum#3605307]) : +- Project 
> [fkc3802436#3604322,fkb804c35c#3604315,fka9b7b4ee#3604332] : +- Filter 
> (fke1ef2a3d#3604321 = 东吴) : +- Scan ParquetRelation: 
> stan.726cbefe72d042efacfe27eefed5a4ef[fkc3802436#3604322,fkb804c35c#3604315,fka9b7b4ee#3604332,fke1ef2a3d#3604321] 
> InputPaths: 
> hdfs://hdcluster/user/hive/warehouse/stan.db/726cbefe72d042efacfe27eefed5a4ef, 
> PushedFilters: [EqualTo(fke1ef2a3d,东吴)] +- Sort [if 
> (isnull(col0#3605079)) else col0#3605079 ASC], false, 0 +- 
> TungstenExchange hashpartitioning(if (isnull(col0#3605079)) else 
> col0#3605079,114), None +- Project [(_w0#3605070 / _we0#3605076) AS 
> col2#3605081,(_w4#3605074 / _we2#3605078) AS 
> col21#3605100,col0#3605028 AS col0#3605079,(_w2#3605072 / 
> _we1#3605077) AS col9#3605088] +- Window 
> [col0#3605028,col1#3605029,col3#3605031,col4#3605032,col5#3605033,col6#3605034,col7#3605035,col8#3605036,col10#3605038,col11#3605039,col12#3605040,col13#3605041,col14#3605042,col15#3605043,col16#3605044,col17#3605045,col18#3605046,col19#3605047,col20#3605048,col22#3605050,col23#3605051,col24#3605052,col25#3605053,col26#3605054,col27#3605055,col28#3605056,col29#3605057,col30#3605058,col31#3605059,col32#3605060,col33#3605061,col34#3605062,col35#3605063,col36#3605064,col37#3605065,col38#3605066,col39#3605067,col40#3605068,col41#3605069,_w0#3605070,_w1#3605071,_w2#3605072,_w3#3605073,_w4#3605074,_w5#3605075], 
> [HiveWindowFunction#org.apache.hadoop.hive.ql.udf.generic.GenericUDAFSum(_w1#3605071) 
> windowspecdefinition(ROWS BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED 
> FOLLOWING) AS 
> _we0#3605076,HiveWindowFunction#org.apache.hadoop.hive.ql.udf.generic.GenericUDAFSum(_w3#3605073) 
> windowspecdefinition(ROWS BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED 
> FOLLOWING) AS 
> _we1#3605077,HiveWindowFunction#org.apache.hadoop.hive.ql.udf.generic.GenericUDAFSum(_w5#3605075) 
> windowspecdefinition(ROWS BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED 
> FOLLOWING) AS _we2#3605078] +- TungstenExchange SinglePartition, None 
> +- TungstenAggregate(key=[fkc3802436#3604322], 
> functions=[(sum(cast(fka9b7b4ee#3604332 as 
> double)),mode=Final,isDistinct=false),(sum(cast(fk6938b0f1#3604330 as 
> double)),mode=Final,isDistinct=false),(sum(cast(fk9768a0c6#3604331 as 
> double)),mode=Final,isDistinct=false),(sum(cast(fk5b784c3d#3604350 as 
> double)),mode=Final,isDistinct=false),(sum(cast(fk2afad0bc#3604349 as 
> double)),mode=Final,isDistinct=false),(sum(cast(fk983801f0#3604356 as 
> double)),mode=Final,isDistinct=false),(sum(cast(fke9adbd11#3604357 as 
> double)),mode=Final,isDistinct=false),(sum(cast(fk644dd14e#3604333 as 
> double)),mode=Final,isDistinct=false)], 
> output=[col0#3605028,col1#3605029,col3#3605031,col4#3605032,col5#3605033,col6#3605034,col7#3605035,col8#3605036,col10#3605038,col11#3605039,col12#3605040,col13#3605041,col14#3605042,col15#3605043,col16#3605044,col17#3605045,col18#3605046,col19#3605047,col20#3605048,col22#3605050,col23#3605051,col24#3605052,col25#3605053,col26#3605054,col27#3605055,col28#3605056,col29#3605057,col30#3605058,col31#3605059,col32#3605060,col33#3605061,col34#3605062,col35#3605063,col36#3605064,col37#3605065,col38#3605066,col39#3605067,col40#3605068,col41#3605069,_w0#3605070,_w1#3605071,_w2#3605072,_w3#3605073,_w4#3605074,_w5#3605075]) 
> +- TungstenExchange hashpartitioning(fkc3802436#3604322,114), None +- 
> TungstenAggregate(key=[fkc3802436#3604322], 
> functions=[(sum(cast(fka9b7b4ee#3604332 as 
> double)),mode=Partial,isDistinct=false),(sum(cast(fk6938b0f1#3604330 
> as 
> double)),mode=Partial,isDistinct=false),(sum(cast(fk9768a0c6#3604331 
> as 
> double)),mode=Partial,isDistinct=false),(sum(cast(fk5b784c3d#3604350 
> as 
> double)),mode=Partial,isDistinct=false),(sum(cast(fk2afad0bc#3604349 
> as 
> double)),mode=Partial,isDistinct=false),(sum(cast(fk983801f0#3604356 
> as 
> double)),mode=Partial,isDistinct=false),(sum(cast(fke9adbd11#3604357 
> as 
> double)),mode=Partial,isDistinct=false),(sum(cast(fk644dd14e#3604333 
> as double)),mode=Partial,isDistinct=false)], 
> output=[fkc3802436#3604322,sum#3605324,sum#3605325,sum#3605326,sum#3605327,sum#3605328,sum#3605329,sum#3605330,sum#3605331]) 
> +- Project 
> [fk5b784c3d#3604350,fk983801f0#3604356,fke9adbd11#3604357,fk6938b0f1#3604330,fk9768a0c6#3604331,fk2afad0bc#3604349,fkc3802436#3604322,fk644dd14e#3604333,fka9b7b4ee#3604332] 
> +- Filter (((fke1ef2a3d#3604321 = 东吴) && (2017-02-01 00:00:00 <= 
> fkb804c35c#3604315)) && (fkb804c35c#3604315 <= 2017-02-21 23:59:59)) 
> +- Scan ParquetRelation: 
> stan.726cbefe72d042efacfe27eefed5a4ef[fk5b784c3d#3604350,fk983801f0#3604356,fke9adbd11#3604357,fk6938b0f1#3604330,fkb804c35c#3604315,fke1ef2a3d#3604321,fk9768a0c6#3604331,fk2afad0bc#3604349,fkc3802436#3604322,fk644dd14e#3604333,fka9b7b4ee#3604332] 
> InputPaths: 
> hdfs://hdcluster/user/hive/warehouse/stan.db/726cbefe72d042efacfe27eefed5a4ef, 
> PushedFilters: [EqualTo(fke1ef2a3d,东吴), 
> GreaterThanOrEqual(fkb804c35c,2017-02-01 00:00:00), 
> LessThanOrEqual(fkb804c35c,2017-02-21 23:59:59)] |
> ||
>
> ------------------ Original ------------------
> *Subject: * Re: The driver hangs at DataFrame.rdd in Spark 2.1.0
>
> What is the query plan? We had once observed query plans that grow 
> exponentially in iterative ML workloads and the query planner hangs 
> forever. For example, each iteration combines 4 plan trees of the last 
> iteration and forms a larger plan tree. The size of the plan tree can 
> easily reach billions of nodes after 15 iterations.
>
>
> On 2/22/17 9:29 AM, Stan Zhai wrote:
>> Hi all,
>>
>> The driver hangs at DataFrame.rdd in Spark 2.1.0 when the 
>> DataFrame(SQL) is complex, Following thread dump of my driver:
>> ...
>