| { |
| head : { |
| type : "APACHE_DRILL_LOGICAL", |
| version : 1, |
| generator : { |
| type : "optiq", |
| info : "na" |
| } |
| }, |
| storage : { |
| parquet-local : { |
| type : "parquet", |
| dfsName : "file:///" |
| } |
| }, |
| query : [ { |
| op : "scan", |
| @id : 1, |
| memo : "initial_scan", |
| storageengine : "parquet-local", |
| selection : [ { |
| path : "/tmp/parquet" |
| } ], |
| ref : "_MAP" |
| }, { |
| op : "project", |
| @id : 2, |
| input : 1, |
| projections : [ { |
| ref : "$f0", |
| expr : "_MAP.b" |
| }, { |
| ref : "$f1", |
| expr : "_MAP.d" |
| }, { |
| ref : "$f2", |
| expr : "1" |
| }, { |
| ref : "$f3", |
| expr : "2" |
| } ] |
| }, { |
| op : "segment", |
| @id : 3, |
| input : 2, |
| exprs : [ "$f0", "$f1" ], |
| name : "segment" |
| }, { |
| op : "collapsingaggregate", |
| @id : 4, |
| input : 3, |
| within : "segment", |
| target : null, |
| carryovers : [ "$f0", "$f1" ], |
| aggregations : [ { |
| ref : "EXPR$0", |
| expr : "count($f2) " |
| }, { |
| ref : "EXPR$1", |
| expr : "count($f3) " |
| } ] |
| }, { |
| op : "project", |
| @id : 5, |
| input : 4, |
| projections : [ { |
| ref : "EXPR$0", |
| expr : "EXPR$0" |
| }, { |
| ref : "EXPR$1", |
| expr : "EXPR$1" |
| }, { |
| ref : "C", |
| expr : "$f0" |
| }, { |
| ref : "X", |
| expr : "$f1" |
| } ] |
| }, { |
| op : "store", |
| @id : 6, |
| memo : "output sink", |
| input : 5, |
| target : { |
| number : 0 |
| }, |
| partition : null, |
| storageEngine : "queue" |
| } ] |
| } |