十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
本篇文章为大家展示了HUE中如何配置Notebook提交spark,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。
成都创新互联自2013年创立以来,先为隆德等服务建站,隆德等地企业,进行企业商务咨询服务。为隆德企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。
为执行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)
需修改Hue中文件:
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,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注创新互联行业资讯频道。