2019独角兽企业重金招聘Python工程师标准>>>
有人戏称学习大数据技术可堪称是‘战五渣’,前些周因项目需要测试安装了大数据OLAP平台KYLIN1.5.3,可堪称是‘渣外有渣’,由于互联网技术发展各种BLOG层出不穷,也有各种风波,csdn泄密,yahoo邮箱收回,自己之前的东西终将无奈失去,一段时间竞失去了自己的阵地,无地儿可写,现在http://git.oschina.net/支持无限量公私有仓创建,于是将GIT下的项目同步了过来,blog也将在此安家了。因为有一段时间 了,下面只是一些记忆分享,还望小心参考!!!
- KYLIN使用背景及简介:
大数据项目之初,一般会搭一套HADOOP集群和SPARK集群以备项目启动作准备。
而各公司的 数据项目 又有 不同 的侧重点:
-
一般互联网公司喜欢用大数据辅助业务成长,如互联广告,互联网金融等,通过数据分析实现精确推广和资源利用;
-
新兴大数据公司喜欢做平台向数据服务商方向发展,从数据采集,ETL,OLAP,报表生成,挖掘分析,BI一站式搞定,甚至结合云平台(如利用docker技术实现自动化分析挖掘服务编排部署等),智能硬件等和自己擅长领域的常用数据模型(水晶表格)或专利形成各自平台的特色;
-
传统公司转型的互联网+公司,更侧重于业务需求,如大多电商、O2O、旅游,短租等,更希望借助数据平台管理不同和不断扩张的业务线数据统一规整管理起来,形成自己的数据共享中心ODS或数据资产;
各公司项目据数据需求使用的技术和实现方式也不禁相同,周期,人力,资源投入,产出结果都各不相同,好了废话少说,而OLAP平台是做数据项目的一个普遍需求,也是最容易产出结果 的,据调研大多数OLAP是据于关系数据库做的,据于大据平台的OLAP平台,一个是druid,一个是KYLIN
Druid是一个用于大数据实时查询和分析的高容错、高性能开源分布式系统,旨在快速处理大规模的数据,并能够实现快速查询和分析
Apache Kylin(麒麟)是由eBay贡献给开源社区的大数据分析引擎,支持在超大数据集上进行秒级别的SQL及OLAP查询,目前是Apache基金会的孵化项目
前者并不是一个产品,而是一个中间件,需要一定的开发量,后者是一个简单数据分析平台,需要HADOOP+HIVE+HBASE平台做为基础的支持,利用cube(立方体)技术(加速),提供MOLAP(多维数据分析,不懂请自行百度),和基本sql分析和图表展示,当然KYLIIN对其做了很多优化,如cube建立相对更耗费资源算法上使用fast-cubing从逐层改进成逐段或逐块计算,相关技术和原理可参考:
官网:http://kylin.apache.org/blog/2015/08/15/fast-cubing/
或 Apache Kylin的快速数据立方体算法——概述
以及Kylin正式发布:面向大数据的终极OLAP引擎方案
另外kylin并不仅限于在HADOOP序列上运行,官网早有说明,参考:Fast Cubing on Spark in Apache Kylin
- KYLIN下载
下载:http://kylin.apache.org/download/ 有源码,二进制及HBASE和cdh版,此处因有hadoop和spark集群环境所以选择HBASE版(没想这是个未经测试常更新的版本,此为第一坑)
Latest Source Code Release
- apache-kylin-1.5.3-src.tar.gz [asc] [md5]
- Release Notes
- Git Tag: kylin-1.5.3
- Git Commit: 4cdc07ea34d0c2fb12951500e0fa28130659affb
For your convenience, three binary packages are compiled for different distribution, you can download and then follow the installation guide to install:
Binary Package (for running on HBase 0.98/0.99)
- apache-kylin-1.5.3-bin.tar.gz [asc] [md5]
- Git commit 4cdc07ea34d0c2fb12951500e0fa28130659affb
Binary Package (for running on HBase 1.x)
- apache-kylin-1.5.3-HBase1.x-bin.tar.gz [asc] [md5]
- Git commit 90a0c5baba0c0d8e7c1f84ea4b94f0886fa8c19e
Binary Package (for running on CDH 5.7)
- apache-kylin-1.5.3-cdh5.7-bin.tar.gz [asc] [md5]
- Git commit b46029fba7e3c5d387acb9ea37e788de5dcaf0be
- KYLIN环境支持
环境支持参考:http://kylin.apache.org/blog/2016/06/10/standalone-hbase-cluster/
环境的要求
启用独立HBase集群支持,检查基本的环境:
- 部署主要集群和集群hbase,确保工作正常
- 确保麒麟服务器可以访问集群使用hdfs shell使用完全限定符的路径
- 确保麒麟服务器可以提交先生工作主要集群,并且可以使用HIVE shell访问数据仓库,确保配置hadoop和HIVE指出主要的集群
- 确保麒麟服务器可以访问集群hbase使用hbase外壳,确保hbase指向hbase集群的配置
- 确保工作主要集群可以直接访问hbase集群
因kylin的对hbase版本有要求,而hbase和hive版本兼容问题,导致你可能需要重新搭建HADOOP集群,这里最终使用:hadoop2.7.1+hbase1.2.2+hive2.1.0,相关版本兼容请百度或参照董的blog,这里不在熬述。这里的坑就忽略了,终究是你对HADOOP的了解不深,学艺不精 --!
- KYLIN安装
Install Kylin
- Download latest Kylin binaries at http://kylin.apache.org/download
- Export KYLIN_HOME pointing to the extracted Kylin folder
- Make sure the user has the privilege to run hadoop, hive and hbase cmd in shell. If you are not so sure, you can run bin/check-env.sh, it will print out the detail information if you have some environment issues.
- To start Kylin, simply run bin/kylin.sh start
- To stop Kylin, simply run bin/kylin.sh stop
If you want to have multiple Kylin nodes please refer to this
After Kylin started you can visit http://your_hostname:7070/kylin. The username/password is ADMIN/KYLIN. It’s a clean Kylin homepage with nothing in there. To start with you can:
- Quick play with a sample cube
- Create and Build your own cube
- Kylin Web Tutorial
官网的步骤写的 多TMD简洁呀,你要认为安装一定刷刷的那就恭喜你,真正的踩坑才刚刚开始,因为是回忆,可能错误提示是没有完整截图了,尽量提供可搜索关键字,方便坑里的童鞋 参考:
首先是部署了,下载,解压,设KYLIN_HOME,NO! NO! NO!
1.首先还是测下你的HBASE和HIVE能真正开始工作 ,有些装了启了服务并不一定能正常服务(此坑严格意义上不能算是KYLIN的,不过对于使用SPARK不用HIVE的童鞋,首次安装HIVE够坑你一壶)
正确启动顺序及姿势:hadoop->hbase->hive,命令参考我测试过的本机大数据 启动脚本start_bigdata_cluster.sh 中命令顺序及格式 执行,安装建议逐条执行并jps检验,不正常的需stop或kill掉检查排除 !
友情提示:很多java,hadoop人员不知道 jps前的进程编号就是LINUX进程号,jps只是显示jvm相关的所有进程,所以ps -ef |grep了半天查不到hive是哪进程,可以直接kill -9 jps里的进程号
#!/bin/bash
$HADOOP_HOME/sbin/start-all.sh
$HADOOP_HOME/sbin/mr-jobhistory-daemon.sh start historyserver
$HBASE_HOME/bin/start-hbase.sh
nohup $HIVE_HOME/bin/hive --service metastore &
nohup $HIVE_HOME/bin/hive --service hiveserver &
$KYLIN_HOME/bin/kylin.sh start
$SPARK_HOME/sbin/start-all.sh
进程都启来了,开始验证hbase和hive互导数据正常否,这样才能确认服务可正常使用,参考:Hive与HBase实现数据互导
如不正常请查询确认HBASE和HIVE整合及安装配置相关内容排除,百度上大多说需要编译一个hive_hbase-handler.jar,经我测这个版本组合不需要 ,这步sql跑完,hbase,hive数据都有和正常可查,确认没有问题,就可以确定你的HADOOP,HBASE ,HIVE,ZK等配置无误,下面在开始解压安装KYLIN,排查KYLIIN本身的问题了
2.待续二篇。。。。