zeppelin简介

 Flink SQL的默认开发方式是通过Java/Scala API编写,与纯SQL化、平台化的目标相去甚远。目前官方提供的FlinkSQL Client仅能在配备Flink客户端的本地使用,局限性很大。而Ververica开源的Flink SQL Gateway组件是基于REST API的,仍然需要二次开发才能供给上层使用,并不是很方便。鉴于有很多企业都无法配备专门的团队来解决Flink SQL平台化的问题,那么到底有没有一个开源的、开箱即用的、功能相对完善的组件呢?答案就是本文的主角——Apache Zeppelin。Zeppelin是基于Web的交互式数据分析笔记本,支持SQL、Scala、Python等语言。Zeppelin通过插件化的Interpreter(解释器)来解析用户提交的代码,并将其转化到对应的后端(计算框架、数据库等)执行,灵活性很高。

zeppelin安装

1.下载zeppelin-0.9.0-bin-all.tgz

https://apache.website-solution.net/zeppelin/zeppelin-0.9.0/zeppelin-0.9.0-bin-all.tgz
https://mirror-hk.koddos.net/apache/zeppelin/zeppelin-0.9.0/zeppelin-0.9.0-bin-all.tgz

2.解压zeppelin-0.9.0-bin-all.tgz

tar -zxvf zeppelin-0.9.0-bin-all.tgz

3.修改zeppelin配置文件:conf 文件夹下面的 zeppelin-site.xml 和 zeppelin-env.sh

cp zeppelin-site.xml.template zeppelin-site.xml
vi zeppelin-site.xml

<!-- 服务地址。默认为127.0.0.1,改为0.0.0.0使得可以在外部访问 -->
<property><name>zeppelin.server.addr</name><value>0.0.0.0</value><description>Server binding address</description>
</property><!-- 服务端口。默认为8080,如果已占用,可以修改之 -->
<property><name>zeppelin.server.port</name><value>18080</value><description>Server port.</description>
</property>

cp zeppelin-env.sh.template zeppelin-env.sh
vi zeppelin-env.sh

# JDK目录
export JAVA_HOME=/opt/jdk1.8.0_172
# Hadoop配置文件目录
export HADOOP_CONF_DIR=/etc/hadoop/hadoop-conf

3.至此,最基础的配置就完成了。

运行bin/zeppelin-daemon.sh start命令,返回Zeppelin start [ OK ]的提示之后,
就可以访问<服务器地址>:18080,表示Zeppelin服务启动成功。

4.进一步配置,生产也可以使用,修改完重启zeppelin。

 <!-- 将Notebook repo更改为HDFS存储 -->
<property><name>zeppelin.notebook.storage</name><value>org.apache.zeppelin.notebook.repo.FileSystemNotebookRepo</value><description>Hadoop compatible file system notebook persistence layer implementation, such as local file system, hdfs, azure wasb, s3 and etc.</description></property><!-- Notebook在HDFS上的存储路径 -->
<property><name>zeppelin.notebook.dir</name><value>/zeppelin/notebook</value><description>path or URI for notebook persist</description>
</property><!-- 启用Zeppelin的恢复功能。当Zeppelin服务挂掉并重启之后,能连接到原来运行的Interpreter -->
<property><name>zeppelin.recovery.storage.class</name><value>org.apache.zeppelin.interpreter.recovery.FileSystemRecoveryStorage</value><description>ReoveryStorage implementation based on hadoop FileSystem</description>
</property><!-- Zeppelin恢复元数据在HDFS上的存储路径 -->
<property><name>zeppelin.recovery.dir</name><value>/zeppelin/recovery</value><description>Location where recovery metadata is stored</description>
</property>

flinksql on zeppelin

环境:

     flink 1.12.2hadoop 3.0.0hive 2.1.1zeppelin 0.9.0

配置flink interpreter

配置Interpreter 有以下2种方式(通常情况下我们需要结合这两种配置方式):

在Interpreter 页面进行全局配置
在Note页面进行Note级别的配置

1.Interpreter 页面配置

打开zeppelin界面,点击用户,找到 interpreter菜单:

点击首页用户名区域菜单中的Interpreter,搜索flink,就可以看到参数列表:

首先,将Interpreter Binding模式修改为Isolated per Note,如下图所示:

在这种模式下,每个Note在执行时会分别启动Interpreter进程,类似于Flink on YARN的Per-job模式,最符合生产环境的需要。

需要配置的参数:
Flink on YARN参数

FLINK_HOME:Flink 1.12.2所在的目录;
HADOOP_CONF_DIR:Hadoop配置文件所在的目录;
flink.execution.mode:Flink作业的执行模式,指定为yarn以启用Flink on YARN;
flink.jm.memory:JobManager的内存量(MB);
flink.tm.memory:TaskManager的内存量(MB);
flink.tm.slot:TaskManager的Slot数;
flink.yarn.appName:YARN Application的默认名称;
flink.yarn.queue:提交作业的默认YARN队列。

Hive Integration参数

HIVE_CONF_DIR:Hive配置文件(hive-site.xml)所在的目录;
zeppelin.flink.enableHive:设为true以启用Hive Integration;
zeppelin.flink.hive.version:Hive版本号。

