Kylin简介

Kylin是什么?

Apache Kylin是一个开源的分布式分析引擎,提供Hadoop/Spark之上的SQL查询接口以及多维分析(OLAP)能力以及支持超大规模数据,最初由eBay开发并贡献给开源社区。它能在亚秒内查询巨大的Hive表。

Kylin的特点是什么?

Kylin的特点是包括支持Hive接口,支持超大规模数据集,亚秒级相应,可伸缩,高吞吐量,BI工具集成。
1)标准SQL接口;
2)支持超大数据集;
3)亚秒级响应;
4)可伸缩,高吞吐,每秒70个查询;
5)可以与Tableau,Excel,PowerBI通过ODBC集成,与Saiku,BIRT等通过jdbc集成,与JavaScript,Web网页通过RestAPI集成。还可以通过zepplin插件访问kylin服务。

Kylin的架构是什么?

Kylin简介_第1张图片

REST Server,是一套面向应用程序开发的入口点,旨在针对Kylin平台的应用开发工具。此类应用程序可以提供查询获取结构,出发cube构建任务,获取元数据以及获取用户权限等。另外可以通过RESTful接口实现SQL查询。

查询引擎,当cube准备就绪后,查询引擎就能够获取并解析用户查询,它随后与系统中的其它组件进行交互,从而向用户返回相应的结果。

Routing,负责将解析的SQL生成执行计划转换成cude缓存的结构,cube是通过预计算缓存在hbase中。

MetaData,

Cube Build Engine,

Kylin构建cube的算法有哪些?

1) 逐层计算,只需要读一次原始数据。

缺点,当cube有比较多的维度时,所需的MR任务也增加,由于Hadoop的任务调度需要额外资源,反复提交任务会造成额外开销。对hdfs操作读写较多,中间数据要被写到hdfs上。所有计算完成后,kylin需要做一些额外的计算将这些文件转换成HBASE的hfile格式以导入到HBASE中。

Kylin简介_第2张图片

2)快速构建算,也成为了逐段算法。

Kylin简介_第3张图片

Kyllin优化建议:

1)构建很多维度的cube时,注意进行剪枝操作(减少cubeid的数量)。使用聚合组。

Kylin简介_第4张图片

A年,B年,C日

Kylin简介_第5张图片

Kylin简介_第6张图片2)并发粒度优化

Kylin简介_第7张图片

你可能感兴趣的:(kylin,大数据)