草庐IT

reduce_dim

全部标签

java - 如何在 hadoop 中将 reducer 输出作为 xml 格式

我创建了一个自定义的xmloutputformat类,将reducer的输出转换为xml格式。这里的问题是代码执行成功但最终输出是普通格式而不是XML格式。谁能帮帮我……?packagedd;importjava.io.IOException;importjava.net.URI;importorg.apache.hadoop.conf.Configuration;importorg.apache.hadoop.conf.Configured;importorg.apache.hadoop.fs.FileSystem;importorg.apache.hadoop.fs.Path;im

java - 在 reduce 函数的参数中将 HashSet<Text> 作为 Iterable<Text> 传递 - HADOOP

我有一个HashMap,我想通过重载run方法将它的值传递给hadoop中的reduce函数。reduce函数接受Iterable。有没有办法做到这一点?预先感谢您的帮助。 最佳答案 HashSet(如文章标题)已经是可迭代的。通过它。如果您按照帖子正文所述使用map,则可以通过任何合适的:yourMap.keySet();//setofKyourMap.valueSet();//setofVyourMap.entrySet();//setofMap.Entry 关于java-在redu

hadoop - apache pig rank 运算符不适用于多个 reducer

我正在尝试使用pig的rank运算符为给定字符串分配整数。虽然当我将parallel子句设置为1时它起作用,但它没有更高的值(如200)。我需要使用多个reducer来加速处理,因为默认情况下,pig只使用一个reducer,这需要很长时间。我的查询如下:rank=按col1ASC并行200对tupl1进行排名; 最佳答案 实际上根据pig文档(https://pig.apache.org/docs/r0.11.1/perf.html#parallel):YoucanincludethePARALLELclausewithanyop

java - 控制不会进入 hadoop 中的 reducer

我在hadoop中写了一个自定义的输入格式和数据类型,它可以读取图像,将它存储到RGB数组中。但是当我在我的map和reduce函数中实现时,控制不会转到reducer函数。importjava.io.IOException;importjava.util.*;importorg.apache.hadoop.fs.Path;importorg.apache.hadoop.conf.*;importorg.apache.hadoop.io.*;importorg.apache.hadoop.mapreduce.*;importorg.apache.hadoop.mapreduce.lib

hadoop - 为什么 reducer 的数量大于我在 Hadoop 中指定的数量?

这是我的MR作业在控制台上的输出。作业成功完成。但我有两个顾虑。1)我指定了-Dmapred.reduce.slowstart.completed.maps=0.75。但是本地图完成75%时reducer没有启动,如下所示2)我指定了-Dmapred.reduce.tasks=2。但是启动的reducer任务的数量是3(如下所示)。为什么这两个参数没有被处理?hadoopjarhadoop-examples-1.2.1.jarwordcount-Dmapred.reduce.slowstart.completed.maps=0.75-Dmapred.reduce.tasks=2/dat

java - 如何将 reducer 类中的值添加到数组列表(Hadoop)中?

我的映射器输出:1504652886Geography8904209587Science8904209587Math9341024668English99341024668Science我现在正在尝试编写一个reducer类,它将组合公共(public)键并生成如下所示的输出:1504652886Geography8904209587Science,Math9341024668English9,Science在reducer类中,我试图制作一个数组列表,其中将包含特定ID的所有类(class),但我肯定做错了什么。我的代码如下:publicstaticclassReduceextend

hadoop - 遍历 reducer 中的 IntWritable 数组给出 "Can only iterate over an array or an instance of java.lang.Iterable"

我已经编写了一个Driver、Mapper和Reducer程序来尝试复合键(输入数据集中的多个字段)。数据集如下所示:国家、州、县、人口(百万)美国,加利福尼亚州,阿拉米达,12美国,加利福尼亚州,圣克拉拉,14美国,亚利桑那州,阿巴吉德,14我正在尝试找出国家/地区的总人口。因此,reducer应该聚合两个字段Country+State并显示人口。当我在步骤(在reducer代码中)遍历population时for(IntWritablei:values)我收到编译器错误“Canonlyiterateoveranarrayoraninstanceofjava.lang.Iterabl

hadoop - map reduce 中的reducer 数量

我在MR的驱动类中设置了3个reducer。这意味着将创建三个分区..但是mapper只发出两个唯一的键,比如male和female。在这种情况下,Reducer和reduce函数将运行多少次? 最佳答案 你的问题有点含糊,但我可以对可能发生的情况提出两种解释:1。二级还原Reducer1减少所有男性结果Reducer2减少所有女性结果Resucer3减少Reducer1和2的输出。2。拆分作业Reducer1减少所有男性结果Reducer2减少了女性结果的前半部分Reducer3减少了女性结果的后半部分

hadoop map-reduce : how to deploy non-jar files

您好,当我使用hadoopjar..args..提交我的jar以进行map-reduce作业时,我想知道如何部署非jar文件。对于hadoop流,有--file选项来发送文件,对于spark,我们有--files但我在文档中找不到这样的选项。在提交hadoopmap-reduce作业时,是否可以将非jar文件与我的jar一起发送? 最佳答案 Applicationscanspecifyacommaseparatedlistofpathswhichwouldbepresentinthecurrentworkingdirectoryof

hadoop - Spark :What is the ideal number of reducers

我的数据大约是300G。如果我使用Hadoop对其执行reduce作业,180个reduce插槽就可以了,队列中没有任务等待。如果我使用具有相同数量的reduce槽的Spark执行此操作,它会在洗牌阶段卡住,而如果我使用更多的槽(比如4000)就不会发生这种情况,但这将以低效率结束。有什么我可以做的,比如调整参数,以便我可以使用与hadoop相同的插槽?顺便说一句,我的集群有15个节点,每个节点有12个核心 最佳答案 ShuffleOperationinHadoopandSpark是关于该主题的好读物。一些引述:Eachmaptas