如何在非Java客户端中从HDFS读取文件

时间:2011-02-19 00:19:17

标签: hadoop hdfs

因此,我的MR Job生成一个报告文件,该文件需要能够由最终用户下载,该最终用户需要单击普通Web报告界面上的按钮,并让其下载输出。根据{{​​3}},有一个HTTP只读接口。它说它是基于XML的,但它似乎只是通过Web浏览器查看的普通Web界面,而不是可以以编程方式查询,列出和下载的内容。我唯一可以编写自己的基于servlet的界面吗?或者执行hadoop cli工具?

2 个答案:

答案 0 :(得分:3)

通过使用Trift以编程方式从Java以外的方式访问HDFS的方法。 HDFS源代码树中包含多种语言(Java,Python,PHP等)的预生成客户端类。

请参阅http://wiki.apache.org/hadoop/HDFS-APIs

答案 1 :(得分:-1)

我担心你可能不得不接受CLI AFAIK。

不确定它是否适合您的情况,但我认为在完成作业后,将任务开始后hadoop dfs -get ...的任何脚本放到已服务的已知目录中是合理的。

很抱歉,我不知道更简单的解决方案。