草庐IT

reduce_ex

全部标签

hadoop - 在同一台机器上的多个内核上运行 Map-Reduce 应用程序

我想在一台机器上运行mapreduce任务,我想使用我机器的所有核心。哪种方法最好?如果我以伪分布式模式安装hadoop,是否可以使用所有内核? 最佳答案 您可以使用属性ma​​pred.tasktracker.map.tasks.maximum和ma​​pred.tasktracker.reduce.tasks.maximum来增加映射器的数量/根据您的硬件规范,Reducers在TaskTracker上同时生成。默认情况下,它设置为2,因此最多2个map和2个reduce将在给定实例上运行。但是,要记住的一件事是,如果您的输入非

java - Hadoop 正在完全跳过 reduce 阶段

我已经像这样设置了一个Hadoop作业:publicstaticvoidmain(String[]args)throwsException{Configurationconf=newConfiguration();Jobjob=Job.getInstance(conf,"Legion");job.setJarByClass(Legion.class);job.setMapperClass(CallQualityMap.class);job.setReducerClass(CallQualityReduce.class);//Explicitlyconfiguremapandreduce

hadoop - 在没有 reducer 的情况下映射任务结果

当mapreduce作业运行时,map任务结果存储在本地文件系统中,然后reducer的最终结果存储在hdfs中。问题是map任务结果存储在本地文件系统中的原因是什么?在没有reduce阶段(只有map阶段存在)的mapreduce作业的情况下,最终结果存储在哪里? 最佳答案 1)Mapper输出存储在本地fs中,因为在大多数情况下,我们对Reducer阶段给出的输出(也称为最终输出)感兴趣。Mapperpairisintermediateoutput一旦传递给Reducer,这是最不重要的。如果我们将Mapper输出存储在hdfs

hadoop - 我可以在不设置 mapred.reduce.tasks=1 的情况下在 map reduce 程序中找到最小值、最大值或平均值吗

我试图了解如何使用mapreduce找到一个非常大的文件的最小值、最大值和平均值。将reduce任务数设置为1是一个显而易见的解决方案,但对于非常大的文件来说并不是最佳选择。我也在考虑编写一个链式MR作业,但最终,你最终在最终作业中使用了一个reducer。有人可以阐明一些其他方法吗?谢谢 最佳答案 无论您的输入数据集有多大,我在这里使用1个reducer都没有发现任何问题。为此,您应该使用组合器功能,该功能应返回其本地Max、本地Min、本地TotalSum和Count并传递给单个reducer。这样,到达reducer的数据量非

hadoop - Mapreduce - 当 reducer 达到 67% 时超时

当reducer达到67%时,我们会收到超时异常,我认为这是在排序阶段之后和reduce阶段之前。请告知我们应该寻找哪些参数来解决问题。16/06/1516:58:13INFOmapreduce.Job:map100%reduce0%16/06/1516:58:23INFOmapreduce.Job:map100%reduce24%16/06/1516:59:05INFOmapreduce.Job:map100%reduce28%16/06/1516:59:08INFOmapreduce.Job:map100%reduce30%16/06/1516:59:39INFOmapreduce

hadoop - 如何在 map/reduce 中执行 ETL

如果我必须将一个文本文件逐行转换为另一个文本文件,我们该如何设计mapper/reducer。我写了一个简单的map/reduce程序,它做了一个小的转换,但要求更详细一些,下面是详细信息:文件的结构通常如下-第一行包含以逗号分隔的列名列表。第二行和其余行针对列指定值在某些行中,尾随列的值可能会丢失,例如:如果有15列,则可能只为前10列指定值。我有大约5个输入文件,我需要将它们转换并聚合到一个文件中。转换特定于5个输入文件中的每一个。如何将文件名等上下文信息传递给映射器/缩减器程序?转换特定于列,那么我如何记住第一行中提到的列,然后关联和转换行中的值? 最

hadoop - 为什么 Hbase with Hadoop map reduce 性能慢?

我已经在3台具有完全分布式模式的机器上配置了hadoop1.0.3。在下面的第一台机器上,作业正在运行:1)4316SecondaryNameNode4006NameNode4159数据节点4619任务追踪器4425JobTracker2)2794任务追踪器2672数据节点3)3338数据节点3447任务追踪器现在当我在上面运行简单的mapreduce作业时,执行mapreducejob需要更长的时间。所以我在Hadoop上安装了HBASE层。现在我在3个集群上有以下HBASE进程。1)5115HQuorumPeer5198HMaster5408HRegionServer2)3719H

hadoop - 需要帮助编写 Map/Reduce 作业以找到平均值

我是HadoopMap/Reduce的新手。我正在尝试编写一个Map/Reduce作业来查找n个进程所花费的平均时间,给定如下输入文本文件:ProcessNameTimeprocess110process220processn30我看了几个教程,但仍然无法透彻理解。我的mapper和reducer类应该如何解决这个问题?我的输出始终是文本文件还是可以将平均值直接存储在某种变量中?谢谢。 最佳答案 您的映射器读取文本文件并在每一行上应用以下映射函数map:(key,value)time=value[2]emit("1",time)所有

Hadoop reducer 数量配置选项优先级

设置reduce数量的以下3个选项的优先级是什么?换句话说,如果三个都设置了,会考虑哪一个?选项1:setNumReduceTasks(2)withintheapplicationcode选项2:-Dmapreduce.job.reduces=2ascommandlineargument选项3:through$HADOOP_CONF_DIR/mapred-site.xmlfilemapreduce.job.reduces2 最佳答案 根据Hadoop-权威指南The-Doptionisusedtosettheconfiguratio

hadoop - RDBMS 与 MAP REDUCE

我正在阅读Hadoop-权威指南,我遇到了这些行:NormalizationposesproblemsforMapReduce,sinceitmakesreadingarecordanonlocaloperation,andoneofthecentralassumptionsthatMapReducemakesisthatitispossibletoperform(high-speed)streamingreadsandwrites.谁能用通俗易懂的语言解释一下这些行的实际含义?我知道什么是规范化。它是如何使读取记录成为非本地的手术?非本地操作引用hadoop是什么意思?