| write [%0->$$48, %0->$$49] |
| -- SINK_WRITE |PARTITIONED| |
| project ([$$48, $$49]) |
| -- STREAM_PROJECT |PARTITIONED| |
| exchange |
| -- SORT_MERGE_EXCHANGE [$$49(DESC) ] |PARTITIONED| |
| order (DESC, %0->$$49) |
| -- STABLE_SORT [$$49(DESC)] |LOCAL| |
| exchange |
| -- ONE_TO_ONE_EXCHANGE |PARTITIONED| |
| group by ([$$48 := %0->$$52]) decor ([]) { |
| aggregate [$$49] <- [function-call: hive:sum(FINAL), Args:[%0->$$51]] |
| -- AGGREGATE |LOCAL| |
| nested tuple source |
| -- NESTED_TUPLE_SOURCE |LOCAL| |
| } |
| -- EXTERNAL_GROUP_BY[$$52] |PARTITIONED| |
| exchange |
| -- HASH_PARTITION_EXCHANGE [$$52] |PARTITIONED| |
| group by ([$$52 := %0->$$42]) decor ([]) { |
| aggregate [$$51] <- [function-call: hive:sum(PARTIAL1), Args:[function-call: hive:org.apache.hadoop.hive.ql.udf.UDFOPMultiply, Args:[%0->$$23, function-call: hive:org.apache.hadoop.hive.ql.udf.UDFOPMinus, Args:[1, %0->$$24]]]] |
| -- AGGREGATE |LOCAL| |
| nested tuple source |
| -- NESTED_TUPLE_SOURCE |LOCAL| |
| } |
| -- EXTERNAL_GROUP_BY[$$42] |LOCAL| |
| exchange |
| -- ONE_TO_ONE_EXCHANGE |PARTITIONED| |
| project ([$$42, $$23, $$24]) |
| -- STREAM_PROJECT |PARTITIONED| |
| exchange |
| -- ONE_TO_ONE_EXCHANGE |PARTITIONED| |
| join (function-call: algebricks:and, Args:[function-call: algebricks:eq, Args:[%0->$$37, %0->$$4], function-call: algebricks:eq, Args:[%0->$$10, %0->$$1]]) |
| -- HYBRID_HASH_JOIN [$$37, $$10][$$4, $$1] |PARTITIONED| |
| exchange |
| -- HASH_PARTITION_EXCHANGE [$$37, $$10] |PARTITIONED| |
| project ([$$10, $$42, $$23, $$24, $$37]) |
| -- STREAM_PROJECT |PARTITIONED| |
| exchange |
| -- ONE_TO_ONE_EXCHANGE |PARTITIONED| |
| join (function-call: algebricks:eq, Args:[%0->$$18, %0->$$9]) |
| -- HYBRID_HASH_JOIN [$$18][$$9] |PARTITIONED| |
| exchange |
| -- HASH_PARTITION_EXCHANGE [$$18] |PARTITIONED| |
| project ([$$18, $$23, $$24, $$42, $$37]) |
| -- STREAM_PROJECT |PARTITIONED| |
| exchange |
| -- ONE_TO_ONE_EXCHANGE |PARTITIONED| |
| join (function-call: algebricks:eq, Args:[%0->$$34, %0->$$20]) |
| -- HYBRID_HASH_JOIN [$$34][$$20] |PARTITIONED| |
| exchange |
| -- HASH_PARTITION_EXCHANGE [$$34] |PARTITIONED| |
| project ([$$34, $$37, $$42]) |
| -- STREAM_PROJECT |PARTITIONED| |
| exchange |
| -- ONE_TO_ONE_EXCHANGE |PARTITIONED| |
| join (function-call: algebricks:eq, Args:[%0->$$41, %0->$$37]) |
| -- HYBRID_HASH_JOIN [$$41][$$37] |PARTITIONED| |
| exchange |
| -- HASH_PARTITION_EXCHANGE [$$41] |PARTITIONED| |
| project ([$$41, $$42]) |
| -- STREAM_PROJECT |PARTITIONED| |
| exchange |
| -- ONE_TO_ONE_EXCHANGE |PARTITIONED| |
| join (function-call: algebricks:eq, Args:[%0->$$45, %0->$$43]) |
| -- HYBRID_HASH_JOIN [$$45][$$43] |PARTITIONED| |
| exchange |
| -- HASH_PARTITION_EXCHANGE [$$45] |PARTITIONED| |
| project ([$$45]) |
| -- STREAM_PROJECT |PARTITIONED| |
| select (function-call: algebricks:eq, Args:[%0->$$46, ASIA]) |
| -- STREAM_SELECT |PARTITIONED| |
| exchange |
| -- ONE_TO_ONE_EXCHANGE |PARTITIONED| |
| data-scan [$$46, $$45]<-[$$45, $$46, $$47] <- default.region |
| -- DATASOURCE_SCAN |PARTITIONED| |
| exchange |
| -- ONE_TO_ONE_EXCHANGE |PARTITIONED| |
| empty-tuple-source |
| -- EMPTY_TUPLE_SOURCE |PARTITIONED| |
| exchange |
| -- HASH_PARTITION_EXCHANGE [$$43] |PARTITIONED| |
| data-scan [$$43, $$41, $$42]<-[$$41, $$42, $$43, $$44] <- default.nation |
| -- DATASOURCE_SCAN |PARTITIONED| |
| exchange |
| -- ONE_TO_ONE_EXCHANGE |PARTITIONED| |
| empty-tuple-source |
| -- EMPTY_TUPLE_SOURCE |PARTITIONED| |
| exchange |
| -- HASH_PARTITION_EXCHANGE [$$37] |PARTITIONED| |
| data-scan [$$37, $$34]<-[$$34, $$35, $$36, $$37, $$38, $$39, $$40] <- default.supplier |
| -- DATASOURCE_SCAN |PARTITIONED| |
| exchange |
| -- ONE_TO_ONE_EXCHANGE |PARTITIONED| |
| empty-tuple-source |
| -- EMPTY_TUPLE_SOURCE |PARTITIONED| |
| exchange |
| -- HASH_PARTITION_EXCHANGE [$$20] |PARTITIONED| |
| data-scan [$$20, $$18, $$23, $$24]<-[$$18, $$19, $$20, $$21, $$22, $$23, $$24, $$25, $$26, $$27, $$28, $$29, $$30, $$31, $$32, $$33] <- default.lineitem |
| -- DATASOURCE_SCAN |PARTITIONED| |
| exchange |
| -- ONE_TO_ONE_EXCHANGE |PARTITIONED| |
| empty-tuple-source |
| -- EMPTY_TUPLE_SOURCE |PARTITIONED| |
| exchange |
| -- HASH_PARTITION_EXCHANGE [$$9] |PARTITIONED| |
| project ([$$9, $$10]) |
| -- STREAM_PROJECT |PARTITIONED| |
| select (function-call: algebricks:and, Args:[function-call: algebricks:lt, Args:[%0->$$13, 1995-01-01], function-call: algebricks:ge, Args:[%0->$$13, 1994-01-01], function-call: algebricks:lt, Args:[%0->$$13, 1995-01-01]]) |
| -- STREAM_SELECT |PARTITIONED| |
| exchange |
| -- ONE_TO_ONE_EXCHANGE |PARTITIONED| |
| data-scan [$$9, $$10, $$13]<-[$$9, $$10, $$11, $$12, $$13, $$14, $$15, $$16, $$17] <- default.orders |
| -- DATASOURCE_SCAN |PARTITIONED| |
| exchange |
| -- ONE_TO_ONE_EXCHANGE |PARTITIONED| |
| empty-tuple-source |
| -- EMPTY_TUPLE_SOURCE |PARTITIONED| |
| exchange |
| -- HASH_PARTITION_EXCHANGE [$$4, $$1] |PARTITIONED| |
| data-scan [$$4, $$1]<-[$$1, $$2, $$3, $$4, $$5, $$6, $$7, $$8] <- default.customer |
| -- DATASOURCE_SCAN |PARTITIONED| |
| exchange |
| -- ONE_TO_ONE_EXCHANGE |PARTITIONED| |
| empty-tuple-source |
| -- EMPTY_TUPLE_SOURCE |PARTITIONED| |