Apache Zeppelin支持Spark,Python的小试牛刀

版 本

  Apache Zeppelin:0.9.0
  Spark 2.3.3
  关于Apache Zeppelin-0.9.0的安装以及配置Spark-2.3.3请参考博客Apache Zeppelin-0.9.0安装配置Spark-2.3.3,这里不再重复累赘;

创建Note

  打开zeppelin网页端口,登录后,可以通过图1菜单栏Notebook下拉或者直接点击页面的Create new note创建Note,Note就是你写代码的编辑窗口,然后弹出图2,按要求编辑好;
在这里插入图片描述

图1 zeppelin登录后界面

在这里插入图片描述

图2 zeppelin创建新的Note命名

编写Note的Spark-SQL程序

  Note里面的代码是由一段一段(paragraph)组成的,当你写完一段运行完后,会在下面生成一个新的paragraph,这些paragraph就组成了这个Note,具体的操作如下图3;多尝试下就上手了,这里写一个hive表里面查询每个城市的售卖某商品的个数;
  注意:sql能运行需要你配置了spark on hive,有疑问的可以参考Hive从入门到放弃——Hive与其他技术的结合之spark on hive(十七);

在这里插入图片描述

图3 Note编写
   每一段paragraph的界面布局如图4,右上角的按钮分别为;
  • 执行段落代码;
  • 隐藏/显示代码区域
  • 隐藏/显示结果区域
  • paragraph设置,点击展开如图5

在这里插入图片描述

图4 每一段paragraph的界面分布

  每一段paragraph设置详情如图5,分别为:

  • 找到段落ID(20150924-163507_134879501)
  • 控制段落宽度。由于Zeppelin使用Twitter Bootstrap的网格系- 统,因此每个段落的宽度可以从1更改为12
  • 将第1段上移
  • 将第1段下移
  • 创建一个新段落
  • 更改段落标题
  • 显示/隐藏行号 code section
  • 禁用此段的运行按钮(因为顶上还有运行所有paragraph,所以你懂的!)
  • 将当前段落导出为iframe,然后在新窗口中打开iframe
  • 清除 result section
  • 删除当前段落
    在这里插入图片描述
图5 每一段paragraph设置详情

  支持查询结果的可视化;如图4,图5的数据树状图和饼图展示

在这里插入图片描述

图4 paragraph数据树状图展示

在这里插入图片描述

图5 paragraph数据饼图展示
   现在说一下整个Note的在工具菜单栏,您可以找到第一个paragraph顶部的命令按钮如图6,图7,功能分别为;
  • 按显示顺序顺序执行所有段落
  • 隐藏/显示code section所有段落
  • 隐藏/显示result section所有段落
  • 清除result section所有段落
  • 复制当前笔记
  • 将当前Note导出文件。请注意,所有段落中的code section和result section都将被导出。如果result section某些段落中有大量数据,建议在导出之前先清理它们
  • 提交当前节点的内容
  • 删除笔记
  • 使用CRON语法定时执行所有段落的代码

在这里插入图片描述

图6 整个Note的菜单button左侧
   整个Note的菜单button右侧分别为: - 显示所有键盘快捷键 - 配置与当前注释绑定的解释器 - 配置Note权限 - 开关之间的节点的显示模式default,simple和report

在这里插入图片描述

图7 整个Note的菜单button右侧

编写Paragraph的Spark-Shell程序

  Spark-Shell的paragraph运用,如图8,因为博主配置了zeppelin支持spark,则直接可以编写spark,注意解析器改成%spark,这里试一下scala编写的spark-shell代码,如图6;scalapython语言是支持TAB智能拼写补全的哟,不错吧,而且和集群的spark-shell一样spark,sc已经默认给你创建好,可以直接使用;

在这里插入图片描述

图8 spark解析器的paragraph

编写Paragraph的Python程序

  python的paragraph运用,如图9,因为我安装zeppelin的机器python配置了环境变量,则直接可以编写python,注意解析器改成%python,pythonscala语言是支持TAB智能拼写补全的哟;

在这里插入图片描述

图9 python解析器的paragraph

  Apache Zeppelin支持Spark,python的小试牛刀就说道这里了,有机会多去看看官网介绍Explore Apache Zeppelin UI,了解下基本概念,如图8,同时多倒腾下网页版的这些功能,自然就上手了;

  • Note :新建/导入一个Note来编写代码及查看运行结果,类似集成开发环境的一个窗口;
  • Paragraph : Note中相互独立的一个段落,一个Note可以有若干个段落组成,且这些段落可以是不同语言的代码,相互独立,互不干扰;
  • Interpreter :代码的解析器,或者解释器,不同编程语言段落代码依赖的Interpreter不同,默认新生成的段落的Interpreter和上一个段落的一致,可自行修改,采用段落顶个’%'加上Interpreter类型的形式来引用不同的Interpreter,如%spark,%python,%sql等;
  • Interpreter Setting:各自Interpreter的独自配置,支持组件的多版本,如你有两个spark集群,则可以配置两个名字不同的Interpreter,各自的配置各不相同,段落代码引用时按各自需求引用即可;
    在这里插入图片描述
图10 基本概念补充
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

╭⌒若隐_RowYet——大数据

谢谢小哥哥,小姐姐的巨款

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值