如何在 Hue 中加载和执行 Python 脚本?

How to load & execute Python script in Hue?

我是 Hadoop 新用户,正在尝试通过 Hue 界面运行Python编写脚本。

经过一番搜索,我在cloudera论坛找到了解决方案:

https://community.cloudera.com/t5/Web-UI-Hue-Beeswax/How-to-run-Python-script-in-Hue-through-oozie/m-p/61455

发帖人说 "The solution was to put the python script in Hue -> Query -> Editor -> Spark in the Libs field with the full path of the python script example: Libs: /user/userxyz/myscript.py and run the query. Clicking the job_xxxxx link will show if the script ran successfully or not."

但是,我不知道如何在 Hadoop 分布式文件系统中加载并执行我的 Python 脚本。 Hue 界面似乎没有显示我的根并允许文件上传的 HDFS 功能。我是从桌面加载 Python 脚本作为文本文件还是在 Hue 中有编辑器?

Python 脚本可能应该 运行 来自 python script.py 的 Oozie 脚本任务,并将 HDFS 文件引用附加到工作流任务。

如果您没有 Spark 代码,那么您不应该为此使用 Spark 笔记本编辑器。

is there an editor in Hue?

有的,如果你在文件浏览器中点击任何文件,但是这会把文件下载到Hue服务器文件系统,然后重新上传,所以最好自己编辑直接上传。

Hue interface doesn't seem to have an HDFS feature that displays my root & allows file uploads

INI 中有一个允许文件上传的配置设置which is true by default。如果您完全禁用了文件浏览器,或者甚至是旧版本的 Hue,它可能不存在。

您可以将 python 脚本写入 HUE 并将文件另存为 myScript.py。 例如,为了使用 python 和分布式文件系统,您必须安装 pySpark。 然后您可以转到 Oozie 编辑器并选择 Spark Action。在 Jar/py name 字段中,您必须输入 myScript.py。作为 ARGUMENTS 你应该给出安装 pySpark (python Api) 的路径。同样在 FILES 中,您必须给出保存 myScript.py 的路径。