You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@kylin.apache.org by "liyang (JIRA)" <ji...@apache.org> on 2016/11/20 23:09:59 UTC
[jira] [Comment Edited] (KYLIN-1875) Kylin support SnowFlake schema
[ https://issues.apache.org/jira/browse/KYLIN-1875?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15680172#comment-15680172 ]
liyang edited comment on KYLIN-1875 at 11/20/16 11:09 PM:
----------------------------------------------------------
Initial design, a {{Data Model}} consists of the following:
- one {{Root Fact Table}}
- multiple {{Fact Tables}}
- multiple {{Lookup Tables}} (can fit in memory, typically < 300 MB)
- multiple {{Join Relationships}} that connect tables to the Root Fact Table directly or indirectly
During cube build
- All tables are joined together and then aggregated as the {{Cube}}
- Lookup tables, due to the small size, are also saved as {{Snapshots}}
Query and limitations
- Lookup tables can be queried independently from the Snapshots, ensures correct result
- Fact tables can only be queried from cube, which enforces the pre-calculated joint and aggregated result
-- *No raw records* limitation. This is the same as before.
--- For example, {{select * from F}} actually returns {{select * from F group by D1, D2, ..., Dn}}, where F is fact table, Dn are dimension columns.
-- *Enforced joint* limitation. Query on any fact table will enforce the joins of the whole model, since cube only stores pre-calculated joint result. This limitation also exists in earlier versions.
--- For example, {{select ... from F1}} will be executed as {{select ... from F1 join F2 ... join L1 join L2...}}, where Fn are fact tables, Ln are lookup tables.
was (Author: liyang.gmt8@gmail.com):
Initial design, a {{Data Model}} consists of the following:
- one {{Root Fact Table}}
- multiple {{Fact Tables}}
- multiple {{Lookup Tables}} (can fit in memory, typically < 300 MB)
- multiple {{Join Relationships}} that connect tables to the Root Fact Table directly or indirectly
During cube build
- All tables are joined together and then aggregated as the {{Cube}}
- Lookup tables, due to the small size, are also saved as {{Snapshots}}
Query and limitations
- Lookup tables can be queried independently from the Snapshots, ensures correct result
- Fact tables can only be queried from cube, which enforces the pre-calculated joint and aggregated result
-- *No raw records* limitation. This is the same as before.
-- For example, {{select * from F}} actually returns {{select * from F group by D1, D2, ..., Dn}}, where F is fact table, Dn are dimension columns.
-- *Enforced joint* limitation. Query on any fact table will enforce the joins of the whole model, since cube only stores pre-calculated joint result.
-- For example, {{select ... from F1}} will be executed as {{select ... from F1 join F2 ... join L1 join L2...}}, where Fn are fact tables, Ln are lookup tables.
> Kylin support SnowFlake schema
> ------------------------------
>
> Key: KYLIN-1875
> URL: https://issues.apache.org/jira/browse/KYLIN-1875
> Project: Kylin
> Issue Type: Improvement
> Affects Versions: v1.5.2
> Reporter: Rahul Choubey
> Assignee: liyang
>
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)