kylin的实现原理
- kylin 预计算实现过程:将hive数据源的数据依据制定的计算逻辑将指定好的维度计算为指标,将所有可能的计算结果(cube)存储到HBase。(确定是所有吗?)
- cube和cuboid,cube就是一个数据源的所有计算结果,cuboid就是每一种维度组合,并包含计算的指标,cube的计算过程是逐层计算的,首先计算Base cuboid,然后计算维度数依次减少,逐层向下计算每层的cuboid。
- cuboid转换为HBase的rowkey存储,
- cuboid的维度会映射为HBase的rowkey,其中维度会被kylin进行字典编码以节省存储资源,而其指标会映射为HBase的value。
- 在计算cuboid过程中,会将Hive表的数据转化为HBase的KV形式。Rowkey的具体格式是
cuboid id + 具体的维度值(最新的Rowkey中为了并发查询还加入了ShardKey,是最新的吗),cuboid为8位 - 所有的cuboid计算完成后,会将cuboid转化为HBase的
KeyValue格式生成HBase的HFile,最后将HFile load进cube对应的HBase表中。
- SQL查询怎样转成HBase的查询操作
-
1 select year, sum(price)
2 from table
3 where city = "beijing"
4 group by year这个SQL涉及维度
year和city,所以其对应的cuboid是00000011,又因为city的值是确定的beijing,所以在Scan HBase时就会Scan Rowkey以00000011开头且city的值是beijing的行,取到对应指标sum(price)的值,返回给用户。
-
kylin的实现原理的更多相关文章
- 【转】Kylin中的cube构建
http://blog.csdn.net/yu616568/article/details/50365240 前言 在使用Kylin的时候,最重要的一步就是创建cube的模型定义,即指定度量和维度 ...
- 麒麟Kylin
开源的分布式分析引擎,提供Hadoop/Spark之上的SQL查询接口及多维分析(MOLAP)能力以支持超大规模数据,能在亚秒内查询巨大的Hive表: Kylin的主要特点包括支持SQL接口.支持超大 ...
- Apache Kylin 概述
1 Kylin是什么 今天,随着移动互联网.物联网.AI等技术的快速兴起,数据成为了所有这些技术背后最重要,也是最有价值的"资产".如何从数据中获得有价值的信息?这个问题驱动了相关 ...
- Kylin构建Cube过程详解
1 前言 在使用Kylin的时候,最重要的一步就是创建cube的模型定义,即指定度量和维度以及一些附加信息,然后对cube进行build,当然我们也可以根据原始表中的某一个string字段(这个字段的 ...
- [转帖]Apache Kylin 概述
Apache Kylin 概述 https://www.cnblogs.com/xiaodf/p/11671095.html 1 Kylin是什么 今天,随着移动互联网.物联网.AI等技术的快速兴起, ...
- 【CDN+】 Kylin 的初步认识与理解
前言 项目中用到了Kylin框架来处理数据,那么作为项目成员需要了解哪些关于Kylin的知识呢,本文就Kylin得基本概念和原理进行简述. Kylin基本概念 首先想到的学习路径是Kylin官网: h ...
- 学习笔记:Apache Kylin 概述
一.kylin解决了什么关键问题? Apache Kylin的初衷就是解决千亿.万亿条记录的秒级查询问题,其中的关键就是打破查询时间随着数据量呈线性增长的这一规律. 大数据OLAP,我们可以注意到两个 ...
- Kylin笔记
简介 Apache Kylin(Extreme OLAP Engine for Big Data)是一个开源的分布式 分析引擎,为Hadoop等大型分布式数据平台之上的超大规模数据集通过标准 SQL查 ...
- 浅淡 Apache Kylin 与 ClickHouse 的对比
作者简介 周耀,Kyligence 解决方案架构师,Apache Kylin.Apache Superset Contributor. Apache Kylin 和 ClickHouse 都是目前市场 ...
随机推荐
- 六:Redis配制文件
1.它在哪儿 1.1 安装包解压开里面就会有redis.conf 1.2 我们在修改一定要拷贝一份,修改拷贝的那一份 2.Units单位 2.1 对于单位来说配制开头定义了,1k和1kb是不一样的,同 ...
- Ceph如何实现文件系统的横向扩展
前言 在跟一个朋友聊天的时候,聊到一个技术问题,他们的一个环境上面小文件巨多,是我目前知道的集群里面规模算非常大的了,但是目前有个问题,一方面会进行一倍的硬件的扩容,而文件的数量也在剧烈的增长着,所以 ...
- 查询SQL Server数据库使用的版本号信息
如何查询当前连接服务器的数据库版本号,使用以下语句执行即可: select @@version
- 讲武德,你们要的高性能日志工具 Log4j2,来了
Log4j 介绍过了,SLF4J 介绍过了,Logback 也介绍过了,你以为日志系列的文章就到此终结了? 不不不,我告诉你,还有一个 Log4j 2,顾名思义,它就是 Log4j 的升级版,就好像手 ...
- guitar pro系列教程(十五):Guitar Pro播放没有声音怎么办?
相信很多朋友在安装了guitar pro打谱后都会发现没有声音,关于这个问题相信大家都很苦恼到底是什么问题呢,今天小编就这个问题与大家好好讨论讨论,希望对大家有帮助,感兴趣的朋友可以进来一起学习哦. ...
- [poi使用]使用excel模版导出excel
Apache POI是基于Office Open XML标准(OOXML)和Microsoft的OLE 2复合文档格式(OLE2)处理各种文件格式的开源项目.简而言之,您可以使用Java读写MS ...
- 为什么90%的大学都要求计算机专业学习C语言?
编程语言是编程的工具,计算机相关专业的学生必须具备足够的编程能力.当然,关于"最好语言"的争论从来没有休止过,这里要强调一下:语言的选择真的没那么重要,学习语言的过程最重要是语言的 ...
- CoProcessFunction实战三部曲之一:基本功能
欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...
- IEEE浮点数标准
IEEE浮点数标准 阅读笔记:Computer System : A Programmmer's Perspective 基本概念 IEEE浮点数标准采用 \[V=(-1)^s\times M\tim ...
- 项目、地铁/公交、游戏签到、项目上线后发现新bug该怎么处理
项目:1.提前分配好业务(每个人该干什么 )2.提前召开会议3.提前挑好人4.准备项目思维导图5.提前审阅项目6.为确保项目按期交付 把控好时间7.给员工提前打好招呼 (提醒加班)8.建立好安全机制9 ...