复制与Hive Integration相关的依赖到$FLINK_HOME/lib目录下,包括:

flink-connector-hive_2.11-1.12.2.jar
hive-exec-2.1.1.jar

2.Note级别配置:

 Note 级别的配置只有在当Interpreter binding模式选择 Isolated Per Note的时候才起作用。
Note 级别的配置一般放在每个Note的第一个Paragraph,是通过一个特殊的 Inline Configuration
Interpreter (%flink.conf) 来实现的。一般每个Note都有自己对应的Job和场景,我们需要对每个Note做特殊的配置,比如
flink.execution.packages, flink.udf.jars, flink.yarn.appName 等等。Note级别的配置优先
级比 Interpreter的全局配置要高,所以比如你可以在Note配置 FLINK_HOME 来覆盖Interpreter
页面里配置的 FLINK_HOME。下图是一个简单的例子:

3.测试Flink SQL on Zeppelin

创建一个Notebook,Interpreter指定为flink。然后写入Paragraph,通常第一个是job configuration:
接下来创建第二个:
最后运行即可。

flinksql on zeppelin安装及使用相关推荐

  1. zeppelin安装配置

    zeppelin安装配置 一.下载安装包 二.上传并解压 三.修改配置文件 四.启动zeppelin 五.配置hive解释器 六.使用Zepplin的hive解释器 一.下载安装包 http://ze ...

  2. Zeppelin安装(Docker版)

    Zeppelin安装(Docker版) docker pull apache/zeppelin:0.10.0 docker run -d -u root --privileged --name zep ...

  3. Zeppelin安装教程

    我是在虚拟机中安装 虚拟机:virtualbox 系统:centos7 jdk1.7 zeppelin0.6.2 spark-2.0.2-bin-hadoop2.7 hadoop-2.7.3 scal ...

  4. zeppelin安装和配置(保姆级教程)

    zeppelin简单介绍: Zeppelin是一个基于Web的notebook,提供交互数据分析和可视化.支持多种数据引擎,如hive.spark等.还支持多种编程语言,如python.Scala等. ...

  5. zeppelin oracle,Apache Zeppelin安装及使用

    Apache Zeppelin介绍:A web-based notebook that enables interactive data analytics.  You can make beauti ...

  6. zeppelin安装

    1.上传zeppelin文件 我使用的版本为zeppelin-0.8.1-bin-all.tgz 2.解压至/opt下 tar -zxvf zeppelin-0.8.1-bin-all.tgz -C ...

  7. 数据可视化工具zeppelin安装

    介绍 zeppelin主要有以下功能 数据提取 数据发现 数据分析 数据可视化 目前版本(0.5-0.6)之前支持的数据搜索引擎有如下 安装 环境 centOS 6.6 编译准备工作 sudo yum ...

  8. Apache Zeppelin安装和启动

    目录 1. 软件安装版本说明 2. 下载安装包 3. 修改Zeppelin配置 3.1 修改 zeppelin-site.xml 3.2 修改zeppelin的内存大小

  9. centos7下zeppelin安装配置

    一.简介 zepplin 和 jupyter 均是基于web 的notebook风格的交互数据分析和协作平台.均支持ipython,spark,python等最常用的数据分析工具:均支持local模式 ...

最新文章

  1. mysql查询各个知识点
  2. REDIS的几个测试结果
  3. Ansible — Overview
  4. 网站推广——网站推广专员浅析如何轻松完成网站关键词优化?
  5. POJ 3748:位操作
  6. 中秋佳节共团圆,送3本Python书
  7. 新用户时代最大的机会就是分享经济
  8. SplObserver观察者模式
  9. python斐波那契递归_Python递归斐波那契示例
  10. [JAVA]使用Jersey处理Http协议中的Multipart
  11. Django 安装使用
  12. Python Scrapy 爬虫框架实例(一)
  13. MAC 电脑安装jdk
  14. c语言专业面试问题,c语言面试问题(共3篇).doc
  15. 上古卷轴5传奇版LE与重制版SE的区别(LE Vs SE)
  16. 如何深入掌握C语言指针(详解)
  17. 织梦制作二级全国分站教程,多城市分站插件代码调用
  18. 【web前端(九)】html_行高设置
  19. 2013年全国硕士研究生入学统一考试英语(一)和(二)考试大纲新增的60个词汇详解
  20. Portal-Gateway路由网关

热门文章

  1. jboss4中手动部署EJB(jboss4.0.2+ejb2.0+j2sdk5.0+xpsp2)
  2. Map与WeakMap
  3. dreamweaver开源_Dreamweaver的7种开源替代品
  4. 如何在Linux上安装设备驱动程序
  5. 大牛用emacs还是vim_Emacs,Vim还是其他?
  6. 印度软件和中国软件工程师_印度社区如何支持隐私和软件自由
  7. 评选 cms_十大评选和编辑精选:12月评论
  8. drush 账号 密码_工作流程和效率极客讨论Drush和Drupal
  9. 为什么不邀请我参加会议?
  10. HTML5 Canvas 图形组合