我想读一个在hdfs上的文件

时间:2014-03-21 08:41:01

标签: java hadoop

我尝试过将路径作为“hdfs:// localhost:9000 / path to file”但仍然无法正常工作是否有其他方式来读取文件? 我想在程序中给出文件路径,但不是作为终端上的参数......

2 个答案:

答案 0 :(得分:0)

如果启用了WebHDFS(在hdfs-site.xml中将dfs.webhdfs.enabled设置为true),则可以通过简单的REST调用访问该文件。许多客户端库可以直接打开HTTP URI。

对于Java,请按照Open stream from uri中的示例,使用WebHDFS REST API文档中的示例构建文件的URI。例如,我可以使用以下URI在我的群集上从HDFS打开文件:" http://namenode:50070/webhdfs/v1/sampledata/sample.log?op=OPEN"

答案 1 :(得分:0)

如果您想要的是如何使用Java代码阅读该文件的内容,那么请查看我的答案:Programatically reading contents of text file stored in HDFS using Java