2011-03-21 78 views

回答

1

我能想到的對您的問題最簡單的答案是:

1)任何地方
2,3,4)$HADOOP_HOME/bin/hadoop jar [path_to_your_jar_file]

類似的問題在這裏問Executing helloworld.java in apache hadoop

+0

謝謝你,我會嘗試!!!! – apoorva 2011-03-23 05:44:19

+0

假設我有一個map函數和一個reduce函數,那麼它們是否也適用? – apoorva 2011-03-23 05:50:38

+0

@apoorva:在http://hadoop.apache.org/mapreduce/docs/current/mapred_tutorial.html中有一個WordCount示例,其中包含映射器和縮減器的源代碼。 – Nija 2011-03-23 14:55:51

0

它看起來很複雜,但比你想象的要簡單!

  1. 將你的map/reduce類和你的main類編譯成jar。我們稱之爲罐子myjob.jar
    • 這個jar不需要包含Hadoop庫,但它應該包含任何其他的依賴關係。
    • 您的主要方法應該設置並運行您的地圖/縮小作業,here is an example
  2. 將此jar放在安裝了hadoop命令行實用程序的任何計算機上。
  3. 使用Hadoop的命令行實用程序運行你的主要方法:
    • hadoop jar myjob.jar

希望有所幫助。

0
  1. 該文件應該保存在哪裏?

數據應保存在「hdfs」中。您可能希望使用Apache Flume之類的東西將其從數據源加載到羣集中。該文件可以放在任何地方,但大多數家庭是/用戶/ hadoop/

  1. 如何從hadoop訪問它?

SSH進入hadoop集羣headnode像標準的linux服務器。

要列出的hadoop根HDFS hadoop fs -ls /

  • 我應該由下面的命令被調用它?hadoop classname
  • 您應該使用Hadoop的命令來訪問您的數據和運行您的程序,嘗試hadoop help

  • 什麼是Hadoop中的命令來執行java文件?
  • hadoop -jar MyJar.jar com.mycompany.MainDriver arg[0] arg[1] ...