Home | About | Sematext search-lucene.com search-hadoop.com
 Search Hadoop and all its subprojects:

Switch to Threaded View
Drill, mail # dev - Trivial project?


Copy link to this message
-
Re: Trivial project?
David Alves 2013-03-26, 21:50
Hi Julian

If you really must use "Project" for whichever reason this will project all fields of donut into output_MAP:

{
   "op" : "project",
   "@id" : 2,
   "input" : 1,
   "projections" : [ {
       "ref" : "output._MAP",
       "expr" : "donuts"
     } ]
 }

resulting in:

{ "_MAP" : { "id" : "0005", "sales" : 700, "name" : "Apple Fritter", "topping" : [ { "id" : "5002", "type" : "Glazed" } ], "ppu" : 1.0, "type" : "donut", "batters" : { "batter" : [ { "id" : "1001", "type" : "Regular" } ] } }

HTH.

-david


On Mar 26, 2013, at 3:59 PM, Julian Hyde <[EMAIL PROTECTED]> wrote:

> I would like to generate a trivial project operator that returns the entire input record. What expression should I use?
>
> When implementing "select * from donuts", here is the logical plan I am currently generating:
>
> {
>  "head" : {
>    "type" : "apache_drill_logical_plan",
>    "version" : 1,
>    "generator" : {
>      "type" : "manual",
>      "info" : "na"
>    }
>  },
>  "storage" : [ {
>    "type" : "classpath",
>    "name" : "donuts-json"
>  }, {
>    "type" : "queue",
>    "name" : "queue"
>  } ],
>  "query" : [ {
>    "op" : "scan",
>    "@id" : 1,
>    "memo" : "initial_scan",
>    "storageengine" : "donuts-json",
>    "selection" : {
>      "path" : "/donuts.json",
>      "type" : "JSON"
>    },
>    "ref" : "donuts"
>  }, {
>    "op" : "project",
>    "@id" : 2,
>    "input" : 1,
>    "exprs" : [ {
>      "ref" : "output._MAP",
>      "expr" : null
>    } ]
>  }, {
>    "op" : "store",
>    "@id" : 3,
>    "memo" : "output sink",
>    "input" : 2,
>    "target" : {
>      "number" : 0
>    },
>    "partition" : null,
>    "storageEngine" : "queue"
>  } ]
> }
>
> The
>
>      "expr" : null
>
> causes the reference implementation to barf (not surprisingly). What should I put in place of "null"?
>
> Julian