0基础学员大数据系统学习资料(免费教程)
ApacheKylin是一个开源的分布式分析引擎,提供Hadoop之上的SQL查询接口及多维分析(OLAP)能力(可以把Kylin定义为OLAPonHadoop)。ApacheKylin于2015年11月正式毕业成为Apache基金会(ASF)顶级项目,是第一个由中国团队完整贡献到Apache的顶级项目。
ApacheKyiln构建在Hadoop等分布式计算平台之上,充分利用了MapReduce的并行处理能力和可扩展基础设施,高效地处理超大规模数据,可根据数据的规模实现架构的可伸缩。ApacheKylin作为OLAP引擎包含了从数据源(Hive/Kafka等)获取源数据,基于MapReduce构建多维立方体(Cube),并充分利用HBase的列式特性来分布式的存储立方体数据,提供标准SQL解析与查询优化,以及ODBC/JDBC驱动及RESTAPI等多个模块。可插拔的灵活架构,允许支持更多的数据源接入Kylin,也支持采用其它技术作为存储引擎。
大多数的Hadoop分析工具和SQL是友好的,所以ApacheKylin拥有SQL接口这一点就显得尤为重要。Kylin用的SQL解析器是开源的ApacheCalcite,支持几乎所有的SQL标准。Hive用的也是Calcite。
Kylin和其它SQLONHadoop的主要区别是预计算(离线计算)。用户在使用之前先选择一个HiveTable的集合,然后在这个基础上做一个离线的Cube构建,Cube构建完了之后就可以做SQL查询了。
用离线计算来代替在线计算,在离线过程当中把复杂的、计算量很大的工作做完,在线计算量就会变小,就可以更快的返回查询结果。通过这种方式,Kylin可以有更少的计算量,更高的吞吐量。
由于superset组件中需要和kylin进行交互,所以需要搭建kylin+cdh的开发环境。
可以从官方网站下载对应的组件,也可以从本书提供的套件里获取。
解压缩:
输入命令:/opt/
修改权限:
输入命令:sudochown-Rhdfs:hdfs/opt//
输入命令:sudoln-s/opt///opt/kylin
配置环境变量:
输入命令:vi~/.bashrc
会看到如下效果(实际的情况看本机而定):
Sourceglobaldefinitions
if[-f/etc/bashrc];then
./etc/bashrc
fi
addedbyHCatexportHCAT_HOME=/opt/cloudera/parcels/CDH/lib/hive-hcatalogaddedbykafkaexportKAFKA_HOME=/opt/cloudera/parcels//lib/kafkaaddedbyjavaexportJAVA_HOME=/usr/java/_144
添加代码块到环境。
刷新:
输入命令:source~/.bashrc
启动kylin:
输入命令:./
会显示如下结果:
Retrievinghadoopconfdir
KYLIN_HOMEissetto/opt/kylin
Retrievinghivedepency
Retrievinghbasedepency
Retrievinghadoopconfdir
Retrievingkafkadepency
RetrievingSparkdepency
KYLIN_JVM_SETTINGSis-Xms1024M-Xmx4096M-Xss1024K-XX:MaxPermSize=128M-verbose:gc-XX:+PrintGCDetails-XX:+PrintGCDateStamps-Xloggc:/opt/kylin/logs/:+UseGCLogFileRotation-XX:NumberOfGCLogFiles=10-XX:GCLogFileSize=64M
,run''
Checkthelogat/opt/kylin/logs/
WebUIisathttp://hostname:7070/kylin
访问UI:
输入命令:http://node10:7070/kylin/login
会看到如下效果。
导入官方提示用例:
输入命令:./
重启服务即可看到示例。