You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@kylin.apache.org by "Vsevolod Ostapenko (JIRA)" <ji...@apache.org> on 2018/02/08 22:36:00 UTC

[jira] [Created] (KYLIN-3249) Default hybrid cube priority should be the same as of a regular cube

Vsevolod Ostapenko created KYLIN-3249:
-----------------------------------------

             Summary: Default hybrid cube priority should be the same as of a regular cube
                 Key: KYLIN-3249
                 URL: https://issues.apache.org/jira/browse/KYLIN-3249
             Project: Kylin
          Issue Type: Bug
          Components: Query Engine
    Affects Versions: v2.2.0
         Environment: HDP 2.5.6, Kylin 2.2
            Reporter: Vsevolod Ostapenko


Hybrid cubes are assigned default priority lower than regular cubes, which leads to incorrect selection of a hybrid cube while a regular non-hybridized cube with lower cost is available.

For example, model has a wide cube with full set of metrics and narrower cube with top-N entries for a subset of metrics.

If wide cube is hybridized (due to a new metric addition), but top-N cube remains unchanged and non-hybridized, top-N cube will be no longer queried, 'causing query performance degradation.

The issue can be tracked to the query/src/main/java/org/apache/kylin/query/routing/Candidate.java, where hybrid cubes are assigned priority 0, while regular cubes are assigned priority of 1.
This unconditional priority assignment is incorrect as it only holds for cases when there is only one cube "type" in the model or when all the cubes are hybridized at the same time.

Simplest fix is to have hybrid priority to be the same as of a regular cube.
Plus, as an enhancement to the cube selection algorithm a new rule can be implemented that will filter out regular candidate cubes that are included into candidate hybrid cubes.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)