版权申明:转载请注明出处。
文章来源:http://bigdataer.net/?p=292
排版乱?请移步原文获得更好的阅读体验
1.概述
kylin是一款开源的分布式数据分析工具,基于hadoop之上的sql查询接口,能支持超大规模的数据分析。响应时间在亚秒级别,其核心是预计算,计算结果存放在hbase中。
2.特性
- 可扩展超快OLAP引擎:
Kylin是为减少在Hadoop上百亿规模数据查询延迟而设计 - Hadoop ANSI SQL 接口:
Kylin为Hadoop提供标准SQL支持大部分查询功能 - 交互式查询能力:
通过Kylin,用户可以与Hadoop数据进行亚秒级交互,在同样的数据集上提供比Hive更好的性能 - 多维立方体(MOLAP Cube):
用户能够在Kylin里为百亿以上数据集定义数据模型并构建立方体 - 与BI工具无缝整合:
Kylin提供与BI工具,如Tableau,的整合能力,即将提供对其他工具的整合 - 其他特性:
Job管理与监控
压缩与编码
增量更新
利用HBase Coprocessor
基于HyperLogLog的Dinstinc Count近似算法
友好的web界面以管理,监控和使用立方体
项目及立方体级别的访问控制安全
支持LDAP
3.相关概念
3.1 Fact Table(事实表):
事实表是指包含了大量不冗余数据的表,其列一般有两种,分别为包含事实数据的列,包含维表foreign key的列。
3.2 Lookup table:包含了对事实表的某些列扩充说明的字段。
3.3 Dimenssion Table(维表):
由fact table和lookup table 抽象出来的表,包含了多个相关的列,提供对数据不同维度的观察,其中每列的值的数目称为cardinatily。
3.4 model:用来定义用户需要使用的hive表名,及所包含的维度列、度量列、partition列和date格式。
3.5 cube:用来定义某具体查询时会涉及到的维度列及相互之间的关系(如层级关系)、度量列的具体类型(如max,min,sum)等,一个model下可存在多个cube。
更多文章请关注微信公众号bigdataer