草庐IT

mapreduce_shuffle

全部标签

java - 仅报告 mapReduce 作业的映射器中的 k 个最低值

我正在编写一个mapReduce作业,它从一个巨大的数据集中找到与一个点的距离最短的k个对象。在我的映射器中,我只想报告与该数据block距离最短的k个对象。这样,对于每个数据block,我都有k个中间值(键,值),其中键是距离,值是object_id。所以在我的reducer()中,我可以轻松地处理和汇总k个最低值。我想不出一种方法来只报告与我的映射器类中一个数据block的一个点的距离最短的k对象的中间键值对吗?我知道我可以返回该数据block中所有输入数据的(distance,obj_id)作为中间键值对,然后在我的reducer类中减少它并获得相同的结果。但是k感谢任何帮助谢谢

java - 如何通过 Hadoop mapreduce WordCount 对最常重复的单词列表进行排序?

很难说出这里要问什么。这个问题模棱两可、含糊不清、不完整、过于宽泛或夸夸其谈,无法以目前的形式得到合理的回答。如需帮助澄清此问题以便重新打开,visitthehelpcenter.关闭10年前。大家好,我是hadoopmapreduce的新手。你们中的任何人都可以帮我修改下面发布的代码以显示所需的输出吗?我有一个给定的输入文件作为输入:大家好,我叫约翰。我在做工程。我的parent住在加利福尼亚我得到的输出为Hi1my3name1is1is1John1doing1engineering1parents1stay1at1California1但我希望将输出排序为my3Hi1etc....

api - Hadoop Mapreduce 配置(新 API)

我只是想尝试一个教程(https://ccp.cloudera.com/display/DOC/Hadoop+Tutorial)程序WordCountV.2(页面底部),他们在其中使用以下方法设置为程序设置一些基本变量:publicvoidconfigure(JobConfjob){...}但是我正在尝试使用新的HadoopAPI,但这种方法似乎不再存在了?谁能告诉我在新API中执行类似操作的等效方法是什么?另外,如何在运行时访问我的配置?我只是调用:Job.getConfiguration(); 最佳答案 您可以覆盖Mapper/

java - 在 hadoop 上用 java 运行基本的 mapreduce 作业

我刚刚开始使用linux/java/hadoop/EMR。我正在关注this整洁的书。任务是运行:bin/hadoopjarhadoop-cookbook-chapter1.jarchapter1.WordCountinputoutput这是我得到的回应:alex@HadoopMachine:/usr/share/hadoop$sudohadoopjarhadoop-cookbook-chapter1.jarchapter1.WordCountinputoutput13/05/0101:01:08WARNutil.NativeCodeLoader:Unabletoloadnative-

hadoop - Hadoop MapReduce 是否在每台机器上运行?

如果我在50台机器的网格上运行Hadoop,并且我运行一个确定哪些是最常用词的作业,我可以指定我只想在文档abc1.txt和abc2.txt中搜索吗?Hadoop如何知道在哪些机器上查找这些文件,或者它会尝试在50台机器中的每台机器上查找文件? 最佳答案 是的,您应该指定HDFS中文件的路径作为MapReduce作业的输入。但好处是-您不需要知道这些文件实际存储在哪里。当您将abc1.txt和abc2.txt上传到HDFS-分布式文件系统时,Hadoop会将这些文件中的数据block存储在集群中称为节点(默认为3)。如果文件大小超过

java - hadoop 多节点集群 - 从节点无法执行 mapreduce 任务

我是hadoop的新手。我尝试按照MichaelNoll在http://www.michael-noll.com/tutorials/running-hadoop-on-ubuntu-linux-multi-node-cluster/在集群上运行字数统计作业之前,一切似乎都很好。当我通过在主节点上运行以下cmd启动集群时:hadoop/start-all.shjps输出是正确的:关于主人:li@master:~$jps12839TaskTracker11814NameNode12535JobTracker25131Jps12118DataNode12421SecondaryNameNo

hadoop - CDH4.4 : Restarting HDFS and MapReduce from shell

我正在尝试使用bash脚本在ClouderaHadoop4.4集群上自动停止、格式化和启动HDFS和MapReduce服务。使用“pkill-Uhdfs&&pkill-Umapred”可以很容易地终止HDFS和MapReduce进程,但是如何在不使用ClouderaManagerGUI的情况下再次启动这些进程? 最佳答案 好吧,显然CM有一个非常棒的AP​​I在这里查看http://cloudera.github.io/cm_api/ 关于hadoop-CDH4.4:Restarting

java - 尝试将数据写入 HCatalog(MapReduce 之外)时出现 InvalidProtocolBufferException

我的测试代码:publicstaticvoidmain(String[]args)throwsHCatException{StringmetastoreUrl="thrift://:9083";StringdatabaseName="default";StringtableName="test";WriteEntity.Builderbuilder=newWriteEntity.Builder();WriteEntityentity=builder.withDatabase(databaseName).withTable(tableName).build();HCatWriterwri

hadoop - mapreduce 程序没有给我任何输出。有人可以看看吗?

我没有在这个程序中得到输出。当我运行这个mapreduce程序时,我没有得到任何结果。输入文件:dict1.txtapple,seoapple,sevdog,kukuradog,kuttacat,bileicat,billi我想要的输出:appleseo|sevdogkukura|kuttacatbilei|billi映射器类代码:packagecom.accure.Dict;importjava.io.IOException;importjava.util.StringTokenizer;importorg.apache.hadoop.io.Text;importorg.apache

hadoop - 在 hue 中使用 oozie 工作流执行 MapReduce 作业给出错误的输出

我正在尝试使用hue中的oozie工作流执行MapReduce作业。当我提交作业时,oozie成功执行但我没有得到预期的输出。似乎从未调用过mapper或reducer。这是我的workflow.xml:${jobTracker}${nameNode}mapred.input.dir/user/root/jane/inputPathmapred.output.dir/user/root/jane/outputPath17mapred.mapper.classMapReduceGenerateReports.Mapmapred.reducer.classMapReduceGenerate