You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@iotdb.apache.org by 魏祥威 <52...@qq.com> on 2020/02/12 07:20:36 UTC

[DISCUSS] Restructure QueryPlan: RawDataQueryPlan and AlignByDevicePlan

Hi all,


I'm currently fixing this issue: Seperate AlignByDevicePlan from QueryPlan[1].


There are three aspects that I changed:


(1) Restructure QueryPlan


The general query aligning by time and the AlignByDevice query ( which is called groupByDevice before ) were both storaged in QueryPlan before. As they store different parameters and invoke different query process, I seperated them from QueryPlan. QueryPlan is as base class now, the RawDataQueryPlan and AlignByDevicePlan representing two types of queries are as subclasses of QueryPlan.


(2) The query process of an AlignByDevicePlan


There were three subclasses of QueryPlan before: GroupByPlan, FillQueryPlan, AggregationPlan. They are as subclasses of RawDataQueryPlan now. To avoid redundance, I didn't design the same subclasses for AlignByDevicePlan, instead these three sub-plan are storaged as parameters in it. For example, if a query are both a AlignByDevicePlan and a GroupByPlan, the GroupByPlan parameter will be assigned and processed later.


(3) The name of AlignByDevicePlan


Maybe you have noticed that. Because GroupByDevice is not a standard sql statement, so I rename it as AlignByDevice.&nbsp;


Thanks for the advice of Xiangdong Huang for this change. I also changed some names which used GroupByDevice, but it was just a part. Hope we can change it little by little later.


[1]&nbsp;https://issues.apache.org/jira/browse/IOTDB-468



Best,
Xiangwei Wei



&nbsp;

Re: [DISCUSS] Restructure QueryPlan: RawDataQueryPlan and AlignByDevicePlan

Posted by Jialin Qiao <qj...@mails.tsinghua.edu.cn>.
Hi,

The new construction of QueryPlan looks much better. 
There are two things left:

(1) change the sql of group by device to align by device
(2) optimize the PhysicalGenerator

Thanks,
--
Jialin Qiao
School of Software, Tsinghua University

乔嘉林
清华大学 软件学院

> -----原始邮件-----
> 发件人: "魏祥威" <52...@qq.com>
> 发送时间: 2020-02-12 15:20:36 (星期三)
> 收件人: dev <de...@iotdb.apache.org>
> 抄送: 
> 主题: [DISCUSS] Restructure QueryPlan: RawDataQueryPlan and AlignByDevicePlan
> 
> Hi all,
> 
> 
> I'm currently fixing this issue: Seperate AlignByDevicePlan from QueryPlan[1].
> 
> 
> There are three aspects that I changed:
> 
> 
> (1) Restructure QueryPlan
> 
> 
> The general query aligning by time and the AlignByDevice query ( which is called groupByDevice before ) were both storaged in QueryPlan before. As they store different parameters and invoke different query process, I seperated them from QueryPlan. QueryPlan is as base class now, the RawDataQueryPlan and AlignByDevicePlan representing two types of queries are as subclasses of QueryPlan.
> 
> 
> (2) The query process of an AlignByDevicePlan
> 
> 
> There were three subclasses of QueryPlan before: GroupByPlan, FillQueryPlan, AggregationPlan. They are as subclasses of RawDataQueryPlan now. To avoid redundance, I didn't design the same subclasses for AlignByDevicePlan, instead these three sub-plan are storaged as parameters in it. For example, if a query are both a AlignByDevicePlan and a GroupByPlan, the GroupByPlan parameter will be assigned and processed later.
> 
> 
> (3) The name of AlignByDevicePlan
> 
> 
> Maybe you have noticed that. Because GroupByDevice is not a standard sql statement, so I rename it as AlignByDevice.&nbsp;
> 
> 
> Thanks for the advice of Xiangdong Huang for this change. I also changed some names which used GroupByDevice, but it was just a part. Hope we can change it little by little later.
> 
> 
> [1]&nbsp;https://issues.apache.org/jira/browse/IOTDB-468
> 
> 
> 
> Best,
> Xiangwei Wei
> 
> 
> 
> &nbsp;