草庐IT

MAPREDUCE

全部标签

java - 有了对象列表,如何使用 mapReduce 将单个对象传递给每个映射器类?

关于WordCount示例的两个问题:http://wiki.apache.org/hadoop/WordCount如果我在示例中理解正确:主类接收一个输入文件(第57行)每个映射器都会收到该文件的一行(第22行)?我正在尝试做一些不同的事情:而不是将输入文件传递给主类,假设我的主类有一些对象的列表例如:ListTransitiontransactionsList;并且我希望每个映射器接收此列表中的单个项目:在我的示例中:TransitionsingleTrans;我怎样才能做这样的事情? 最佳答案 关于您的第一个问题:是的,第57

java - 尝试在 shell 脚本中同时运行 hadoop MapReduce 命令和 linux 命令

我有一个这样的shell脚本。#!/bin/sh/home/hduser/Downloads/hadoop/bin/stop-all.shecho"RUNNINGHADOOPPROGRAM"cd/home/hduser/Downloads/hadoopsudorm-R/tmp/*sudorm-R/app/*cdsudomkdir-p/app/hadoop/tmpsudochownhduser:hadoop/app/hadoop/tmpsudochmod750/app/hadoop/tmphadoopnamenode-format/home/hduser/Downloads/hadoop

apache - 从 java 连接到 Hbase 时出错

我正在使用HBase版本1.0.1,同时我从java连接到hbase,我得到的错误是15/05/2512:12:57INFOzookeeper.ZooKeeper:Initiatingclientconnection,connectString=localhost:2181sessionTimeout=90000watcher=hconnection-0xc0663d0x0,quorum=localhost:2181,baseZNode=/hbaseExceptioninthread"main"java.io.IOException:java.lang.reflect.Invocati

hadoop - 并行 hadoop 作业不会通过

我正在运行一个本地hadoop集群并尝试同时提交两个作业,但我的第一个作业通过了,第二个没有,并且一直处于未分配状态,直到第一个作业完成。我预感内存有问题,但我不太明白。这是我为容器、映射器、reduce、jvm等设置的值。yarn.nodemanager.resource.memory-mb=40960yarn.scheduler.minimum-allocation-mb=4096yarn.scheduler.maximum-allocation-mb=10240mapreduce.map.java.opts=-Xmx5120mmapreduce.reduce.java.opts=

java - 自定义 SortComparator 在 MapReduce wordcount 程序中不起作用

我想了解MapReduce如何对Map输出键进行排序,以及它使用的排序算法是什么。我有一个这样的文本文件abefcb它如何使用这些键执行排序。我实现了一个扩展WritableComparator接口(interface)的自定义SortComparator类。我想看看排序是如何进行的,所以我将操作写入文件。publicstaticclassMySortComparator2extendsWritableComparator{@Overridepublicintcompare(byte[]b1,ints1,intl1,byte[]b2,ints2,intl2){Textx=newText

java - 如何在mapreduce中将文件作为参数传递

我想在文件中搜索特定的单词并显示它的计数。当要搜索的单词是单个单词时,我可以通过在驱动程序中设置配置来完成,如下所示:驱动类:Configurationconf=newConfiguration();conf.set("wordtosearch","fun");映射器类:publicstaticclassSearchMapperextendsMapper{//Mapcodegoeshere.privatefinalstaticIntWritableone=newIntWritable(1);privateTextword=newText();publicvoidmap(LongWrit

hadoop - Inputsplit、RecordReader & Map 实例和 Mapper 之间的数据流

如果我有一个包含1000行的数据文件......并且我在我的字数统计程序的map方法中使用了TextInputFormat。因此,数据文件中的每一行都将被视为一个拆分。RecordReader会将每一行(或拆分)作为(Key,Value)对提供给map()方法。根据我的理解..1000次map()方法应该为每一行或记录执行。表示将运行多少个Mappers?抱歉,在这里混淆了。map()方法只是mapper的一个实例,对吧。那么每个Mapper任务有多少个map实例是根据什么决定的???注意:当我为1000行数据执行WordCountMapReduce程序时。我看到Mappers的数量为

java - getstrings方法hadoop中的空指针异常

在Driver类conf.getstrings()方法中获取Null指针异常。这个驱动程序类是从我的自定义网站调用的。下面是Driver类的详细信息@SuppressWarnings("unchecked")publicvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{Configurationconf=newConfiguration();//conf.set("fs.default.name","hdfs://localhost:543

java - MapReduce Avro 输出正在创建文本文件

我有一个读取avro数据然后应该输出avro数据的MapReduce作业。但是,当我在作业成功时检查输出文件时,它们没有.avro扩展名,我可以使用简单的文本编辑器查看它们。我的驱动程序配置为输出avro,所以我不确定问题出在哪里,我们将不胜感激。这是我的驱动类:publicclassDriverextendsConfiguredimplementsTool{publicstaticvoidmain(String[]args)throwsException{intres=ToolRunner.run(newConfiguration(),newDriver(),args);System

hadoop - 在 Oozie 中为 Map-Reduce 作业指定驱动程序

${jobTracker}${nameNode}mapred.input.dir${inputDir}mapred.output.dir${outputDir}mapred.job.queue.name${queueName}mapred.reduce.tasks${numberofReducers}mapred.reducer.new-apitruemapred.mapper.new-apitrueMap/Reducefailed,errormessage[${wf:errorMessage(wf:lastErrorNode())}]我正在尝试使用Oozie运行map-reduce作