You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@kylin.apache.org by 汪浩 <wh...@163.com> on 2015/03/11 11:06:52 UTC

some questions about CuboidScheduler

hi,all
    Does anybody know the meaning of function findSmallerSibling in CuboidScheduler.java? This bothered me for several days.
    The function generated siblings based on a cuboid,  but what's the meaning of a cuboid's siblings?
    
    thanks!

RE: some questions about CuboidScheduler

Posted by 宋轶 <yi...@outlook.com>.



































Spanning Tree Generation Algorithm
GetSpanningCuboid(C)


 C is
     a parent cuboid
 C is
     comparable by cuboid ID
 let
     R be the collection of spanning cuboids of C
 let
     M be the deduplicated set of spanning cuboid ID
 for
     each c in C’s smaller siblings
      k=GenChildren(c)
      add k to M
 r=GenChildren(C)
 if r
     not in M
     add r to R


GenChildren(c) is the function of generating all possible
children of parent cuboid c



> Date: Wed, 11 Mar 2015 18:06:52 +0800
> From: wh831019@163.com
> To: dev@kylin.incubator.apache.org
> Subject: some questions about CuboidScheduler
> 
> hi,all
>     Does anybody know the meaning of function findSmallerSibling in CuboidScheduler.java? This bothered me for several days.
>     The function generated siblings based on a cuboid,  but what's the meaning of a cuboid's siblings?
>     
>     thanks!
 		 	   		  

Re:Re: some questions about CuboidScheduler

Posted by 汪浩 <wh...@163.com>.
Thanks for your reply,it's very useful for us to understand the algorithm.











At 2015-03-12 09:57:15, "Shi, Shaofeng" <sh...@ebay.com> wrote:
>Sibling means, the cubiods which have the same number of aggregations; let
>me give an example:
>
>Assume we have a cube which has 3 dimensions, the base cuboid id will be
>111;
>
>The base cuboid has 3 children: 110, 101, 011; These three are siblings;
>Among them, 110 > 101 > 011;
>
>110 and 101 has same children 100; As 101 < 110, so the 100 will be
>aggregated based on 101, instead of 110; So 100 will be excluded from the
>children of 110;
>
>Hope it helps for you to understand;
>
>
>On 3/11/15, 6:06 PM, "汪浩" <wh...@163.com> wrote:
>
>>hi,all
>>    Does anybody know the meaning of function findSmallerSibling in
>>CuboidScheduler.java? This bothered me for several days.
>>    The function generated siblings based on a cuboid,  but what's the
>>meaning of a cuboid's siblings?
>>    
>>    thanks!
>

Re: some questions about CuboidScheduler

Posted by "Shi, Shaofeng" <sh...@ebay.com>.
Sibling means, the cubiods which have the same number of aggregations; let
me give an example:

Assume we have a cube which has 3 dimensions, the base cuboid id will be
111;

The base cuboid has 3 children: 110, 101, 011; These three are siblings;
Among them, 110 > 101 > 011;

110 and 101 has same children 100; As 101 < 110, so the 100 will be
aggregated based on 101, instead of 110; So 100 will be excluded from the
children of 110;

Hope it helps for you to understand;


On 3/11/15, 6:06 PM, "汪浩" <wh...@163.com> wrote:

>hi,all
>    Does anybody know the meaning of function findSmallerSibling in
>CuboidScheduler.java? This bothered me for several days.
>    The function generated siblings based on a cuboid,  but what's the
>meaning of a cuboid's siblings?
>    
>    thanks!