| write [%0->$$17, %0->$$18] |
| -- SINK_WRITE |PARTITIONED| |
| project ([$$17, $$18]) |
| -- STREAM_PROJECT |PARTITIONED| |
| exchange |
| -- ONE_TO_ONE_EXCHANGE |PARTITIONED| |
| group by ([$$17 := %0->$$21]) decor ([]) { |
| aggregate [$$18] <- [function-call: hive:sum(FINAL), Args:[%0->$$20]] |
| -- AGGREGATE |LOCAL| |
| nested tuple source |
| -- NESTED_TUPLE_SOURCE |LOCAL| |
| } |
| -- EXTERNAL_GROUP_BY[$$21] |PARTITIONED| |
| exchange |
| -- HASH_PARTITION_EXCHANGE [$$21] |PARTITIONED| |
| group by ([$$21 := %0->$$3]) decor ([]) { |
| aggregate [$$20] <- [function-call: hive:sum(PARTIAL1), Args:[function-call: hive:org.apache.hadoop.hive.ql.udf.UDFOPMultiply, Args:[%0->$$6, function-call: hive:org.apache.hadoop.hive.ql.udf.UDFOPMinus, Args:[1, %0->$$7]]]] |
| -- AGGREGATE |LOCAL| |
| nested tuple source |
| -- NESTED_TUPLE_SOURCE |LOCAL| |
| } |
| -- EXTERNAL_GROUP_BY[$$3] |LOCAL| |
| exchange |
| -- ONE_TO_ONE_EXCHANGE |PARTITIONED| |
| project ([$$3, $$6, $$7]) |
| -- STREAM_PROJECT |PARTITIONED| |
| select (function-call: algebricks:and, Args:[function-call: algebricks:ge, Args:[%0->$$11, 1996-01-01], function-call: algebricks:lt, Args:[%0->$$11, 1996-04-01], function-call: algebricks:ge, Args:[%0->$$11, 1996-01-01], function-call: algebricks:lt, Args:[%0->$$11, 1996-04-01]]) |
| -- STREAM_SELECT |PARTITIONED| |
| exchange |
| -- ONE_TO_ONE_EXCHANGE |PARTITIONED| |
| data-scan [$$3, $$6, $$7, $$11]<-[$$1, $$2, $$3, $$4, $$5, $$6, $$7, $$8, $$9, $$10, $$11, $$12, $$13, $$14, $$15, $$16] <- default.lineitem |
| -- DATASOURCE_SCAN |PARTITIONED| |
| exchange |
| -- ONE_TO_ONE_EXCHANGE |PARTITIONED| |
| empty-tuple-source |
| -- EMPTY_TUPLE_SOURCE |PARTITIONED| |
| write [%0->$$3] |
| -- SINK_WRITE |PARTITIONED| |
| exchange |
| -- ONE_TO_ONE_EXCHANGE |PARTITIONED| |
| group by ([]) decor ([]) { |
| aggregate [$$3] <- [function-call: hive:max(FINAL), Args:[%0->$$5]] |
| -- AGGREGATE |LOCAL| |
| nested tuple source |
| -- NESTED_TUPLE_SOURCE |LOCAL| |
| } |
| -- PRE_CLUSTERED_GROUP_BY[] |PARTITIONED| |
| exchange |
| -- HASH_PARTITION_EXCHANGE [] |PARTITIONED| |
| group by ([]) decor ([]) { |
| aggregate [$$5] <- [function-call: hive:max(PARTIAL1), Args:[%0->$$2]] |
| -- AGGREGATE |LOCAL| |
| nested tuple source |
| -- NESTED_TUPLE_SOURCE |LOCAL| |
| } |
| -- PRE_CLUSTERED_GROUP_BY[] |LOCAL| |
| exchange |
| -- ONE_TO_ONE_EXCHANGE |PARTITIONED| |
| data-scan [$$2]<-[$$1, $$2] <- default.revenue |
| -- DATASOURCE_SCAN |PARTITIONED| |
| exchange |
| -- ONE_TO_ONE_EXCHANGE |PARTITIONED| |
| empty-tuple-source |
| -- EMPTY_TUPLE_SOURCE |PARTITIONED| |
| write [%0->$$2, %0->$$3, %0->$$4, %0->$$6, %0->$$10] |
| -- SINK_WRITE |PARTITIONED| |
| exchange |
| -- SORT_MERGE_EXCHANGE [$$2(ASC) ] |PARTITIONED| |
| order (ASC, %0->$$2) |
| -- STABLE_SORT [$$2(ASC)] |LOCAL| |
| exchange |
| -- ONE_TO_ONE_EXCHANGE |PARTITIONED| |
| project ([$$2, $$3, $$4, $$6, $$10]) |
| -- STREAM_PROJECT |PARTITIONED| |
| exchange |
| -- ONE_TO_ONE_EXCHANGE |PARTITIONED| |
| join (function-call: algebricks:eq, Args:[%0->$$1, %0->$$10]) |
| -- HYBRID_HASH_JOIN [$$1][$$10] |PARTITIONED| |
| exchange |
| -- HASH_PARTITION_EXCHANGE [$$1] |PARTITIONED| |
| data-scan []<-[$$1] <- default.max_revenue |
| -- DATASOURCE_SCAN |PARTITIONED| |
| exchange |
| -- ONE_TO_ONE_EXCHANGE |PARTITIONED| |
| empty-tuple-source |
| -- EMPTY_TUPLE_SOURCE |PARTITIONED| |
| exchange |
| -- HASH_PARTITION_EXCHANGE [$$10] |PARTITIONED| |
| project ([$$10, $$2, $$3, $$4, $$6]) |
| -- STREAM_PROJECT |PARTITIONED| |
| exchange |
| -- ONE_TO_ONE_EXCHANGE |PARTITIONED| |
| join (function-call: algebricks:eq, Args:[%0->$$9, %0->$$2]) |
| -- HYBRID_HASH_JOIN [$$9][$$2] |PARTITIONED| |
| exchange |
| -- HASH_PARTITION_EXCHANGE [$$9] |PARTITIONED| |
| data-scan []<-[$$9, $$10] <- default.revenue |
| -- DATASOURCE_SCAN |PARTITIONED| |
| exchange |
| -- ONE_TO_ONE_EXCHANGE |PARTITIONED| |
| empty-tuple-source |
| -- EMPTY_TUPLE_SOURCE |PARTITIONED| |
| exchange |
| -- HASH_PARTITION_EXCHANGE [$$2] |PARTITIONED| |
| data-scan [$$2, $$3, $$4, $$6]<-[$$2, $$3, $$4, $$5, $$6, $$7, $$8] <- default.supplier |
| -- DATASOURCE_SCAN |PARTITIONED| |
| exchange |
| -- ONE_TO_ONE_EXCHANGE |PARTITIONED| |
| empty-tuple-source |
| -- EMPTY_TUPLE_SOURCE |PARTITIONED| |