如何访问Hadoop HDFS中的文件?

时间:2016-03-29 17:10:29

标签: linux eclipse hadoop hdfs

我想在Eclipse中打开的Hadoop HDFS中有一个.jar文件(包含我要修改的Java项目)。

当我输入hdfs dfs -ls /user/...时,我可以看到.jar文件在那里 - 然而,当我打开Eclipse并尝试导入它时,我似乎无法在任何地方找到它。我在文件系统中看到一个hadoop / hdfs文件夹,它带我到2个文件夹; namenode和namesecondary - 这些都没有我正在寻找的文件。

有什么想法吗?我被困在这一段时间了。在此先感谢您的帮助。

5 个答案:

答案 0 :(得分:5)

HDFS文件系统和本地文件系统都不同。

您可以使用以下命令将jar文件从hdfs文件系统复制到本地filesytem中的首选位置:

bin/hadoop fs -copyToLocal locationOfFileInHDFS locationWhereYouWantToCopyFileInYourFileSystem

例如

bin/hadoop fs -copyToLocal file.jar /home/user/file.jar

我希望这会对你有所帮助。

答案 1 :(得分:5)

由于HDFS是虚拟存储,因此它跨越群集,因此您只能看到文件系统中的元数据,而您无法看到实际数据。

尝试将jar文件从HDFS下载到本地文件系统并进行必要的修改。

使用其Web UI访问HDFS。 打开浏览器并键入localhost:50070您可以看到HDFS的Web UI移动到右侧的实用程序选项卡,然后单击浏览文件系统,您可以看到HDFS中的文件列表。

按照以下步骤将文件下载到本地文件系统。

Open Browser-->localhost:50070-->Utilities-->Browse the file system-->Open your required file directory-->Click on the file(a pop up will open)-->Click on download

该文件将下载到您的本地文件系统中,您可以进行必要的修改。

答案 2 :(得分:1)

1) Get the file from HDFS to your local system

bin/hadoop fs -get /hdfs/source/path /localfs/destination/path

2) you can manage it in this way:

New Java Project -> Java settings -> Source -> Link source (Source folder).

答案 3 :(得分:0)

您无法直接将HDFS中存在的文件导入Eclipse。首先,您必须将文件从HDFS移动到本地驱动器,然后才能在任何实用程序中使用它。

  

fs -copyToLocal hdfsLocation localDirectoryPath

答案 4 :(得分:0)

您可以在Eclipse中安装可以浏览HDFS的插件:

http://hdt.incubator.apache.org

OR

您可以通过保险丝安装HDFS:

https://wiki.apache.org/hadoop/MountableHDFS