Tag: mapreduce

Hadoop 1.2.1 – 多节点集群 – 对于Wordcount程序,Reducer阶段是否挂起?

我的问题可能听起来多余,但早期问题的解决方案都是临时性的。 很少有人尝试但没有运气。 实际上,我正在研究hadoop-1.2.1(在ubuntu 14上),最初我有单节点设置,在那里我成功运行了WordCount程序。 然后我根据本教程添加了一个节点。 它成功启动,没有任何错误,但现在当我运行相同的WordCount程序时,它处于还原阶段。 我查看了任务跟踪器日志,它们如下所示: – INFO org.apache.hadoop.mapred.TaskTracker: LaunchTaskAction (registerTask): attempt_201509110037_0001_m_000002_0 task’s state:UNASSIGNED INFO org.apache.hadoop.mapred.TaskTracker: Trying to launch : attempt_201509110037_0001_m_000002_0 which needs 1 slots INFO org.apache.hadoop.mapred.TaskTracker: In TaskLauncher, current free slots : 2 and trying to launch attempt_201509110037_0001_m_000002_0 which needs 1 slots INFO org.apache.hadoop.mapred.JobLocalizer: Initializing user hadoopuser on this TT. INFO org.apache.hadoop.mapred.JvmManager: In […]

Hadoop 2.0 JAR文件

尝试在Map / Reduce程序中实例化Configuration对象时出现意外错误。 错误如下: java.lang.NoClassDefFoundError:org / apache / commons / logging / LogFactory 我正在使用Hadoop 2.2.0。 该程序与早期版本的Hadoop一起运行良好。 但是,现在我需要为版本2编写此作业提交者,这似乎不起作用。 作为旁注,我找不到此版本所需的所有JAR文件。 我已经阅读了类似问题的以下解决方案: hadoop 2中的hadoop jar文件在哪里? 。 但是,这对我不起作用。 它因上述运行时错误而失败。 我尝试使用较旧的JAR文件来解决这些问题,但新错误仍在继续。 有没有人有这个问题的解决方案? 我正在使用NetBeans,如果由于某种原因有任何不同。

无法找到或加载主类com.sun.tools.javac.Main hadoop mapreduce

我正在努力学习MapReduce,但我现在有点迷失了。 http://hadoop.apache.org/docs/r2.6.0/hadoop-mapreduce-client/hadoop-mapreduce-client-core/MapReduceTutorial.html#Usage 特别是这套说明: Compile WordCount.java and create a jar: $ bin/hadoop com.sun.tools.javac.Main WordCount.java 当我在终端输入hadoop ,我能够看到提供参数的“帮助”,所以我相信我已经安装了hadoop。 当我输入命令时: 编译WordCount.java并创建一个jar: hadoop com.sun.tools.javac.Main WordCount.java 我收到错误: Error: Could not find or load main class com.sun.tools.javac.Main 我知道我已经安装了Java并在我的计算机上工作,因为我之前使用它来创建其他程序。 此命令输出: $ /usr/libexec/java_home /Library/Java/JavaVirtualMachines/jdk1.7.0_55.jdk/Contents/Home 也许我错过了一套Java工具? 不确定

hadoop java.net.URISyntaxException:绝对URI中的相对路径:rsrc:hbase-common-0.98.1-hadoop2.jar

我有一个连接到HBASE的map reduce作业,我无法弄清楚我遇到这个错误的位置: Exception in thread “main” java.lang.reflect.InvocationTargetException at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:606) at org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader.main(JarRsrcLoader.java:58) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:606) at org.apache.hadoop.util.RunJar.main(RunJar.java:212) Caused by: java.lang.IllegalArgumentException: java.net.URISyntaxException: Relative path in absolute URI: rsrc:hbase-common-0.98.1-hadoop2.jar at org.apache.hadoop.fs.Path.initialize(Path.java:206) at org.apache.hadoop.fs.Path.(Path.java:172) at org.apache.hadoop.hbase.mapreduce.TableMapReduceUtil.findOrCreateJar(TableMapReduceUtil.java:703) at org.apache.hadoop.hbase.mapreduce.TableMapReduceUtil.addDependencyJars(TableMapReduceUtil.java:656) at org.apache.hadoop.hbase.mapreduce.TableMapReduceUtil.addHBaseDependencyJars(TableMapReduceUtil.java:573) at org.apache.hadoop.hbase.mapreduce.TableMapReduceUtil.addDependencyJars(TableMapReduceUtil.java:617) at org.apache.hadoop.hbase.mapreduce.HFileOutputFormat2.configureIncrementalLoad(HFileOutputFormat2.java:398) at org.apache.hadoop.hbase.mapreduce.HFileOutputFormat2.configureIncrementalLoad(HFileOutputFormat2.java:356) […]

