首页 > 代码库 > Kylin安装部署

Kylin安装部署

一、安装准备

1、操作系统 Centos 7.x

2、时间问题

集群内所有节点时间一定要同步。

NTP、Chrony

3、用户

创建hadoop组和hadoop用户,并做ssh免密码登录

4、Hadoop HA集群

Hadoop 2.7.3

5、HBase

hbase 1.x

6、Hive

Hive 1.2.1,使用  mysql 存放元数据

7、准备目录

# mkdir /install

# cd /install

# chown -R hadoop:hadoop /install

8、kylin

kylin 1.6.0 这个版本支持hbase1.x版本

apache-kylin-1.6.0-HBase1.1.3-bin.tar.gz

$ tar xf apache-kylin-1.6.0-hbase1.x-bin.tar.gz  -C  /install

$ cd /install

$ mv apache-kylin-1.6.0-bin/ kylin

#代表在root用户下

$代表普通用户

二、环境变量配置

部署每个节点

hadoop用户的 .bashrc

export HADOOPROOT=/install

export HADOOP_HOME=$HADOOPROOT/hadoop

export ZOOKEEPER_HOME=$HADOOPROOT/zookeeper

export HBASE_HOME=$HADOOPROOT/hbase

export HIVE_HOME=$HADOOPROOT/hive1.2

export HCAT_HOME=$HIVE_HOME/hcatalog

export KYLIN_HOME=$HADOOPROOT/kylin

export CATALINA_HOME=$KYLIN_HOME/tomcat

export hive_dependency=$HIVE_HOME/conf:$HIVE_HOME/lib/*:$HCAT_HOME/share/hcatalog/hive-hcatalog-core-1.2.1.jar

PATH=$PATH:$HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$ZOOKEEPER_HOME/bin

PATH=$PATH:$HBASE_HOME/bin:$FLUME_HOME/bin:$HIVE_HOME/bin:$HCAT_HOME/bin

PATH=$PATH:$CATALINA_HOME/bin:$KYLIN_HOME/bin

export PATH

基本的配置已经做好了,安装从以下步骤开始

三、配置kylin

修改bin/kylin.sh

export KYLIN_HOME=/install/kylin

export HBASE_CLASSPATH_PREFIX=${tomcat_root}/bin/bootstrap.jar:${tomcat_root}/bin/tomcat-juli.jar:${tomcat_root}/lib/*:$hive_dependency:$HBASE_CLASSPATH_PREFIX

压缩问题

关于压缩的问题

本次不是用snappy,如果需要事先重新编译Hadoop源码,使得native库支持snappy

使用snappy能够实现一个适合的压缩比,使得这个运算的中间结果和最终结果都能占用较小的存储空间

1、 kylin.properties

1)设置Rest Server

kylin.rest.servers=192.168.56.201:7070

默认为PST,修改为中国时间

kylin.rest.timezone=GMT+8

2)不启用压缩,注释即可

#kylin.hbase.default.compression.codec=snappy(注释掉或者设置为None)

3)定义kylin用于MR jobs的job.jar包和hbase的协处理jar包,用于提升性能(添加项)。

kylin.job.jar=/installsoftware/ kylin-1.6.0/lib /kylin-job-1.6.0.jar

kylin.coprocessor.local.jar=/installsoftware/ kylin-1.6.0/lib/kylin-coprocessor-1.6.0.jar

 

2、kylin_job_conf.xml

不使用压缩

mapreduce.map.output.compress设置为false

mapreduce.output.fileoutputformat.compress 设置为false

3、kylin_hive_conf.xml

不使用压缩

hive.exec.compress.output 设置为false

四、启动服务

Kylin工作原理图

技术分享

 

支撑服务启动

1、首先看一下时间是否同步

2、启动3个节点的ZooKeeper

zkServer.sh start

start-dfs.sh

start-yarn.sh

或者start-all.sh

mr-jobhistory-daemon.sh start historyserver要到所有NM上启动,可以写成脚本

start-hbase.sh
> list

这里可以启动hive客户端看看

$ hive

> show tables;

检查

1、检查基础的服务

Hadoop、HBase、Hive、环境变量、工作目录

2、hive依赖检查

find-hive-dependency.sh

3、hbase依赖检查

find-hbase-dependency.sh

启动kylin

bin/kylin.sh start

停止过程

bin/kylin.sh stop

stop-hbase.sh

mr-jobhistory-daemon.sh stop historyserver

stop-yarn.sh

stop-dfs.sh

zkServer.sh stop

可以写成脚本

五、登录

http://node1:7070/kylin

技术分享

ADMIN/KYLIN登录

六、样例数据测试

启动kylin后,运行bin/sample.sh

查看sample.sh脚本内容

实际上操作的是sample_cube目录下的数据和脚本

技术分享

重启kylin服务

技术分享

 

 

看看hive和hbase

技术分享

Hive中kylin的元数据信息

技术分享

技术分享

默认有一个Cube定义,需要Build。

技术分享

 

 技术分享

Monitor中监视整个构建过程

技术分享

Cube构建成功后状态会变成Ready状态

技术分享

技术分享

构建Cube过程根据集群性能的不同而不同

七、查询时间对比

测试语句

select part_dt, sum(price) as total_selled, count(distinct seller_id) as sellers from kylin_sales group by part_dt order by part_dt;

select part_dt, sum(price) as total_selled, count(distinct seller_id) as sellers from kylin_sales where part_dt<2013-01-01 group by part_dt order by part_dt;

hive执行时间

Time taken: 168.643 seconds, Fetched: 365 row(s)

kylin中

第一次 1.33S

第二次 0.38s

第三次 0.33s

第四次 0.34s

看来有缓存

select part_dt, sum(price) as total_selled, count(distinct seller_id) as sellers from kylin_sales group by part_dt having sum(price)>1200 order by part_dt

到此Kylin的前期安装部署已经完毕

 

Kylin安装部署