zeppelin的介绍与使用

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方式使用ambari安装(第二种安装方式)

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)

在这里插入图片描述

  • 19
    点赞
  • 85
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值