Apache顶级项目介绍5,我们迎来的中国自己的开源,来自本土eBay的顶级项目Kylin。神马?没听过? 别急,放心,Apache的顶级项目各个都身负绝技。
有人问,为什么突然介绍Kylin,呃,有小伙伴热情的提及的Kylin,希望来一篇介绍,本人之前有关注了解过,但没有深入研究过,所以我们先学现卖,符合入门介绍篇。
Kylin(麒麟),由eBay研发并贡献并于2014年10月开源,并于当年11月成为
Apache孵化器项目,是第一个主要由中国团队完整贡献给Apache的项目。去年2015年12月,Apache基金会ASF正式批准Kylin为顶级项目。其发展之快可谓迅猛,搭上了基于大数据的OLAP快车,同时也感慨开源之伟大与贡献.
老样子,一言已概之,Kylin官网(不敢恭维啊,文档宣传也要做做啊)介绍说,Kylin是一个开源分布式分析引擎,提供了基于Hadoop的超大型数据集(TB/PB级别)的SQL接口以及多维度的OLAP分布式联机分析。
上架构图:
可以看到中华文化之麒麟,赞一下!很清晰的架构图,底层存储使用HBase, 数据输入以及Cube Building基于Hive, 中间数据存储HDFS, On Top of 核心引擎之上,提供了REST API, SQL Based Toll / JDBC/ODBC等。右边还有其核心基于HBase的低延迟OLAP Cube;什么叫低延迟,Kylin官方数据给出数百亿行数据查询延时需要保持在亚秒级别!Niubility!其实得益于HBase.
官网给出了几个简单步骤作为事例:
1.从star schema中识别一组Hive表
2.基于Hive表,offline batch构建cube
3.使用sql或者REST API, JDBC, ODBC查询
Kylin平台的设计思路其实并非全新,在过去关系数据库大行其道之日早有,简单来讲其思路就是把预先计算完成的结果保存起来以备分析查询, 利用所有可能纬度组合为每个层次生成cuboid(基本方体),又或是在不同层次上对全部指数进行计算。
科普一下,cube作为核心概念,英文叫多维立方体,cube好比一个坐标系,每个Dimension代表一个坐标系,其每个点的对应值需要从相对应每一个坐标轴取值去获取,这个点cube中称作cell。
cube的基本概念:纬度于度量
纬度Dimension: 纬度提供了分类,表示一类分析角度,纬度,如时间,产品,地域等。
度量Measure:表示聚合分析的数字信息,其集合构成另一个特殊纬度,如数量,金额等。
Kylin的一个核心算法思想:一个n纬的完全Cube,1个n纬子立方体(Cuboid),n个(n-1)纬cuboid, n*(n-1)/2个(n-2)纬cuboid,n个纬cuboid,1个0纬cubid,总共2^n个字立方体组成;晕否?
举例来说,group by a, b结果,可以基于group by a,b,c的结果,通过去掉c后聚合得来,这样可以减少重复计算,当0纬度的cuboid计算出来的时候,真个
Cube的计算就大功告成!
拓扑图:
核心思想,从关系型到key-value。当Hive中数据规模超过百亿,万亿水平,一些简单的问题如查询2015年销售额等就会带来巨大的表扫描,时间也会无法接受。所以cube完全进行预计算,并对结果加以存储。来个术语叫做:
Relational to Key-Value, KV.
Kylin正是构建在这套理论之上,并且充分借用发挥Hadoop生态系统的威力。
1.从Hive中读取数据(HDFS)
2.运行offline job Map/Reduce实现预计算处理
3.将运算结果cube保存到HBase
4.借助Zookeeper进行任务协调
算法中充分利用了MapReduce的能力,处理中间的复杂排序以及shuffle。其中对HDFS操作较多,每一层的key-value都需要写到hdfs,所有计算结束后需要将其转成HBase的HFile格式并导入。
好了,看看Kylin的容貌以及如何创建cube吧:
呃,颜值一般般,恰如麒麟啊?
创建cube:
1.创建项目
2.导入hive
3.创建数据模型
4.创建cube
包括cube info,dimensions,measures等等。
5. offline job
Kylin已经在eBay内部生产使用验证,处理其内部庞大数据集。性能优势明显。未来应该会继续支持更多Hadoop, Spark生态圈,提供快速实时OLAP,以及更多BI工具整合。
好了,我们先到这里了,感谢前eBay参与开发使用Kylin的资深专家的指导与探讨。鉴于现学现卖,各位极客们包涵。我们下一篇继续大数据三剑客!!!
公众号: 技术极客TechBooster
相关推荐
Apache Kylin由eBay于2014年开源,并在2015年成为Apache顶级项目。它采用了Cube建模的方式,将复杂的OLAP(在线分析处理)查询转换为简单的Hadoop批处理任务,从而实现了对大数据的快速查询。Kylin通过预计算和存储...
Kylin由eBay开源并在2014年贡献给了Apache软件基金会,现在已经发展成为Apache顶级项目。 在“apache-kylin-3.0.1-bin.tar.gz”这个安装包中,包含了运行Kylin所需的所有基础组件。以下是一些关键知识点: 1. **...
标题中的"apache-kylin-1.5.4.1-bin.tar.gz"表明这是一个Kylin的1.5.4.1版本的二进制发行版,以tar.gz格式打包,通常包含了运行和部署Kylin所需的所有文件。 Apache Kylin的核心特性包括: 1. **高速查询**:Kylin...
- **2015年11月**:正式毕业成为 Apache 顶级项目,成为首个全部由中国团队贡献的顶级项目。 - **2016年3月**:Kyligence Inc 成立,由 Kylin 核心贡献者组建的创业公司正式成立。 #### 五、新一代架构及特性 ####...
002-韩卿-上海硅智 Apache Kylin-ASF顶级开源项目介绍.pptx
- Kylin是由 eBay 公司创建的,后来捐赠给Apache基金会,成为顶级项目。 - 它的核心设计理念是将大数据查询转换为小数据查询,通过预计算(Cube)实现快速响应。 2. **列式存储**: - Kylin采用列式存储方式,...
2015年10月,Apache Kylin成为Apache顶级项目。 Apache Kylin是一个开源的分布式分析引擎,它设计用来在Hadoop上提供SQL接口和多维分析(OLAP),支持超大数据集。其宗旨是为大数据提供快速的SQL查询能力,从而实现...
在 InfoWorld 的 Bossie Award 中,Apache Kylin 获得了最佳开源大数据工具奖,这是来自中国的第一个 Apache 顶级项目。 从 Apache Kylin 到 Kyligence 在 2013 年,李扬开始了 Apache Kylin 项目,并于 2014 年...
2. **下载**: 从Apache官方网站下载`apache-kylin-4.0.2-bin`压缩包,解压到你选择的目录。 3. **配置**: 编辑`conf/kylin.properties`文件,配置你的Hadoop、HBase、Hive等连接信息。确保所有路径和端口设置正确。...
Kylin最初由eBay创建,并于2014年贡献给了Apache软件基金会,自此成为了一个顶级项目。这个压缩包"apache-kylin-1.5.2.1-HBase1.x-bin.tar.gz"包含了Kylin的1.5.2.1版本,特别适配HBase 1.x版本。 Kylin的核心概念...
Kylin项目是目前唯一个来自中国的Apache顶级开源项目,体现了中国在国际开源社区中的影响力。 Kylin通过预先计算和存储查询过程中可能用到的多个维度组合(即cuboid)来实现这一提速。一个cuboid代表了一个维度组合...
- **正式毕业成为Apache顶级项目**: 2015年11月,这是首个全部由中国团队贡献的顶级项目。 - **Kyligence Inc成立**: 2016年3月,由Kylin核心贡献者组建的创业公司正式成立。 #### Apache Kylin在全球的应用案例 -...
Kylin最初由 eBay 开发,并于2015年贡献给了Apache软件基金会,成为顶级项目。本技术文档集合包含了多个关于Kylin的重要资料,包括权威指南、架构解析、实时OLAP实现、项目演进以及实际应用案例。 一、Apache Kylin...
2015年,Kylin加入Apache孵化器,2016年,Kylin毕业成为Apache顶级项目。2017年,Kyligence公司成立,提供基于Kylin的企业级产品和服务。 Kyligence Kyligence是Apache Kylin的企业级解决方案提供商,提供基于...
项目在2013年9月启动,同年10月进入Apache孵化器,并在2014年11月正式成为Apache顶级项目。2015年3月发布了第一个稳定版本v1.0,同年9月,Kyligence公司由Apache Kylin的核心成员创立,致力于提供企业级产品和服务。...
Kylin最初由eBay公司开发,并且后来捐赠给了开源社区,成为Apache顶级项目之一。 Tomcat 7.0.93是Tomcat 7系列的一个稳定版本,它支持Java EE 6规范,包括Servlet 3.0、JSP 2.2和EL 2.2。这个版本包含了多个性能...
Apache Kylin中文版权威指南,Apache Kylin是Hadoop...Apache Kylin也是中国人主导的、唯一的Apache顶级开源项目,在开源社区有世界级的影响力。 对于数据分析来说,挺有必要看的一本书,推荐给大家。 快快下载学习吧~