簡體   English   中英

hadoop-hadoop中的輸入/輸出文件存儲在哪里,以及如何在hadoop中執行Java文件?

[英]hadoop - Where are input/output files stored in hadoop and how to execute java file in hadoop?

假設我編寫了一個Java程序,並且想在Hadoop中運行它,然后

  1. 文件應保存在哪里?
  2. 如何從hadoop訪問它?
  3. 我應該通過以下命令調用它嗎? hadoop classname
  4. hadoop中執行Java文件的命令是什么?

我能想到的最簡單的答案是:

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

在這里問了類似的問題在apache hadoop中執行helloworld.java

它可能看起來很復雜,但是比您想象的要簡單!

  1. 將您的map/reduce類和main類編譯到jar中。 我們將此罐myjob.jar
    • 該jar不需要包含Hadoop庫,但應包含您具有的任何其他依賴關系。
    • 您的主要方法應設置並運行地圖/歸約工作, 這是一個示例
  2. 將此jar放在安裝了hadoop命令行實用程序的任何計算機上。
  3. 使用hadoop命令行實用程序運行您的main方法:
    • hadoop jar myjob.jar

希望能有所幫助。

  1. 文件應保存在哪里?

數據應保存在“ hdfs”中。 您可能希望使用Apache Flume之類的工具將其從數據源加載到集群中。 該文件可以放在任何位置,但大多數位置是/ user / hadoop /

  1. 如何從hadoop訪問它?

像標准linux服務器一樣,通過SSH進入hadoop集群頭節點。

列出您的hadoop根hdfs hadoop fs -ls /

  1. 我應該通過以下命令調用它嗎? hadoop classname

您應該使用hadoop命令來訪問數據並運行程序,請嘗試使用hadoop help

  1. hadoop中執行Java文件的命令是什么?

hadoop -jar MyJar.jar com.mycompany.MainDriver arg[0] arg[1] ...

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM