本篇文章为大家展示了HUE中如何配置Notebook提交spark,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。
为执行Spark Job,Hue提供了执行服务器Livy,加强了Hue notebook对spark的支持。它类似于Oozie hadoop工作流服务器,对外提供了Rest Api,客户端将spark jar以及配置参数传递给livy,livy依据配置文件以及参数执行jar。
hue配置文件*.ini中配置如下:
1.测试scalahue登录点击“数据分析”-scala ,粘贴 点击运行
val data = Array(1, 2, 3, 4 ,5)
val distData = sc.parallelize(data)
distData.map(s=>s+1).collect()
点击 运行,如图所示:
2.测试Spark Submit Jar 点击“数据分析”-Spark Submit Jar,粘贴 点击运行
会报错:"java.lang.NullPointerException"(500)
desktop/libs/notebook/src/notebook/connectors/spark_batch.py,文件已放入附件中,删除35行-80行原来的代码,替换为附件中的代码,之后执行spark自带的example可执行成功。+表示增加行,-表示删除行
def execute(self, notebook, snippet):
api = get_spark_api(self.user)
- properties = {
- 'file': snippet['properties'].get('app_jar'),
- 'className': snippet['properties'].get('class'),
- 'args': snippet['properties'].get('arguments'),
- 'pyFiles': snippet['properties'].get('py_file'),
- 'files': snippet['properties'].get('files'),
- # driverMemory
- # driverCores
- # executorMemory
- # executorCores
- # archives
- }
+ if snippet['type'] == 'jar':
+ properties = {
+ 'file': snippet['properties'].get('app_jar'),
+ 'className': snippet['properties'].get('class'),
+ 'args': snippet['properties'].get('arguments'),
+ }
+ elif snippet['type'] == 'py':
+ properties = {
+ 'file': snippet['properties'].get('py_file'),
+ 'args': snippet['properties'].get('arguments'),
+ }
+ else:
+ properties = {
+ 'file': snippet['properties'].get('app_jar'),
+ 'className': snippet['properties'].get('class'),
+ 'args': snippet['properties'].get('arguments'),
+ 'pyFiles': snippet['properties'].get('py_file'),
+ 'files': snippet['properties'].get('files'),
+ # driverMemory
+ # driverCores
+ # executorMemory
+ # executorCores
+ # archives
+ }
response = api.submit_batch(properties)
return {
上述内容就是HUE中如何配置Notebook提交spark,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注编程之家行业资讯频道。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。