buyingyi | cf48fb5 | 2012-11-02 00:31:31 +0000 | [diff] [blame^] | 1 | write [%0->$$17, %0->$$18, %0->$$19, %0->$$20] |
| 2 | -- SINK_WRITE |PARTITIONED| |
| 3 | exchange |
| 4 | -- ONE_TO_ONE_EXCHANGE |PARTITIONED| |
| 5 | union ($$6, $$10, $$17) ($$2, $$14, $$18) ($$5, $$9, $$19) ($$1, $$13, $$20) |
| 6 | -- UNION_ALL |PARTITIONED| |
| 7 | exchange |
| 8 | -- ONE_TO_ONE_EXCHANGE |UNPARTITIONED| |
| 9 | project ([$$6, $$2, $$5, $$1]) |
| 10 | -- STREAM_PROJECT |UNPARTITIONED| |
| 11 | exchange |
| 12 | -- ONE_TO_ONE_EXCHANGE |PARTITIONED| |
| 13 | join (true) |
| 14 | -- NESTED_LOOP |PARTITIONED| |
| 15 | exchange |
| 16 | -- BROADCAST_EXCHANGE |PARTITIONED| |
| 17 | select (function-call: algebricks:eq, Args:[%0->$$2, GERMANY]) |
| 18 | -- STREAM_SELECT |PARTITIONED| |
| 19 | exchange |
| 20 | -- ONE_TO_ONE_EXCHANGE |PARTITIONED| |
| 21 | data-scan [$$1, $$2]<-[$$1, $$2, $$3, $$4] <- default.nation |
| 22 | -- DATASOURCE_SCAN |PARTITIONED| |
| 23 | exchange |
| 24 | -- ONE_TO_ONE_EXCHANGE |PARTITIONED| |
| 25 | empty-tuple-source |
| 26 | -- EMPTY_TUPLE_SOURCE |PARTITIONED| |
| 27 | exchange |
| 28 | -- ONE_TO_ONE_EXCHANGE |PARTITIONED| |
| 29 | project ([$$5, $$6]) |
| 30 | -- STREAM_PROJECT |PARTITIONED| |
| 31 | select (function-call: algebricks:eq, Args:[%0->$$6, FRANCE]) |
| 32 | -- STREAM_SELECT |PARTITIONED| |
| 33 | project ([$$5, $$6]) |
| 34 | -- STREAM_PROJECT |UNPARTITIONED| |
| 35 | assign [$$5, $$6] <- [%0->$$9, %0->$$10] |
| 36 | -- ASSIGN |UNPARTITIONED| |
| 37 | exchange |
| 38 | -- ONE_TO_ONE_EXCHANGE |PARTITIONED| |
| 39 | replicate |
| 40 | -- SPLIT |PARTITIONED| |
| 41 | exchange |
| 42 | -- ONE_TO_ONE_EXCHANGE |PARTITIONED| |
| 43 | data-scan [$$9, $$10]<-[$$9, $$10, $$11, $$12] <- default.nation |
| 44 | -- DATASOURCE_SCAN |PARTITIONED| |
| 45 | exchange |
| 46 | -- ONE_TO_ONE_EXCHANGE |PARTITIONED| |
| 47 | empty-tuple-source |
| 48 | -- EMPTY_TUPLE_SOURCE |PARTITIONED| |
| 49 | exchange |
| 50 | -- ONE_TO_ONE_EXCHANGE |UNPARTITIONED| |
| 51 | project ([$$10, $$14, $$9, $$13]) |
| 52 | -- STREAM_PROJECT |UNPARTITIONED| |
| 53 | exchange |
| 54 | -- ONE_TO_ONE_EXCHANGE |PARTITIONED| |
| 55 | join (true) |
| 56 | -- NESTED_LOOP |PARTITIONED| |
| 57 | exchange |
| 58 | -- BROADCAST_EXCHANGE |PARTITIONED| |
| 59 | select (function-call: algebricks:eq, Args:[%0->$$14, FRANCE]) |
| 60 | -- STREAM_SELECT |PARTITIONED| |
| 61 | exchange |
| 62 | -- ONE_TO_ONE_EXCHANGE |PARTITIONED| |
| 63 | data-scan [$$13, $$14]<-[$$13, $$14, $$15, $$16] <- default.nation |
| 64 | -- DATASOURCE_SCAN |PARTITIONED| |
| 65 | exchange |
| 66 | -- ONE_TO_ONE_EXCHANGE |PARTITIONED| |
| 67 | empty-tuple-source |
| 68 | -- EMPTY_TUPLE_SOURCE |PARTITIONED| |
| 69 | exchange |
| 70 | -- ONE_TO_ONE_EXCHANGE |PARTITIONED| |
| 71 | project ([$$9, $$10]) |
| 72 | -- STREAM_PROJECT |PARTITIONED| |
| 73 | select (function-call: algebricks:eq, Args:[%0->$$10, GERMANY]) |
| 74 | -- STREAM_SELECT |PARTITIONED| |
| 75 | exchange |
| 76 | -- ONE_TO_ONE_EXCHANGE |PARTITIONED| |
| 77 | replicate |
| 78 | -- SPLIT |PARTITIONED| |
| 79 | exchange |
| 80 | -- ONE_TO_ONE_EXCHANGE |PARTITIONED| |
| 81 | data-scan [$$9, $$10]<-[$$9, $$10, $$11, $$12] <- default.nation |
| 82 | -- DATASOURCE_SCAN |PARTITIONED| |
| 83 | exchange |
| 84 | -- ONE_TO_ONE_EXCHANGE |PARTITIONED| |
| 85 | empty-tuple-source |
| 86 | -- EMPTY_TUPLE_SOURCE |PARTITIONED| |
| 87 | write [%0->$$47, %0->$$48, %0->$$49, %0->$$50] |
| 88 | -- SINK_WRITE |PARTITIONED| |
| 89 | project ([$$47, $$48, $$49, $$50]) |
| 90 | -- STREAM_PROJECT |PARTITIONED| |
| 91 | exchange |
| 92 | -- SORT_MERGE_EXCHANGE [$$47(ASC), $$48(ASC), $$49(ASC) ] |PARTITIONED| |
| 93 | order (ASC, %0->$$47) (ASC, %0->$$48) (ASC, %0->$$49) |
| 94 | -- STABLE_SORT [$$47(ASC), $$48(ASC), $$49(ASC)] |LOCAL| |
| 95 | exchange |
| 96 | -- ONE_TO_ONE_EXCHANGE |PARTITIONED| |
| 97 | group by ([$$47 := %0->$$53; $$48 := %0->$$54; $$49 := %0->$$55]) decor ([]) { |
| 98 | aggregate [$$50] <- [function-call: hive:sum(FINAL), Args:[%0->$$52]] |
| 99 | -- AGGREGATE |LOCAL| |
| 100 | nested tuple source |
| 101 | -- NESTED_TUPLE_SOURCE |LOCAL| |
| 102 | } |
| 103 | -- EXTERNAL_GROUP_BY[$$53, $$54, $$55] |PARTITIONED| |
| 104 | exchange |
| 105 | -- HASH_PARTITION_EXCHANGE [$$53, $$54, $$55] |PARTITIONED| |
| 106 | group by ([$$53 := %0->$$1; $$54 := %0->$$2; $$55 := %0->$$45]) decor ([]) { |
| 107 | aggregate [$$52] <- [function-call: hive:sum(PARTIAL1), Args:[%0->$$46]] |
| 108 | -- AGGREGATE |LOCAL| |
| 109 | nested tuple source |
| 110 | -- NESTED_TUPLE_SOURCE |LOCAL| |
| 111 | } |
| 112 | -- EXTERNAL_GROUP_BY[$$1, $$2, $$45] |LOCAL| |
| 113 | exchange |
| 114 | -- ONE_TO_ONE_EXCHANGE |PARTITIONED| |
| 115 | project ([$$1, $$2, $$45, $$46]) |
| 116 | -- STREAM_PROJECT |PARTITIONED| |
| 117 | assign [$$45, $$46] <- [function-call: hive:org.apache.hadoop.hive.ql.udf.UDFYear, Args:[%0->$$30], function-call: hive:org.apache.hadoop.hive.ql.udf.UDFOPMultiply, Args:[%0->$$25, function-call: hive:org.apache.hadoop.hive.ql.udf.UDFOPMinus, Args:[1, %0->$$26]]] |
| 118 | -- ASSIGN |PARTITIONED| |
| 119 | project ([$$1, $$2, $$30, $$25, $$26]) |
| 120 | -- STREAM_PROJECT |PARTITIONED| |
| 121 | exchange |
| 122 | -- ONE_TO_ONE_EXCHANGE |PARTITIONED| |
| 123 | join (function-call: algebricks:and, Args:[function-call: algebricks:eq, Args:[%0->$$15, %0->$$4], function-call: algebricks:eq, Args:[%0->$$8, %0->$$3]]) |
| 124 | -- HYBRID_HASH_JOIN [$$15, $$8][$$4, $$3] |PARTITIONED| |
| 125 | exchange |
| 126 | -- HASH_PARTITION_EXCHANGE [$$15, $$8] |PARTITIONED| |
| 127 | project ([$$8, $$30, $$25, $$26, $$15]) |
| 128 | -- STREAM_PROJECT |PARTITIONED| |
| 129 | exchange |
| 130 | -- ONE_TO_ONE_EXCHANGE |PARTITIONED| |
| 131 | join (function-call: algebricks:eq, Args:[%0->$$22, %0->$$5]) |
| 132 | -- HYBRID_HASH_JOIN [$$22][$$5] |PARTITIONED| |
| 133 | exchange |
| 134 | -- HASH_PARTITION_EXCHANGE [$$22] |PARTITIONED| |
| 135 | project ([$$15, $$30, $$25, $$26, $$22]) |
| 136 | -- STREAM_PROJECT |PARTITIONED| |
| 137 | exchange |
| 138 | -- ONE_TO_ONE_EXCHANGE |PARTITIONED| |
| 139 | join (function-call: algebricks:eq, Args:[%0->$$37, %0->$$12]) |
| 140 | -- HYBRID_HASH_JOIN [$$37][$$12] |PARTITIONED| |
| 141 | exchange |
| 142 | -- HASH_PARTITION_EXCHANGE [$$37] |PARTITIONED| |
| 143 | project ([$$37, $$22, $$25, $$26, $$30]) |
| 144 | -- STREAM_PROJECT |PARTITIONED| |
| 145 | exchange |
| 146 | -- ONE_TO_ONE_EXCHANGE |PARTITIONED| |
| 147 | join (function-call: algebricks:eq, Args:[%0->$$20, %0->$$36]) |
| 148 | -- HYBRID_HASH_JOIN [$$20][$$36] |PARTITIONED| |
| 149 | exchange |
| 150 | -- HASH_PARTITION_EXCHANGE [$$20] |PARTITIONED| |
| 151 | select (function-call: algebricks:and, Args:[function-call: algebricks:le, Args:[%0->$$30, 1996-12-31], function-call: algebricks:ge, Args:[%0->$$30, 1995-01-01], function-call: algebricks:le, Args:[%0->$$30, 1996-12-31]]) |
| 152 | -- STREAM_SELECT |PARTITIONED| |
| 153 | exchange |
| 154 | -- ONE_TO_ONE_EXCHANGE |PARTITIONED| |
| 155 | data-scan [$$20, $$22, $$25, $$26, $$30]<-[$$20, $$21, $$22, $$23, $$24, $$25, $$26, $$27, $$28, $$29, $$30, $$31, $$32, $$33, $$34, $$35] <- default.lineitem |
| 156 | -- DATASOURCE_SCAN |PARTITIONED| |
| 157 | exchange |
| 158 | -- ONE_TO_ONE_EXCHANGE |PARTITIONED| |
| 159 | empty-tuple-source |
| 160 | -- EMPTY_TUPLE_SOURCE |PARTITIONED| |
| 161 | exchange |
| 162 | -- HASH_PARTITION_EXCHANGE [$$36] |PARTITIONED| |
| 163 | data-scan [$$36, $$37]<-[$$36, $$37, $$38, $$39, $$40, $$41, $$42, $$43, $$44] <- default.orders |
| 164 | -- DATASOURCE_SCAN |PARTITIONED| |
| 165 | exchange |
| 166 | -- ONE_TO_ONE_EXCHANGE |PARTITIONED| |
| 167 | empty-tuple-source |
| 168 | -- EMPTY_TUPLE_SOURCE |PARTITIONED| |
| 169 | exchange |
| 170 | -- HASH_PARTITION_EXCHANGE [$$12] |PARTITIONED| |
| 171 | data-scan [$$12, $$15]<-[$$12, $$13, $$14, $$15, $$16, $$17, $$18, $$19] <- default.customer |
| 172 | -- DATASOURCE_SCAN |PARTITIONED| |
| 173 | exchange |
| 174 | -- ONE_TO_ONE_EXCHANGE |PARTITIONED| |
| 175 | empty-tuple-source |
| 176 | -- EMPTY_TUPLE_SOURCE |PARTITIONED| |
| 177 | exchange |
| 178 | -- HASH_PARTITION_EXCHANGE [$$5] |PARTITIONED| |
| 179 | data-scan [$$5, $$8]<-[$$5, $$6, $$7, $$8, $$9, $$10, $$11] <- default.supplier |
| 180 | -- DATASOURCE_SCAN |PARTITIONED| |
| 181 | exchange |
| 182 | -- ONE_TO_ONE_EXCHANGE |PARTITIONED| |
| 183 | empty-tuple-source |
| 184 | -- EMPTY_TUPLE_SOURCE |PARTITIONED| |
| 185 | exchange |
| 186 | -- HASH_PARTITION_EXCHANGE [$$4, $$3] |PARTITIONED| |
| 187 | data-scan [$$4, $$3, $$1, $$2]<-[$$1, $$2, $$3, $$4] <- default.q7_volume_shipping_tmp |
| 188 | -- DATASOURCE_SCAN |PARTITIONED| |
| 189 | exchange |
| 190 | -- ONE_TO_ONE_EXCHANGE |PARTITIONED| |
| 191 | empty-tuple-source |
| 192 | -- EMPTY_TUPLE_SOURCE |PARTITIONED| |