You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@drill.apache.org by Sudip Mukherjee <sm...@commvault.com> on 2015/09/14 07:51:56 UTC

Drill- Query execution plan

Hi,
Need some help understanding the below steps of a query execution. The below query is broken down in to these steps.
If you could just explain me in short or point to a documentation link would be great for me as I am trying to dig into drill code and logics.

SELECT SUM(1) AS `COL` FROM mydb.testtable HAVING COUNT(1)>0 [query is sent from tableau]




Sudip[cid:image001.png@01D0EED8.6C54AE60]



***************************Legal Disclaimer***************************
"This communication may contain confidential and privileged material for the
sole use of the intended recipient. Any unauthorized review, use or distribution
by others is strictly prohibited. If you have received the message by mistake,
please advise the sender by reply email and delete the message. Thank you."
**********************************************************************

RE: Drill- Query execution plan

Posted by Sudip Mukherjee <sm...@commvault.com>.
Hi Abdel,

Sorry for that. The code flow that I am trying to understand is below 

Like in my query::
SELECT SUM(1) AS `COL` FROM mydb.testtable HAVING COUNT(1)>0

Is the Projection broken down to 1) Final record output , 2) Projection on Aggregation  something like that. Please correct me if I am wrong.

----------------------------------------------------

00-00    Screen : rowType = RecordType(INTEGER COL): rowcount = 1.0, cumulative cost = {62.1 rows, 607.1 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 217
00-01      Project(COL=[$0]) : rowType = RecordType(INTEGER COL): rowcount = 1.0, cumulative cost = {62.0 rows, 607.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 216
00-02        SelectionVectorRemover : rowType = RecordType(INTEGER COL, BIGINT $f1): rowcount = 1.0, cumulative cost = {62.0 rows, 607.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 215
00-03          Filter(condition=[>($1, 0)]) : rowType = RecordType(INTEGER COL, BIGINT $f1): rowcount = 1.0, cumulative cost = {61.0 rows, 606.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 214
00-04            StreamAgg(group=[{}], COL=[SUM($0)], agg#1=[COUNT()]) : rowType = RecordType(INTEGER COL, BIGINT $f1): rowcount = 1.0, cumulative cost = {60.0 rows, 600.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 213
00-05              Project($f0=[1]) : rowType = RecordType(INTEGER $f0): rowcount = 20.0, cumulative cost = {40.0 rows, 120.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 212
00-06                Scan(groupscan=[GroupScan [ScanSpec=ScanSpec [tableName= testtable, filter=null], columns=[`*`]]]) : rowType = RecordType(VARCHAR(2147483647) Company, VARCHAR(2147483647) Name): rowcount = 20.0, cumulative cost = {20.0 rows, 40.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 211

Thanks,
Sudip

-----Original Message-----
From: Abdel Hakim Deneche [mailto:adeneche@maprtech.com] 
Sent: 14 September 2015 PM 08:12
To: dev@drill.apache.org
Subject: Re: Drill- Query execution plan

Hi Sudip,

Did you include an image in your email ? unfortunately, Drill's mailing list doesn't allow any attachments, so we are not able to see the image

On Sun, Sep 13, 2015 at 10:51 PM, Sudip Mukherjee <sm...@commvault.com>
wrote:

> Hi,
>
> Need some help understanding the below steps of a query execution. The 
> below query is broken down in to these steps.
>
> If you could just explain me in short or point to a documentation link 
> would be great for me as I am trying to dig into drill code and logics.
>
>
>
> *SELECT SUM(1) AS `COL` FROM mydb.testtable HAVING COUNT(1)>0 [query 
> is sent from tableau]*
>
>
>
>
>
>
>
>
>
> Sudip
>
>
> ***************************Legal Disclaimer***************************
> "This communication may contain confidential and privileged material 
> for the sole use of the intended recipient. Any unauthorized review, 
> use or distribution by others is strictly prohibited. If you have 
> received the message by mistake, please advise the sender by reply email and delete the message. Thank you."
> **********************************************************************
>
>


-- 

Abdelhakim Deneche

Software Engineer

  <http://www.mapr.com/>


Now Available - Free Hadoop On-Demand Training <http://www.mapr.com/training?utm_source=Email&utm_medium=Signature&utm_campaign=Free%20available>



***************************Legal Disclaimer***************************
"This communication may contain confidential and privileged material for the
sole use of the intended recipient. Any unauthorized review, use or distribution
by others is strictly prohibited. If you have received the message by mistake,
please advise the sender by reply email and delete the message. Thank you."
**********************************************************************

Re: Drill- Query execution plan

Posted by Abdel Hakim Deneche <ad...@maprtech.com>.
Hi Sudip,

Did you include an image in your email ? unfortunately, Drill's mailing
list doesn't allow any attachments, so we are not able to see the image

On Sun, Sep 13, 2015 at 10:51 PM, Sudip Mukherjee <sm...@commvault.com>
wrote:

> Hi,
>
> Need some help understanding the below steps of a query execution. The
> below query is broken down in to these steps.
>
> If you could just explain me in short or point to a documentation link
> would be great for me as I am trying to dig into drill code and logics.
>
>
>
> *SELECT SUM(1) AS `COL` FROM mydb.testtable HAVING COUNT(1)>0 [query is
> sent from tableau]*
>
>
>
>
>
>
>
>
>
> Sudip
>
>
> ***************************Legal Disclaimer***************************
> "This communication may contain confidential and privileged material for the
> sole use of the intended recipient. Any unauthorized review, use or distribution
> by others is strictly prohibited. If you have received the message by mistake,
> please advise the sender by reply email and delete the message. Thank you."
> **********************************************************************
>
>


-- 

Abdelhakim Deneche

Software Engineer

  <http://www.mapr.com/>


Now Available - Free Hadoop On-Demand Training
<http://www.mapr.com/training?utm_source=Email&utm_medium=Signature&utm_campaign=Free%20available>