在我们的集群上,即使是最简单的作业“wordcount”也在本地模式下运行。但是之前有一些作业使用 oozie 运行,我们观察到它们以集群模式运行。本地 hadoop 作业与使用 oozie 运行的 hadoop 作业是否存在冲突?这是错误堆栈跟踪-
java.lang.IllegalArgumentException: Can't read partitions file
at org.apache.hadoop.hbase.mapreduce.hadoopbackport.TotalOrderPartitioner.setConf(TotalOrderPartitioner.java:111)
at org.apache.hadoop.util.ReflectionUtils.setConf(ReflectionUtils.java:62)
at org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:117)
at org.apache.hadoop.mapred.MapTask$NewOutputCollector.<init>(MapTask.java:560)
at org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:639)
at org.apache.hadoop.mapred.MapTask.run(MapTask.java:323)
at org.apache.hadoop.mapred.LocalJobRunner$Job.run(LocalJobRunner.java:210)
引起:java.io.FileNotFoundException:文件_partition.lst 不存在。在 org.apache.hadoop.fs.RawLocalFileSystem.getFileStatus(RawLocalFileSystem.java:408) 在 org.apache.hadoop.fs.FilterFileSystem.getFileStatus(FilterFileSystem.java:251) 在 org.apache.hadoop.fs.FileSystem.getLength (FileSystem.java:825) 在 org.apache.hadoop.io.SequenceFile$Reader.(SequenceFile.java:1480) 在 org.apache.hadoop.io.SequenceFile$Reader.(SequenceFile.java:1475) 在 org. org.apache.hadoop.hbase.mapreduce.hadoopbackport.TotalOrderPartitioner.setConf(TotalOrderPartitioner.java:82) 上的 apache.hadoop.hbase.mapreduce.hadoopbackport.TotalOrderPartitioner.readPartitions(TotalOrderPartitioner.java:296)
我们的工作在没有安装 Oozie 的测试集群上运行良好。因此不确定这两件事是否相关。提前致谢。
我们正在使用 Cloudera 发行版。