[ 
https://issues.apache.org/jira/browse/LENS-974?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15867660#comment-15867660
 ] 

Rajat Khandelwal commented on LENS-974:
---------------------------------------

Second way is to use internal recursion. In this, each resolver will do its own 
work on all candidates, which includes storage candidates, join/union 
candidates, segmentation candidates and their combinations. This says that each 
segmentation candidate will have its own cube query context object. Each 
resolver will do its own work first as it's doing so far. But it'll also do the 
same work recursively on the cube query context objects inside all segmentation 
candidates remaining so far. So the black box keeps exploding a little in each 
phase, but never completely. Secondly, the loop invariant for the resolvers is 
maintained -- After running `r1`, all the candidates remaining are valid 
candidates according to the conditions checked so far; before running `r2`, 
`r2` gets all `valid candidates so far` and not more. This might be 
significantly slower than the first, since there are always equal or more 
candidates to check in each resolver than happening currently. Plus, each 
resolver will have extra code. Another downside is, that there will be a lot of 
`instanceof` checks for processing a candidate.

> Add cube-segmentation for base cube
> -----------------------------------
>
>                 Key: LENS-974
>                 URL: https://issues.apache.org/jira/browse/LENS-974
>             Project: Apache Lens
>          Issue Type: New Feature
>          Components: cube
>            Reporter: Sushil Mohanty
>
> With cube segmentation a cube can have multiple cubes and all these child 
> cubes together will make the cube complete. 
> CubeSegmentation and  CubeFactTable will sit together, which means it can 
> belong to only one base cube. A base cube can have one or more cube 
> segmentations. Fields of segmentation will be intersection of all columns of 
> its cubes. Segmentation will have weight to compare with its buddies (facts 
> or other segmentations). Also it can have start and end time defined or it 
> can derive from its underline facts. 
> eg: 
> base_cube
>   |_fact1
>   |_fact2
>   |_cube_segment1
>      |_cube1
>         |_fact_11
>         |_fact_12
>         ... 
>       ...
>   |_cube_segment2
>      |_cube2
>         |_fact_21
>         |_fact_22
>         ... 
>       ...



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to