kylin 揭开亚秒级查询的神秘面纱

  1. kylin之所有亚秒级别的查询,主要在于存储结构,kylin的数据都是写入了hbase,cube的重点就是维度和度量列,在hbase中rowkey就是由各维度值拼接起来的,这里列一个比较形象的例子,这篇文章的目标就达到了
  2. cube id的维度值 1,2 dt的维度值是25,26,27,下面根据cube的概念完成下在这个表,一共11条记录,按照cube 维度的n次方还有一种就情况就是没有维度这种,应该在hbase中理想条件下会有12条数据,经验证后hbase只有11条数据,没有维度这种情况,完全可以根据只有一个维度的数据去做聚合数据
    序号维度数量id(维度)dt(维度)noney(度量列)salary(度量列)rowkeyvalue
    11个维度 1 xxxx1xx/xx
    21个维度2 xxxx2xx/xx
    31个维度 25xxxx25xx/xx
    41个维度 26xxxx26xx/xx
    51个维度 27xxxx27xx/xx
    62个维度125xxxx1-25xx/xx
    72个维度126xxxx1-26xx/xx
    82个维度127xxxx1-27xx/xx
    92个维度225xxxx2-25xx/xx
    102个维度226xxxx2-26xx/xx
    112个维度227xxxx2-27xx/xx

     

  3. sql如何查hbase数据,sum的结果就是value中的

    select id,sum(money)
    from
    table
    group by id 

    取序号为1,2的两条数据就行了

    select dt,sum(money)
    from 
    table 
    group by dt

    取序号为3,4,5的数据就行了

    select id,dt,sum(money)
    from 
    table 
    group by id ,dt

    取6,7,8,9,10,11的数据就行了,这下明白为什么kylin为什么这么快了吧,对于这种多维度的计算,先在hbase中对所有的维度进行,然后在查询时直接在hbase中查数就行了,因为hbase这种随机查询很强,所有kylin查数能控制在亚秒级别了

  4. kylin中的优化主要也是围绕hbase中生成的数据来的,下篇再介绍

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

wending-Y

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值