You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@kylin.apache.org by "Shaofeng SHI (JIRA)" <ji...@apache.org> on 2017/11/29 07:14:00 UTC

[jira] [Closed] (KYLIN-1278) Query engine optimization: skip the condition checking on partition column if a segment's time is totaly included in the query range

     [ https://issues.apache.org/jira/browse/KYLIN-1278?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Shaofeng SHI closed KYLIN-1278.
-------------------------------
    Resolution: Fixed

This has already been implemented.

> Query engine optimization: skip the condition checking on partition column if a segment's time is totaly included in the query range
> ------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: KYLIN-1278
>                 URL: https://issues.apache.org/jira/browse/KYLIN-1278
>             Project: Kylin
>          Issue Type: Improvement
>          Components: Query Engine
>            Reporter: Shaofeng SHI
>            Assignee: liyang
>             Fix For: Backlog
>
>
> See an example: a cube (which is partitioned by date column "CAL_DT") has three segments:
> S1, S2, S3;
> Now a query like "select .... from fact_table where CAL_DT > 'yyyy-mm-dd' group by dimA, dimB..." comes, and the "CAL_DT" is only used for filtering, not in group by; 
> By checking the startTime/endTime, Kylin found S2 and S3 need be scanned, and S3 is totally match the condition "CAL_DT > yyyy-mm-dd". Then when scan S3, Kylin can ignore the condition on "CAL_DT", selecting a smaller cuboid, this should gain better performance. 
> Further more, this can be generalized to all filtering condition columns: if all values of a dimension matches with user's filtering condition, and it isn't in "group by", Kylin can ignore that column when selecting the cuboid. 



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)