Hadoop Writable和java.io.serialization之间有什么联系和区别?

要实现Writable接口,可以在Hadoop中序列化对象。 那么Hadoop Writable和java.io.serialization之间的联系和区别是什么?

Hadoop gzip压缩文件

我是hadoop的新手,并试图处理维基百科转储。 它是一个6.7 GB的gzip压缩xml文件。 我读到hadoop支持gzip压缩文件,但只能由mapper在单个作业上处理,因为只有一个映射器可以解压缩它。 这似乎对处理有限制。 还有其他选择吗? 比如将xml文件解压缩并拆分成多个块并用gzip重新压缩它们。 我从http://researchcomputing.blogspot.com/2008/04/hadoop-and-compressed-files.html上读到了关于hadoop gzip的内容。 谢谢你的帮助。

job.setOutputKeyClass和job.setOutputReduceClass在哪里引用?

我认为他们指的是减速机,但在我的程序中我有 public static class MyMapper extends Mapper 和 public static class MyReducer extends Reducer 所以,如果我有 job.setOutputKeyClass( NullWritable.class ); job.setOutputValueClass( Text.class ); 我得到以下例外 Type mismatch in key from map: expected org.apache.hadoop.io.NullWritable, recieved org.apache.hadoop.io.Text 但如果我有 job.setOutputKeyClass( Text.class ); 没有问题。 我的代码是否有错误,或者这是因为NullWritable还是其他? 我还必须使用job.setInputFormatClass和job.setOutputFormatClass吗? 因为没有它们我的程序运行正常。

在Hadoop Map Reduce中重命名部件文件

我已尝试按照页面http://hadoop.apache.org/docs/mapreduce/r0.21.0/api/index.html?org/apache/hadoop/mapreduce/lib/output/中的示例使用MultipleOutputs类MultipleOutputs.html 驱动程序代码 Configuration conf = new Configuration(); Job job = new Job(conf, “Wordcount”); job.setJarByClass(WordCount.class); job.setInputFormatClass(TextInputFormat.class); job.setMapperClass(WordCountMapper.class); job.setReducerClass(WordCountReducer.class); job.setMapOutputKeyClass(Text.class); job.setMapOutputValueClass(IntWritable.class); job.setOutputKeyClass(Text.class); job.setOutputValueClass(IntWritable.class); FileInputFormat.setInputPaths(job, new Path(args[0])); FileOutputFormat.setOutputPath(job, new Path(args[1])); MultipleOutputs.addNamedOutput(job, “text”, TextOutputFormat.class, Text.class, IntWritable.class); System.exit(job.waitForCompletion(true) ? 0 : 1); 减速机代码 public class WordCountReducer extends Reducer { private IntWritable result = new IntWritable(); private MultipleOutputs mos; public void […]

写入HDFS只能复制到0个节点而不是minReplication(= 1)

我有3个数据节点正在运行,而在运行作业时我得到以下错误, java.io.IOException:File / user / ashsshar / olhcache / loaderMap9b663bd9只能复制到0个节点而不是minReplication(= 1)。 运行中有3个数据节点,此操作中排除了3个节点。 在org.apache.hadoop.hdfs.server.blockmanagement.BlockManager.chooseTarget(BlockManager.java:1325) 此错误主要发生在我们的DataNode实例空间不足或DataNode未运行时。 我尝试重新启动DataNodes但仍然遇到相同的错误。 我的集群节点上的dfsadmin -reports清楚地显示了大量可用空间。 我不确定为什么会这样。

如何在Hadoop-.20 api中指定KeyValueTextInputFormat分隔符?

在新的API(apache.hadoop.mapreduce.KeyValueTextInputFormat)中,如何指定除tab之外的分隔符(分隔符)(默认值)以分隔键和值。 样本输入: one,first line two,second line 输出要求: Key : one Value : first line Key : two Value : second line 我将KeyValueTextInputFormat指定为: Job job = new Job(conf, “Sample”); job.setInputFormatClass(KeyValueTextInputFormat.class); KeyValueTextInputFormat.addInputPath(job, new Path(“/home/input.txt”)); 这适用于tab作为分隔符。