| write [%0->$$26, %0->$$29, %0->$$30] |
| -- SINK_WRITE |PARTITIONED| |
| project ([$$26, $$29, $$30]) |
| -- STREAM_PROJECT |PARTITIONED| |
| assign [$$29, $$30] <- [function-call: hive:org.apache.hadoop.hive.ql.udf.UDFToDouble, Args:[%0->$$27], function-call: hive:org.apache.hadoop.hive.ql.udf.UDFToDouble, Args:[%0->$$28]] |
| -- ASSIGN |PARTITIONED| |
| exchange |
| -- SORT_MERGE_EXCHANGE [$$26(ASC) ] |PARTITIONED| |
| order (ASC, %0->$$26) |
| -- STABLE_SORT [$$26(ASC)] |LOCAL| |
| exchange |
| -- ONE_TO_ONE_EXCHANGE |PARTITIONED| |
| group by ([$$26 := %0->$$34]) decor ([]) { |
| aggregate [$$27, $$28] <- [function-call: hive:sum(FINAL), Args:[%0->$$32], function-call: hive:sum(FINAL), Args:[%0->$$33]] |
| -- AGGREGATE |LOCAL| |
| nested tuple source |
| -- NESTED_TUPLE_SOURCE |LOCAL| |
| } |
| -- EXTERNAL_GROUP_BY[$$34] |PARTITIONED| |
| exchange |
| -- HASH_PARTITION_EXCHANGE [$$34] |PARTITIONED| |
| group by ([$$34 := %0->$$24]) decor ([]) { |
| aggregate [$$32, $$33] <- [function-call: hive:sum(PARTIAL1), Args:[function-call: hive:org.apache.hadoop.hive.ql.udf.generic.GenericUDFWhen, Args:[function-call: algebricks:or, Args:[function-call: algebricks:eq, Args:[%0->$$6, 1-URGENT], function-call: algebricks:eq, Args:[%0->$$6, 2-HIGH]], 1, 0]], function-call: hive:sum(PARTIAL1), Args:[function-call: hive:org.apache.hadoop.hive.ql.udf.generic.GenericUDFWhen, Args:[function-call: algebricks:and, Args:[function-call: algebricks:neq, Args:[%0->$$6, 1-URGENT], function-call: algebricks:neq, Args:[%0->$$6, 2-HIGH]], 1, 0]]] |
| -- AGGREGATE |LOCAL| |
| nested tuple source |
| -- NESTED_TUPLE_SOURCE |LOCAL| |
| } |
| -- EXTERNAL_GROUP_BY[$$24] |LOCAL| |
| exchange |
| -- ONE_TO_ONE_EXCHANGE |PARTITIONED| |
| project ([$$6, $$24]) |
| -- STREAM_PROJECT |PARTITIONED| |
| exchange |
| -- ONE_TO_ONE_EXCHANGE |PARTITIONED| |
| join (function-call: algebricks:eq, Args:[%0->$$10, %0->$$1]) |
| -- HYBRID_HASH_JOIN [$$10][$$1] |PARTITIONED| |
| exchange |
| -- HASH_PARTITION_EXCHANGE [$$10] |PARTITIONED| |
| project ([$$10, $$24]) |
| -- STREAM_PROJECT |PARTITIONED| |
| select (function-call: algebricks:and, Args:[function-call: algebricks:lt, Args:[%0->$$22, 1995-01-01], function-call: algebricks:ge, Args:[%0->$$22, 1994-01-01], function-call: algebricks:lt, Args:[%0->$$20, %0->$$21], function-call: algebricks:lt, Args:[%0->$$21, %0->$$22], function-call: algebricks:lt, Args:[%0->$$20, %0->$$21], function-call: algebricks:ge, Args:[%0->$$22, 1994-01-01], function-call: algebricks:lt, Args:[%0->$$22, 1995-01-01], function-call: algebricks:or, Args:[function-call: algebricks:eq, Args:[%0->$$24, MAIL], function-call: algebricks:eq, Args:[%0->$$24, SHIP]], function-call: algebricks:or, Args:[function-call: algebricks:eq, Args:[%0->$$24, MAIL], function-call: algebricks:eq, Args:[%0->$$24, SHIP]]]) |
| -- STREAM_SELECT |PARTITIONED| |
| exchange |
| -- ONE_TO_ONE_EXCHANGE |PARTITIONED| |
| data-scan [$$21, $$20, $$22, $$24, $$10]<-[$$10, $$11, $$12, $$13, $$14, $$15, $$16, $$17, $$18, $$19, $$20, $$21, $$22, $$23, $$24, $$25] <- default.lineitem |
| -- DATASOURCE_SCAN |PARTITIONED| |
| exchange |
| -- ONE_TO_ONE_EXCHANGE |PARTITIONED| |
| empty-tuple-source |
| -- EMPTY_TUPLE_SOURCE |PARTITIONED| |
| exchange |
| -- HASH_PARTITION_EXCHANGE [$$1] |PARTITIONED| |
| data-scan [$$1, $$6]<-[$$1, $$2, $$3, $$4, $$5, $$6, $$7, $$8, $$9] <- default.orders |
| -- DATASOURCE_SCAN |PARTITIONED| |
| exchange |
| -- ONE_TO_ONE_EXCHANGE |PARTITIONED| |
| empty-tuple-source |
| -- EMPTY_TUPLE_SOURCE |PARTITIONED| |