如何在 apache zeppelin 中使用 hdfs shell 命令?

How to use hdfs shell commands with apache zeppelin?

我已经通过下载和解压安装了 apache zeppelin binary with all interpreters

然后我开始使用:

./bin/zeppelin.sh start

然后我使用以下代码创建了一个新笔记本:

%sh

hdfs fs -ls

当我 运行 它时,我得到了结果:

bash: hdfs: command not found
ExitValue: 127

zeppelin 不应该带有 hdfs interpreter 或支持 hdfs 命令吗?

如果 zeppelin 不包含 hdfs 文件系统,那么我启动了: https://github.com/big-data-europe/docker-hadoop-spark-workbench

然后用 docker-compose up 启动它。我导航到 git 自述文件中提到的各种网址,所有网址似乎都已启动。我认为这意味着我有一些 hdfs 已经启动,但我不确定我是否应该这样做,或者 zeppelin 的 "all" 解释器包已经包含它,无论如何我得到了相同的结果。

我的最终目标只是在 zeppelin 的帮助下 hdfsspark 的本地游乐场。

我应该如何使用包含 all interpreters 的 apache zeppelin 的本地安装 运行 hdfs 命令,例如 hdfs fs -ls?它包括 hdfshdfs 命令吗?

确实如此,但您使用的是 shell 解释器。

确保安装了 file 解释器:

$ ./bin/install-interpreter.sh --list | grep file
## file         HDFS file interpreter

如果没有安装它

$ ./bin/install-interpreter.sh --name file

file 解释器添加到笔记本中并使用它

%file

ls /

要使用 hadoop fs 命令,您需要安装 Hadoop(Hadoop 二进制文件以及正确的配置和环境变量):

%sh

$HADOOP_HOME/bin/hadoop fs -ls /

您将需要一个用于更复杂的任务,如 HDFS 解释器(a.k.a。file 解释器)

currently only supports browsing.