惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

腾讯CDC
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
博客园 - 叶小钗
人人都是产品经理
人人都是产品经理
博客园 - 聂微东
The Cloudflare Blog
爱范儿
爱范儿
阮一峰的网络日志
阮一峰的网络日志
WordPress大学
WordPress大学
小众软件
小众软件
博客园 - 三生石上(FineUI控件)
Last Week in AI
Last Week in AI
Jina AI
Jina AI
V
V2EX
罗磊的独立博客
V
Visual Studio Blog
A
About on SuperTechFans
IT之家
IT之家
P
Proofpoint News Feed
B
Blog
博客园 - Franky
Blog — PlanetScale
Blog — PlanetScale
Google DeepMind News
Google DeepMind News
Y
Y Combinator Blog

热爱生活与梦想

迁移LeanCloud的Waline评论数据到TiDB/Neon 25年江浙地区暑假自驾游之感慨 使用阿里云灵码继续完成构建 SSL 证书管理器 亲手给儿子做的棒棒糖摩天轮六一礼物 使用腾讯云 CodeBuddy 构建 SSL 证书管理器 修复代码块默认高度相关缺陷 HugoNexT4.7.2 新功能和升级提示 改善代码块折叠和选中功能 支持Github风格的警告样式 新增音乐短代码功能支持 给文章添加摘要和过期提示功能 回顾24年的过去总结 修复Mathjax行内显示公式的问题 给Hugo文章增加阅读更多跳转的锚点定位功能 Win10隐匿的VPN设置和L2TP连接常见错误 Go语言中“糟糕”的日期时间格式化设计 DaoCloud道客提供的免费Docker镜像代理服务 感谢万能淘宝让自己吃到喜欢的美食 WSL运行时遇到未知异常错误无法使用 隐藏的换行符导致Base64加密解密失败 MySQL自带客户端直接免密登录操作 Linux系统中删除目录软链接的注意项 Java程序调用外网API时CA问题 如何不关机重启WSL2恢复虚拟服务 在Windows上安装Podman容器平台做虚拟化 记一次无法弹出移动硬盘的记录 为友情链接添加自动检测脚本 重新激活Github的2FA认证 Linux中使用tar压缩命令排除文件 继续小米手环的健康生活之旅
本地搭建Kylin运行环境实践
凡梦星尘 · 2019-04-09 · via 热爱生活与梦想

Apache Kylin是运行在Hadoop集群之上的OLAP数据分析应用服务,在Hadoop生态中,大家对它的认可度和赞誉都很高,全球有超过1000+企业都在使用“麒麟”(Apache Kylin)这只神兽。而Hadoop集群的部署又并非易事,那这是否就阻碍了我们探究Apache Kylin的步伐呢?答案是否定的,通过借助强大的虚拟技术,在自己本地就能体验到“麒麟”的魅力,那么接下来就让我们一起进入“麒麟”的数据世界。

Kylin大数据生态定位

部署前需要准备的材料有:

  • 一台8核,16G内存及以上配置的电脑
  • Oracle VirtualBox
  • Cloudera QuickStart VM
  • OracleJDK 1.8 / OpenJDK 8
  • Apache Kylin 2.6.1(CDH版本)

开启VT-x

Intel VT-x完整名称是Intel Virtualization Technology,就是Intel虚拟技术,开启它可以让硬件平台同时运行多个操作系统,是虚拟机软件运行必备的技术之一。如果禁用,会在使用虚拟软件时弹出“此主机支持 Intel VT-x,但 Intel VT-x 处于禁用状态”这个提示,解决办法就是进BIOS开启Intel Virtualization Technology选项,保存后重启电脑即可。

开启VT-x虚拟技术

注:不同类型的主板选项会有差异,可自行 Google 搜索下。

安装虚拟机

在此介绍的是Oracle旗下一款开源免费虚拟机软件,大家可到其官方网站: http://www.virtualbox.org 进行下载,关于其的安装与使用可自行Google搜索学习,其实也非常的简单其乎就是“傻瓜式”的操作。顺便提下,Oracle 的VirtualBox天生就是支持中文的哟。

导入CDH虚机镜像

通过对比几款不同的Hadoop虚拟集成环境后,最终选择了 Cloudera 提供的 QuickStart VM 镜像。此VM提供了最小可用环境,并非再一次通过Docker虚拟化出来的,这样便减少了不必要的资源开销,操作性上也是更贴合Linux原生体验。大家可访问其官方下载渠道 quickstart_vms_5-13 获取最新的版本,注意选择对应的虚拟机支持类型。

注:QuickStart VM 所涉及到的账户与密码默认都是 cloudera。

导入QuickStart VM

