有没有什么好方法可以从另一个系统安装 Hadoop HDFS?

有没有什么好方法可以从另一个系统安装 Hadoop HDFS?

我想要通过 LAN 将 Cloudera Hadoop 作为 Linux 文件系统挂载。

作为一个设置,我已经在一组 Ubuntu 机器上运行了 Hadoop 集群。但现在我需要能够通过 LAN 从 Fedora 系统将其用作普通文件系统。
我尝试了 FUSe,但有两件事:
1. Cloudera 称 FUSE 丢失了数据(点击此处查看 Cloudera 官方支持网站上 Cloudera 员工的评论)
2. 我没有成功让它按照我们想要的方式运作

需要澄清的是,我使用 Hadoop 只是为了文件系统,而不是为了它的其他功能。

答案1

FUSE 确实是您安装的唯一选择异国情调文件系统,例如 HDFS。就我自己的需求而言,我发现直接使用 Java API 比挂载 FS 要好得多。

不幸的是,除 Java 之外的其他语言的 HDFS 客户端 API 要么不存在,要么非常丑陋(因为依赖于 JNI)。

页面上有关于各种可用选项的有趣信息。如果您确实以某种方式成功使 FUSE 工作,则可以使用 NFS 将生成的挂载点导出到需要使用相同 HDFS 的其他机器。这显然与任何 NFS 设置具有相同的风险和缺点。

关于 API,显然有一个 Thrift 接口,仅供参考。请参阅这里了解更多信息。

答案2

HDFS 并不是真正的一流文件系统。因此,通过 FUSE 或类似方式安装它可能会因缺乏文件更新而导致真正的挫败感。

您能详细说说您的需求吗?为什么不直接使用 MapR(请参阅 mapr.com)?MapR 为集群文件系统提供一流的 NFS 支持,同时保持与 Hadoop 的完全兼容性。

相关内容