HDFS是Hadoop的核心,我明白了。但是,如果我不想将数据存储在HDFS上怎么办。相反,我想对通过NFS协议访问的远程服务器上存储的数据进行分析并运行Hadoop作业?我该怎么办?
例如,我想使用NFS服务器上的数据运行Teragen,如下所示:
hadoop jar hadoop-mapreduce-examples.jar teragen 1000000000 nfs://IP/some/path
我只是在寻找有关如何执行此操作的想法,并且我理解所有这些操作(HDFS与NFS)的影响。因此,尽管我很高兴有人告诉我这是一个坏主意,但我仍然想为我正在尝试的一些实验做这件事。
我也许可以编写一些代码来实现此目的,但是我需要开始的任何指针将对您有所帮助,并深表感谢。我也不想重新发明轮子。因此,如果我不知道类似这样的内容,请发表评论并告知我。我构建的任何东西都将被开源,以便其他人也可以受益。
答案 0 :(得分:1)
您知道此站点: https://blog.netapp.com/blogs/run-big-data-analytics-natively-on-nfs-data/
看起来您可以在底部与NFS交换HDFS,而在更高的抽象层,一切都照旧运行,因为MapReduce / YARN会为您处理一切。
由于我们当前正在准备建立这样一个“本地NFS hadoop”,因此我无法透露有关此操作是否有效的任何信息。几个月后,我会再向您提供更多详细信息。