打开 Oracle VirtualBox 软件后在其主界面上点击左上方的管理菜单,找到导入虚拟电脑选项(或是使用 Ctrl+I 快捷组合键),点击进入并选取准备好的 QuickStart VM 文件,点击下一步配置虚拟电脑的资源。可根据实际情况分配资源,建议使用4核,8G内存及以上配置。同时为方便管理可自定义虚拟电脑的名称,如上图所示。最后点击导入按钮,导入过程大约10分钟左右,具体视机器资源而定。

配置环境

启动虚拟电脑之前还需要修改一下网络配置,默认为NAT网络类型,无法与本地宿主机进行通讯,建议改用桥接网络类型(此连接模式有个缺点,即宿主机断网后便无法虚拟电脑进行通讯)。至此虚拟电脑的所有配置就准备就绪,点击Oracle VitrualBox主界面上的快捷启动按钮启动虚拟电脑,启动过程大约等待4~6分钟,然后便可进入熟悉的Linux系统桌面,如下图所示。系统默认已经启动所有Hadoop生态服务,但不包括CM组件,如无特殊也不建议开启,因为需要更多的资源。

quick-start-VM-Desktop

考虑本地机器的资源有限,因此只需要开启Apache Kylin运行的基础服务,如HDFS,HBase,Hive,ZooKeeper等相关的服务。打开终端并切换到root用户下,执行如下的命令关闭开机自启动服务,最后重新启动虚拟电脑。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
[root@quickstart ~]# chkconfig flume-ng-agent off
[root@quickstart ~]# chkconfig hadoop-yarn-proxyserver off
[root@quickstart ~]# chkconfig hue off
[root@quickstart ~]# chkconfig htcacheclean off
[root@quickstart ~]# chkconfig impala-catalog off
[root@quickstart ~]# chkconfig impala-state-store off
[root@quickstart ~]# chkconfig oozie off
[root@quickstart ~]# chkconfig solr-server off
[root@quickstart ~]# chkconfig spark-history-server off
[root@quickstart ~]# chkconfig sqoop-metastore off
[root@quickstart ~]# chkconfig sqoop2-server off
[root@quickstart ~]# chkconfig spark-history-server off

建议使用非root用户来运行Apache Kylin应用服务,因此需要创建个新的Linux系统用户,比如:kylin。另外从Apache Kylin 2.5+版本开始需要JDK 1.8+的运行环境支持,通过SSH客户端工具把准备好的Oracle JDK1.8/OpenJDK 8Apache Kylin 2.6.1的安装包上传到虚拟机环境中,并在当前kylin用户下配置JAVA的运行环境。

同时需要对HBase的JAVA_HOME变量做相应的调整,切换到root用户执行如下的命令,最后重新启动HBase相关的服务。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
[root@quickstart ~]# vi /usr/lib/hbase/conf/hbase-env.sh
# The java implementation to use.  Java 1.7+ required.
export JAVA_HOME=/usr/lib/java/jdk1.8.0_201
# Tell HBase whether it should manage it's own instance of Zookeeper or not.
export HBASE_MANAGES_ZK=false

[root@quickstart ~]# service hbase-master restart
[root@quickstart ~]# service hbase-regionserver restart
[root@quickstart ~]# service hbase-rest restart
[root@quickstart ~]# service hbase-thrift restart

然后解压Apache Kylin安装压缩包到自定义的目录下,参考官方的安装步骤 ylin-installation 进行相关配置。由于Cloudera QuickStart VM 提供的CDH 5.13版本中使用的是 JDK1.7版本,所以需要对${KYLIN_HOME}/conf目录下的kylin_job_conf.xmlkylin_job_conf_inmem.xml文件中增加如下的配置:

1
2
3
4
5
6
7
8
9
<property>
  <name>mapred.child.env</name>
  <value>JAVA_HOME=/usr/lib/java/jdk1.8.0_201</value>
</property>

<property>
  <name>yarn.app.mapreduce.am.env</name>
  <value>JAVA_HOME=/usr/lib/java/jdk1.8.0_201</value>
</property>

最后执行check-env.sh进行环境检测无误后,使用sample.sh脚本导入自带的示例数据,导入成功后再切换到${KYLIN_HOME}/bin目录下调用kylin.sh start命令启动。打开本地浏览器在地址栏输入:http://虚拟电脑IP:7070/kylin 进行访问,根据Apache Kylin官方网站的操作步骤进行相应Cube构建: kylin_sample 。构建完成好后,可使用官方提供SQL进行测验对比,如下2张图所示,1条普通的带去重和排序汇总SQL查询,Kylin仅花费了0.13s的时间,而Hive却耗费43s的时间,查询性能明显提升数十倍以上。

Hive Query Speed

Kylin Query Speed

怎么样!看到Apache Kylin如此之快的“神”速,是否也按捺不住想试一把,那就赶紧行动起来。下一次还会带来Kylin与Zeppelin整合做数据分析报告的精彩分享,欢迎持续关注。