我正在运行著名的wordcount示例。我有一个本地和prod hadoop设置。同样的例子是在prod中工作,但它在本地不工作。有人能告诉我该找什么吗。工作陷入困境。任务日志为:
~/tmp$ hadoop jar wordcount.jar WordCount /testhistory /outputtest/test
Warning: $HADOOP_HOME is deprecated.
13/08/29 16:12:34 WARN mapred.JobClient: Use GenericOptionsParser for parsing the arguments. Applications should implement Tool for the same.
13/08/29 16:12:35 INFO input.FileInputFormat: Total input paths to process : 3
13/08/29 16:12:35 INFO util.NativeCodeLoader: Loaded the native-hadoop library
13/08/29 16:12:35 WARN snappy.LoadSnappy: Snappy native library not loaded
13/08/29 16:12:35 INFO mapred.JobClient: Running job: job_201308291153_0015
13/08/29 16:12:36 INFO mapred.JobClient: map 0% reduce 0%
本地hadoop以伪分布式模式运行。所有3个进程,namenode、datanode和jobtracker都在运行。如果需要一些额外的信息,请告诉我。
任务跟踪器似乎不见了。
尝试:
hadoop tasktracker &
在Hadoop2.x中,这个问题可能与内存问题有关,您可以在Hadoop2.2.0中的MapReduce中看到它不工作
我遇到了同样的问题,这个页面帮助了我:http://www.alexjf.net/blog/distributed-systems/hadoop-yarn-installation-definitive-guide/
基本上,我通过以下三个步骤解决了我的问题。事实上,我不得不配置更多的内存。
1) yarn-site.xml
- yarn.resourcemanager.hostname=主机名_of_the_master
- yarn.nodemanager.resource.memory-mb=4000
- yarn.nodemanager.resource.cpu-vcores=2
- yarn.sscheduler.minimum-allocation-mb=4000
2) mapred-site.xml
- yarn.app.mapreduce.am.resource.mb=4000
- yarn.app.mapreduce.am.com.mand-opts=-Xmx3768m
- mapreduce.map.cpu.vcores=2
- mapreduce.reduce.cpu.vcores=2
3) 在所有节点上发送这些文件
除了hadoop tasktracker &
和任何其他问题。请检查您的代码,确保没有infinite loop
或任何其他错误。也许你的代码中有一些错误!
如果在使用Hive查询时出现此问题,请检查是否在不利用分区的情况下连接两个非常大的表。不使用分区可能会导致长时间运行全表扫描,因此会停留在映射0%reduce0%。