• kylin-cube存储结构


    前言

    本篇文章通过图文的方式分析不同维度组合下的cube在hbase中的存储结构

    需要声明的是,kylin不存原始数据,存储cube

    全维度构建

    假设一张表有3个字段name,age,sex,那么当通过kylin构建这张表的cube时,hbase的表结构如下所示。注意本示例没有度量字段,value表示记录条数累计,代表count(*),度量如果存在那么也是存储在value的位置,可以手动配置cf。

    通过图1很明显的可以看到,kylin将每个维度的所有基数都枚举了出来,并通过组合的方式构建出hbase的rowkey,另外将组合对应的记录数做预统计保存在value中,对应hbase表中的一个cf:c。

      

    图1

     

    当维度基数很大的时候,那么构建cube会称为灾难,所以kylin提供了cube的组合模式来减少cube的总维度组合。这里相关概念可以参考《kylin介绍》,下面直接对不同的模式进行案例分析。

     

    aggregate group

    意思是多少几个维度可以任一组合

    假设图1中的cube配置aggregate group为2,那么构建出的cube相比全维度组合构建剪去了3个维度组合的部分,参数图2

     

    图2

     

    mandatory

    假设图1中的维度name是必要维度,那么构建出的hbase结构参考图3

     

    图3

    joint

    假设图1中name和sex维度是joint关系,那么构建出的hbase结构如图4

     

    图4

    Hierarchy

    继承关系比较好理解,这里就不展示了: )

  • 相关阅读:
    vue——图片懒加载v-lazy
    vue——利用intersectionOberver实现全局appear/disappear事件
    WXS-----学会使用WXS
    使用内联样式
    样式引入
    小程序开发框架----WXSS
    引入内部外部模板
    Selenium元素定位的几种方式
    Response Assertion(响应断言)
    参数化CSV Data Set config元件
  • 原文地址:https://www.cnblogs.com/ulysses-you/p/9445590.html
Copyright © 2020-2023  润新知