Zeppelin0.8.1上操作spark2.0(master使用yarn模式)
@羲凡——只为了更好的活着
Zeppelin0.8.1上操作spark2.0(master使用yarn模式)
Hive解释器将被弃用并合并到JDBC解释器中。通过使用具有相同功能的JDBC解释器,可以使用Hive解释器。可结合官网查看如何操作 http://zeppelin.apache.org/docs/0.8.1/interpreter/spark.html
Zeppelin0.8.1的安装 https://blog.****.net/weixin_42003671/article/details/87010163 请参照我的这一篇博客,里面已经说明了一些Zeppelin操作spark的必要设置
1.登录8080界面后,点击右上角用户名进入interpreter
2.找到spark interpreter 查看并修改主要参数
Properties
name | value |
---|---|
master | yarn-client(或者yarn-cluster) |
zeppelin.spark.concurrentSQL | true(默认是false) |
最后,点击下方的 Save 按钮,保存退出
3.测试
a. %spark
%spark
import org.apache.spark.sql.SparkSession
import org.apache.spark.SparkContext
val inpath = "/aarontest/data/oozie/sparkshell/wc.txt"
val outpath = "/aarontest/data/oozie/sparkshell/wcoutpath"+s"${System.currentTimeMillis()}"
val rdd = sc.textFile(inpath).filter(_.nonEmpty).flatMap(_.split("\t")).map((_,1))
.reduceByKey(_+_).map(_.swap).sortByKey(ascending = false,numPartitions = 1).map(_.swap)
rdd.saveAsTextFile(outpath)
%spark
val map1: Map[Int, String] = Map((1,"aa"),(2,"bb"),(3,"cc"))
val map2 = Map(1 -> "dd", 2 -> "ee", 3 -> "gg")
println(map1.getOrElse(2,0))
println(map1.getOrElse(20,"default"))
截图如下
b. %sql
%sql
select * from aarontest.stu_info limit 3
截图如下
4.现象、疑问、求助
我发现在执行一个spark任务后,yarn的8088界面上就会有一个任务一直在执行状态,只有在重启Zeppelin或修改了spark interpreter 的时候才会消失,这是为什么呢?我想在执行完一个spark任务后就能看到它的日志,这个如何做到?哪位大神知道告知一下吧。
====================================================================
@羲凡——只为了更好的活着
若对博客中有任何问题,欢迎留言交流