BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

Apache Kylin:基于Hadoop的OLAP引擎

| 作者 Craig Lukasi 关注 0 他的粉丝 ,译者 刘一鸣 关注 0 他的粉丝 发布于 2016年10月13日. 估计阅读时间: 5 分钟 | CNUTCon 了解国内外一线大厂50+智能运维最新实践案例。
传统上,Hadoop(包括MapReduce,Pig以及Hive)通常用于外部私有OLAP Cube引擎准备数据。如今,Zaloni的客户基于Apache Kylin的OLAP技术实现了实时查询的能力,这些Cube的事实表包含了400亿条以上的原始数据。我们正在帮助客户统一归集来自于多个独立系统的账单数据,并构建OLAP Cube以支持实时分析,这是以前系统所无法实现的。现在,Hadoop集群都可以做到了。
 

基于Hadoop的分析演化

Hadoop已经从通用计算能力(MapReduce)的分布式数据平台演化为一个更强大的平台。Hadoop及其生态系统已经有能力处理更广泛的用例,远超最初设计时的低成本分布式批处理能力。支持了从迭代式的机器学习算法,到OLAPOLTP系统,这些基于“hadoop集群”的开源分析能力给传统的大玩家们(Oralce,SAS,Teradata,IBM等)带来了很大的压力。
 

为规模设计

Apache Kylin是开源的多维在线分析处理引擎(MOLAP),名字来源于中国的一种神兽“麒麟”。项目最初诞生于eBay,专为分析处理PB级数据集而设计。这里引用一段Apache基金会2015年12月的Blog:“Apche Kylin是目前为止大数据领域最好的OLAP引擎”,eBay数据服务与解决方案部门高级总监Wilson Pang说到,“在eBay,我们收集用户在每一个页面的每一个行为。当其他OLAP引擎挣扎于数据量的极大膨胀时,Kylin可以在毫秒级获得查询响应。除此之外,基于Kylin我们还实现了近实时的数据流存储和分析。总之,Kylin在eBay产品分析平台中扮演了至关重要的后台核心组件角色。”
 

如何工作

Kylin通过预计算实现查询速度的提升,利用Hive查询计算多个维度的组合(译者注:此处原文有误,正确应为,Kylin是通过Hive获取数据源,并利用MapReduce计算多个维度的任意组合),计算各类指标的聚合值,并将这些中间结果保存在HBase中。Kylin拥有用户友好的查询界面,也支持通过API和JDBC、ODBC提交查询。查询引擎基于Apache Calcite查询处理器和HBase的检索功能(比如fuzzy row filters)实现结果集快速获取。HBase的rowkeys利用Trie Data Structure技术实现维度字段字典数据的高效压缩。
 
当前,Kylin只支持星型模型,因此每个Cube只能有单一的事实表。
 

建模向导

设计Cube很容易。假设你已经有了一张Hive的表,建模向导将帮助你一步步走完设计的流程,包括选择维度(包括层级维度),选择维表,选择指标等。也支持按照日期时间分区,使得Cube分段刷新易如反掌,这广泛用在了流数据的增量式构建。一旦Cube定义好了,我们通过Kylin的监控界面查看Cube的构建进度。
 
除了原生的Kylin Web界面,你可以通过JDBC查询OLAP Cube,也可以通过Zeppelin(Zeppelin已经内置了Kylin的解释器),或者设计良好的REST API。
 

基于Hadoop的OLAP的其他选项

Kylin是基于Hadoop的OLAP技术的一个开源选项。Apache Lens是另一个,它是一个ROLAP解决方案,并不能实现Kylin这种预计算技术所能达到的快速查询响应能力。Druid也是一个选项,它采用了自己的集群技术(并不依赖Hadoop)。也有一些第三方的解决方案,声称支持Hadoop之上的OLAP能力。
 
作者:Craig Lukasi,本文已获翻译授权。
 
 
译者:刘一鸣(Billy Liu), 现任Kyligence产品负责人,负责Apache Kylin企业级版本及其他产品的规划和设计。Kyligence是由Apache Kylin核心团队创立的创业公司。
 

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我
社区评论

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT