本地部署Zeppelin集成Kylin制作数据分析
通过Kylin
自带的简单图表展示来进行数据分析的你是否觉得还不够过瘾?想在酷炫的仪表盘上进行数据分析?今天就给大家带来一款上手较快,简单易用的数据驱动式Notebook工具——Apache Zeppelin
。将Zeppelin
与Kylin 集成后,你就可以通过它来定制你的数据可视化报告,更直观地体验Kylin
的分析“神”速啦~
与Kylin
一样, ApacheZeppelin
也是 Apache 软件基金会的顶级项目,是一款基于Web的Notebook(类似于IPython的Notebook),支持友好交互式的数据分析体验,原生就支持Spark、Scala、SQL、Shell、Markdown等编程或脚本语言,可以访问其官方网站
Apache Zeppelin
了解更多的信息。
安装Zeppelin
Zeppelin
也有一套类似Kylin
的可插拔框架机制,为不同的编程或脚本语言提供对应的解释器接口,实际使用过程中通过(%+解释器名称)来识别,因此在下载页面可看到有两个不同的版本:
- all 版本:软件包里面包含
Zeppelin
支持的所有编程语言的解释器。 - netinst 版本:软件包里面只包含了Spark、Shell等基础编程语言的解释器,其它语言解释器可按需安装。
netinst
的含义即是通过网络安装。
建议下载 netinst 版本的软件包,其它编程或脚本语言可通过插件安装方式扩展,通过
SSH
终端工具上传到虚拟电脑,或者直接在虚拟电脑上通过wget/curl
命令下载到本地。
然后,解压Zeppelin
软件包到自定义的安装目录下面,进入到 conf 文件夹下,将原有的zeppelin-site.xml.template
配置文件拷贝另存名称为zeppelin-site.xml
文件。该文件中主要包括Zeppelin
服务相关的配置项,如对外访问端口默认为**8080**
,可修改成自定义的端口号,其它参数配置也可按实际情况进行修改。更加详细的参数配置说明,可访问官方提供的说明
zeppelin-configuration
。完成配置参数自定义修改后,重新切换到Zeppelin
安装目录,执行如下的命令,便以后台常驻形式启动Zeppelin
服务:
|
|
最后,打开浏览器在地址栏中输入:http://虚拟电脑IP地址:8080/,敲下回车键,即可成功访问和使用Zeppelin
服务。
集成Kylin
手动添加Kylin
的解释器,在Zeppelin
的安装目录下执行如下的命令进行安装操作,安装完成后需要重启Zeppelin
服务。
|
|
然后,对Kylin
的解释器进行相关配置,通过浏览器访问并打开Zeppelin
的Notebook 页面,在页面左上角的菜单进入到解释器的配置页面找到Kylin
标题,将Kylin
REST API 相关的信息进行配置,如 API 地址、用户名、密码等信息,可参考下图所示:
配置解析器
最后,可创建一个简单的 Notebook 进行初步的验证。创建新的Notebook
需要填充2个关键的参数:Note Name(支持目录级创建),默认的解释器类型(不需要添加 %+ 解释器,这里选取Kylin
),如下图所示:
创建Notebook
接着在代码段输入查询SQL
语句,点击右上角的执行按钮即可得到如下图所示的结果:
制作仪表盘
设计定制化的数据报表之前,需要先来熟悉下Zeppelin
的 Notebook UI 界面布局。前面集成Kylin
操作中已经提及到创建 Notebook 的操作,正如“创建 Notebook”图中所示,通过 Notebook 下拉菜单,可以有如下的操作:
- Create new notebook
- Filter
- Folder/notebook
Zeppelin
的Notebook
是由不同的段落(卡片)组合而成的,创建好一个新的Notebook
后,默认也会创建一个新的卡片,执行查询后在界面上可清晰看到如下图所示的区域划分:
Notebook 区域划分:
- 绿色: 功能区域,包括执行、展开/收缩、显示/隐藏、设置等操作
- 红色: 代码(SQL 语句)编辑区域
- 黄色: 可视化显示类型区域,切换不同的显示方式
- 黑色: 结果显示设置区域,针对不同的显示效果做相应的设置调整
- 蓝色: 可视化结果显示区域
注:Zeppelin 的卡片不支持直接拖拽排列布局,需要通过功能区来操作(或是快捷键按钮),关于功能区域各按钮作用说明可参考官方网站说明: explore_ui.html#note-toolbar 。
在了解清楚Zeppelin
Notebook 的布局和使用后,可得知通过不同卡片的组合就能轻松实现定制化的数据报表,那么只需要根据自己的想法来创建不同类型的数据卡片,最终形成与自己想法一致的数据仪表盘,通过Zeppelin
的 Report 模式发布后可直接访问,如下图所示。
扩展插件
Zeppelin 自带的可视化图形并不是很丰富,只有常见的 5 种类型,包括有表格、柱形图、饼图、面积图、折线图和散点图。这些图形常常不能满足我们做定制化报表的需求,Zeppelin 提供了基于 Helium 框架来丰富可视化组件的方式,扩展操作也是相当的方便,在页面右上角的下拉菜单中找到 Helium,点击跳转到 Helium 可视化组件列表页面。浏览并找到所需要的可视化类型,点击右侧的 Enable 按钮并在弹出的窗口中点击 OK 按钮,稍等一会便可完成新的可视化组件的扩展,如下图所示:
注意,新开启的可视化组件需要重启后才能生效,在Zeppelin
安装目录下执行如下命令进行重启,然后重新打开 Notebook,在卡片的功能区上面便可查看到新可视化组件按钮。
|
|
总结
通过Kylin+Zeppelin
集成来制作定制化数据报表,你能发现“麒麟”神兽除具有神速以外,还有强大的可扩展性能与BI工具友好的对接。除了本文中介绍到的Zeppelin
之外,Kylin
还能对接很多 BI工具,比如:Superset
、CBorad
、Tableau
、Power BI
、 帆软 BI
、永洪 BI
、SmartBI
等等。甚至,你还可以根据自身的需求,定制开发个性化的数据报表平台。用一句时髦的话来说,就是“没有做不到的,只有你想不到的”。