我是hadoop的新手。我已经在macosx上安装了hadoop,并且能够在本地系统上的数据集上运行map reduce java程序。现在我想在存储在远程hadoop集群上的更大的数据集上运行这个java程序。如何将jar文件复制到这个集群上以运行它。我尝试了put和copyfromlocal命令,但没有成功。
ioekq8ef1#
将jar文件放在cluster的边缘节点中。边缘节点-是登录到集群的节点。运行程序不需要将jar文件放入hdfs中。快跑:
Hadoop jar <jar-name> <arguments> <input_file> <output_path>
如果您传递输入和输出细节,那么它们应该是您的hdfs路径希望这有帮助!!
w9apscun2#
如何将jar文件复制到这个集群上以运行它。>为此,您可以使用winscp并将jar或hadoop程序文件复制到远程集群。一旦在远程集群上有了它,就可以使用以下命令编译程序。$mkdir hadoop\u类$javac-cp/usr/lib/hadoop/:/usr/lib/hadoop/client-0.20/-d hadoop\u classess[path to+yourhadoopprogram.java]$jar-cvf yourhadoopprogram.jar-c hadoop\u classess/。$hadoop jar yourhadoopprogram.jar org.myorg.yourhadoopprogram[输入路径][输出路径]查看以下链接以了解更多信息http://www.cloudera.com/content/cloudera/en/documentation/hadooptutorial/cdh4/hadoop-tutorial/ht_usage.html
2条答案
按热度按时间ioekq8ef1#
将jar文件放在cluster的边缘节点中。边缘节点-是登录到集群的节点。
运行程序不需要将jar文件放入hdfs中。
快跑:
如果您传递输入和输出细节,那么它们应该是您的hdfs路径
希望这有帮助!!
w9apscun2#
如何将jar文件复制到这个集群上以运行它。>
为此,您可以使用winscp并将jar或hadoop程序文件复制到远程集群。一旦在远程集群上有了它,就可以使用以下命令编译程序。
$mkdir hadoop\u类
$javac-cp/usr/lib/hadoop/:/usr/lib/hadoop/client-0.20/-d hadoop\u classess[path to+yourhadoopprogram.java]
$jar-cvf yourhadoopprogram.jar-c hadoop\u classess/。
$hadoop jar yourhadoopprogram.jar org.myorg.yourhadoopprogram[输入路径][输出路径]
查看以下链接以了解更多信息
http://www.cloudera.com/content/cloudera/en/documentation/hadooptutorial/cdh4/hadoop-tutorial/ht_usage.html