打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
zeppelin的介绍与使用

第1章 概述

1.1 什么是zeppelin

Zeppelin是一个基于Web的notebook,提供交互数据分析和可视化。后台支持接入多种数据处理引擎,如spark,hive等。支持多种语言: Scala(Apache Spark)、Python(Apache Spark)、SparkSQL、 Hive、 Markdown、Shell等。
开发者可以通过实现更多的解释器来为Zeppelin添加数据引擎。官方支持的执行引擎用一幅图可以清晰描述执行引擎的作用就是执行笔记中的与引擎相对应的代码,不同的引擎也会有不同的配置,引擎的详细说明参考官方文档:

http://zeppelin.apache.org/docs/0.6.2/manual/interpreters.html

1.2 原理分析

Zeppelin中最核心的概念是Interpreter,interpreter是一个插件允许用户使用一个指定的语言或数据处理器。每一个Interpreter都属于换一个InterpreterGroup,同一个InterpreterGroup的Interpreters可以相互引用,例如SparkSqlInterpreter 可以引用 SparkInterpreter 以获取 SparkContext,因为他们属于同一个InterpreterGroup。当前已经实现的Interpreter有spark解释器,python解释器,SparkSQL解释器,JDBC,Markdown和shell等。下图是Zeppelin官网中介绍Interpreter的原理图。

Interpreter接口中最重要的方法是open,close,interpert三个方法,另外还有cancel,gerProgress,completion等方法。

Open 是初始化部分,只会调用一次。 Close 是关闭释放资源的接口,只会调用一次。 Interpret 会运行一段代码并返回结果,同步执行方式。 Cancel可选的接口,用于结束interpret方法 getPregress 方法获取interpret的百分比进度 completion 基于游标位置获取结束列表,实现这个接口可以实现自动结束。

第2章 部署

2.1下载

为了快速使用Zeppelin,可下载官方编译好的可执行版本,该版本包括两种类型,完整Interpreter版本,基础Interpreter版,下载基础版本即可,以后如有需要,可对Interpreter进行单独安装。
下载地址:http://zeppelin.apache.org/download.html。安装以及启动步骤如下

2.2 Apache Zeppelin安装

 解压tar -zxvf zeppelin-0.6.2-bin-netinst.tgz
 启动进程:zeppelin-0.6.2-bin-netinst/bin# ./zeppelin-daemon.sh start
 访问页面:http://localhost:8080
 停止进程:zeppelin-0.6.2-bin-netinst/bin# ./zeppelin-daemon.sh start

2.3 HDP安装

Add service


第3章 使用案例

3.1 集成spark

3.1.1新建一个spark node

本次示例在HDP 上的zeppelin操作,所以创建完spark node 无需其他配置,直接使用即可:

3.1.2创建一个测试文本
[root@node1 module]# vi city_info.txt
1       北京    华北
2       上海    华东
3       深圳    华南
4       广州    华南
5       武汉    华中
6       南京    华东
7       天津    华北
8       成都    西南
9       哈尔滨  东北
10      大连    东北
11      沈阳    东北
12      西安    西北
13      长沙    华中
14      重庆    西南
15      济南    华东
16      石家庄  华北
17      银川    西北
18      杭州    华东
19      保定    华北
20      福州    华南
21      贵阳    西南
22      青岛    华东
23      苏州    华东
24      郑州    华北
25      无锡    华东
26      厦门    华南

上传到HDFS 指定路径:/user/zeppelin/test/city_info.txt 下

3.1.3 运行spark shell语句

val peopleRDD = sc.textFile(“hdfs://node1:8020/user/zeppelin/test/city_info.txt”)
case class People(id:Int,city:String,area:String)
peopleRDD.map{x=> var fields=x.split("\t");People(fields(0).toInt,fields(1),fields(2))}.toDF.show

这样我们就可以在web页面上执行spark-shell的操作了

3.2 集成mysql

3.2.1 创建一个jdbc的node

3.2.2 配置jdbc的Interpreter

如果zeppelin节点没有mysql驱动环境,请注意添加依赖包:

3.2.3 操作库和表数据


3.3 集成hive

3.3.1 创建一个interpreter

配置主要的hive jdbc参数

3.3.2 创建一个hive node

Create New Node – Default Interpreter(选择上一步创建的hive)

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
「Spark」Spark SQL Thrift Server运行方式
大数据技术应用列表Top10
微软在云计算、数据、人工智能方面保持领先
Apache Kylin的入门安装
一文读懂Hadoop、HBase、Hive、Spark分布式系统架构
windows下pyspark访问hive所需的环境搭建
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服