0

在我们的集群上,即使是最简单的作业“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 发行版。

4

2 回答 2

0

听起来他们确实使用了不同的配置。我首先要确保您正在运行的所有内容都使用相同的 HADOOP_HOME。

于 2012-08-22T14:41:44.227 回答
0

经过多次重试,我们现在切换到 BigInsights。我个人认为 CDH 是一种很棒的 Hadoop 风格。但由于我们没有完成原始安装,依赖的开销对我们的项目来说太大了。正如我们之前在 BigInsights 上取得的成功一样,我们希望复制它。

于 2012-08-29T21:03:29.217 回答