访问hadoop中的文本文件的内容

时间:2015-01-30 11:39:08

标签: hadoop

如何在jsp页面中访问存储在hdfs中的文本文件的内容? Web浏览器应显示存储在hdfs中的该文本文件的内容。

1 个答案:

答案 0 :(得分:0)

任何与HDFS的互动都必须通过Hadoop的库来执行,或者使用Hadoop的WebHDFS。在您的情况下,假设您在一个可以轻松访问HDFS的节点上运行您的服务器(理想情况下,在该节点上您已经可以运行hadoop fs -ls hdfs:////),您将要对{的代码进行编码{3}},确保您的Hadoop集群的hdfs-site.xmlcore-site.xml可能位于服务器的类路径中,或明确填写conf:

import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path;

import java.io.BufferedReader;

...
    Configuration conf = new Configuration();
    conf.set("dfs.namenode.rpc-address", "<YOUR NAMENODE URI>");
    conf.set("fs.default.name", "hdfs://<YOUR NAMENODE URI>/");
    FileSystem fs = FileSystem.get(conf);
    BufferedReader reader = new BufferedReader(
        fs.open(new Path("/path/to/your/file/on/hdfs.txt")));
    String lineOfText = reader.readLine();
...