Apache Kylin:基于Hadoop的OLAP引擎

传统上,Hadoop(包括MapReduce,Pig以及Hive)通常用于外部私有OLAP Cube引擎准备数据。如今,Zaloni的客户基于Apache Kylin的OLAP技术实现了实时查询的能力,这些Cube的事实表包含了400亿条以上的原始数据。我们正在帮助客户统一归集来自于多个独立系统的账单数据,并构建OLAP Cube以支持实时分析,这是以前系统所无法实现的。现在,Hadoop集群都可以做到了。

基于Hadoop的分析演化

Hadoop已经从通用计算能力(MapReduce)的分布式数据平台演化为一个更强大的平台。Hadoop及其生态系统已经有能力处理更广泛的用例,远超最初设计时的低成本分布式批处理能力。支持了从迭代式的机器学习算法,到OLAP及OLTP系统,这些基于“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能力。

本文转自d1net(转载)

时间: 2025-01-29 18:43:22

Apache Kylin:基于Hadoop的OLAP引擎的相关文章

Apache Kylin发布新版流处理引擎

Apache Kylin在 1.5.0 推出了从流数据进行准实时(Near Real Time)处理功能,可以直接从Apache Kafka的主题(Topic)中消费数据来构建Cube.Apache Kylin 1.5.0的流处理是一次实验性的探索,它打破了以往只能从Apache Hive表构建Cube的局限,将数据从产生到可查询的延迟从小时级降低到了分钟级,满足了一些对实时性要求比较高的场景:但它在实现上存在一些局限︰ 不可扩展︰ 由于是利用单个 Java 进程(而不是利用某种计算框架)对数据

Apache 基金会宣布 Apache Kylin 成为顶级项目

Apache Kylin 是可扩展到PB规模的开源分布式大数据分析引擎,已被应用在eBay,Exponential, 京东,美团,明略数据,网易及其他公司. 马里兰州 Forest Hill - 2015年12月8日 -由超过350个开源项目及创新计划,全部由开发志愿者,治理志愿者及孵化志愿者组成的 Apache软件基金会(ASF),今天宣布Apache Kylin已经从Apache孵化器项目毕业,正式升级成为顶级项目(TLP),这标志着该项目的社区和产品依照ASF精英管理的流程和原则顺利运作.

Kylin —— 来自 eBay 的 OLAP 分析引擎

Kylin 是一个开源的分布式的 OLAP 分析引擎,来自 eBay 公司开发,基于 Hadoop 提供 SQL 接口和 OLAP 接口,支持 TB 到 PB 级别的数据量. 文章转载自 开源中国社区 [http://www.oschina.net]

Apache Kylin权威指南导读

前 言 "麒麟出没,必有祥瑞." --中国古谚语 "于我而言,与Apache Kylin团队一起合作使Kylin通过孵化成为顶级项目是非常激动人心的,诚然,Kylin在技术方面非常振奋人心,但同样令人兴奋的是Kylin代表了亚洲国家,特别是中国,在开源社区中越来越高的参与度." --Ted Dunning Apache孵化项目副总裁,MapR首席应用架构师 今天,随着移动互联网.物联网.AI等技术的快速兴起,数据成为了所有这些技术背后最重要,也是最有价值的"

Apache Kylin权威指南1.4 Apache Kylin的技术架构

1.4 Apache Kylin的技术架构 Apache Kylin系统可以分为在线查询和离线构建两部分,技术架构如图1-4所示,在线查询的模块主要处于上半区,而离线构建则处于下半区.   图1-4 Kylin的技术架构 我们首先来看看离线构建的部分.从图1-4可以看出,数据源在左侧,目前主要是Hadoop Hive,保存着待分析的用户数据.根据元数据的定义,下方构建引擎从数据源抽取数据,并构建Cube.数据以关系表的形式输入,且必须符合星形模型(Star Schema)(更复杂的雪花模型在成文

Apache Kylin权威指南2.6 SQL参考

2.6 SQL参考 Apache Kylin支持标准SQL作为查询语言,但是SQL有很多变体,Kylin支持的只是SQL所有变体中的一个子集,并不是支持所有现存的SQL语句和语法.用户在使用Kylin之前,需要对Kylin所支持的SQL有一个了解,以避免走弯路. 首先,Kylin作为OLAP引擎,只支持查询,而不支持其他操作,如插入.更新等,即所有的SQL都必须是SELECT语句,否则Kylin会报错. 第二,查询Kylin中SQL语句的表名.列名.度量.连接关系时,需要至少跟一个Cube的模型

BigInsights:解读IBM基于Hadoop的数据分析平台

毫无疑问,大数据成了2012年的热门词.根据国外统计机构的报告,大数据处理在今年的市场规模已经达到700亿美元并且正以每年15-20%的速度增长.几乎所有主要的大科技公司都对大数据感兴趣,对该领域的产品及服务进行了大量投入.其中包括了IBM.Oracel.EMC.HP.Dell.SGI.日立.Yahoo等,而且这个列表还在继续. IBM也在2011年中旬对外发布了针对大数据处理和分析技术:在SmartCloud平台上新增基于Apache Hadoop的服务InfoSphere BigInsigh

Apache Kylin权威指南1.2 Apache Kylin的使命

1.2 Apache Kylin的使命 Kylin的使命是超高速的大数据OLAP(Online Analytical Processing),也就是要让大数据分析像使用数据库一样简单迅速,用户的查询请求可以在秒内返回,交互式数据分析将以前所未有的速度释放大数据里潜藏的知识和信息,让我们在面对未来的挑战时占得先机. 1.2.1 为什么要使用Apache Kylin 自从10年前Hadoop诞生以来,大数据的存储和批处理问题均得到了妥善解决,而如何高速地分析数据也就成为了下一个挑战.于是各式各样的"

Apache Kylin 首批入驻微软 Azure 镜像市场

微软和世纪互联宣布在中国推出认知服务和 Azure 镜像市场,为中国Azure客户和软件开发商搭建起了一站式门户,方便中国Azure客户直接搜索.选择.部署使用,从而满足客户在云端的多样化业务需求. 作为领先的智能大数据分析技术公司,Kyligence此次受邀在该镜像市场上发布了Apache Kylin的企业级产品:Kyligence Analytics Platform(简称KAP),值得关注的是Kyligence是首批入驻的大数据公司之一.作为Azure镜像市场的首批合作伙伴,面向中国Azu