草庐IT

algorithm - Hadoop MapReduce - 具有少量键和每个键许多值的 Reducer

Hadoop天生就是为处理大数据而创建的。但是,如果Mappers的输出也很大,太大而无法容纳Reducers内存,会​​发生什么情况?假设我们正在考虑要聚类的大量数据。我们使用一些分区算法,它会找到指定数量的元素“组”(簇),这样一个簇中的元素是相似的,但属于不同簇的元素是不同的。通常需要指定簇数。如果我尝试将K-means实现为最著名的聚类算法,一次迭代将如下所示:映射阶段-将对象分配到最近的质心Reducephase-根据集群中的所有对象计算新的质心但是如果我们只有两个集群会怎样?在那种情况下,大数据集将被分成两部分,并且只有两个键,每个键的值将包含大数据集的一半。我不明白的是-

r - 在 R 中运行 map reduce 作业时出错

我刚刚开始集成RHadoop。它是与Hadoop集成的R-studio服务器,但在运行map-reduce作业时出现错误。当我运行以下代码行时。library(rmr2)a堆栈跟踪:15/03/2421:13:47INFOConfiguration.deprecation:mapred.reduce.tasksisdeprecated.Instead,usemapreduce.job.reducespackageJobJar:[][/usr/lib/hadoop-mapreduce/hadoop-streaming-2.5.0-cdh5.2.0.jar]/tmp/streamjob47

hadoop - GCE Hadoop 工作节点上的 reducer 插槽数量是多少?

我正在GoogleComputeEngine的Hadoop集群上测试一些MapReduce作业的扩展,并发现了一些意想不到的结果。简而言之,有人告诉我这种行为可能是由于Hadoop集群中每个工作节点都有多个reducer槽。有人可以确认GCE的Hadoop集群上MapReduce作业的每个工作节点(工作虚拟机)的reducer槽数吗?我正在使用hadoop2_env.sh部署。https://groups.google.com/a/cloudera.org/forum/#!topic/oryx-user/AFIU2PE2g8o提供指向有关我正在经历的行为的背景讨论的链接,如果需要,可提

hadoop - 独立的 map reduce 作业一个接一个地执行

是否有可能执行独立的mapreduce作业(不在reducer输出的链接中成为映射器的输入。可以一个接一个地执行。 最佳答案 在你的驱动代码中调用两个方法runfirstjob,runsecondjob.就像这样。这只是一个提示,根据你的需要做修改publicclassExerciseDriver{staticConfigurationconf;publicstaticvoidmain(String[]args)throwsException{ExerciseDriverED=newExerciseDriver();conf=new

Hadoop 2.6.0 官方实例 : Yarn (MR2) much slower than Map Reduce (MR1) in single node setup

我开始玩hadoop2.6.0,根据officialdocumentation搭建了一个伪分布式单节点系统.当我运行简单的MapReduce(MR1)示例(参见“伪分布式操作->执行”)时,总执行时间约为7秒。更准确地说,bash的时间给出:real0m6.769suser0m7.375ssys0m0.400s当我通过Yarn(MR2)运行相同的示例时(参见“伪分布式操作->YARNonSingleNode”),总执行时间约为100sec,因此非常慢。bash的时间给出:real1m38.422suser0m4.798ssys0m0.319s因此,(出于某种原因)在用户空间之外存在大量

hadoop - 在 map reduce 作业之间传递变量

我无法理解如何将变量(输出)从Job1传递到Job2。假设我的Job1是WordCount。N=230中的最终reducer输出。我的第二份工作需要这些信息作为其逻辑。但我不希望它作为映射器输入。我希望输入与Job1相同。我不喜欢使用Counter,因为我读到它不是很可靠。谢谢 最佳答案 您可以将N传递给第二个作业,将N添加到第二个作业配置对象。要将任何键/值添加到配置中,您可以使用提交作业的客户端的“设置”方法。然后,从映射器中,您可以使用“get”方法检索配置中N的值。查看“配置”文档,您会发现“获取”、“设置”和许多专门的方法

hadoop - 运行 Map Reduce 作业显示错误 - Mkdirs 无法创建/var/folders/

当我在Mac终端中运行mapreduce作业时:PawandeepSingh1$hadoopjarMaximumTemperature.jarExceptioninthread"main"java.io.IOException:Mkdirsfailedtocreate/var/folders/v1/lyx_f0rj615cy8s54_bk053h0000gp/T/hadoop-unjar3698429834837790177/META-INF/licenseatorg.apache.hadoop.util.RunJar.ensureDirectory(RunJar.java:128)a

hadoop - Map Reduce 程序中的问题

我正在使用Putty执行一个hadoopMap-Reduce作业来解决简单的字数统计问题。我已经在VM上配置了Hadoop,并且我已经验证了Hadoop的所有组件都在使用jps运行。当我使用命令执行代码时hadoopjar无标题.jar我遇到了错误15/06/2019:36:48WARNmapred.JobClient:UseGenericOptionsParserforparsingthearguments.ApplicationsshouldimplementToolforthesame.15/06/2019:37:09INFOutil.NativeCodeLoader:Loade

java - 使用 hadoop reducer 在将批量写入操作写入 mongodb 时检查重复记录

我正在使用hadoopmap-reduce来处理XML文件。我直接将JSON数据存储到mongodb中。如何实现在执行BulkWriteOperation之前只将不重复的记录存储到数据库中?重复记录标准将基于产品图片和产品名称,我不想使用吗啡层,我们可以在其中为类成员分配索引.这是我的reducer类:publicclassXMLReducerextendsReducer{privatestaticfinalLoggerLOGGER=Logger.getLogger(XMLReducer.class);protectedvoidreduce(Textkey,Iterablevalues

hadoop - 如何编写查询以避免在选择不同和大小的 collect_set 配置单元查询中使用单个 reducer?

如何重写这些查询以避免在reduce阶段使用单个reducer?它需要永远,我失去了使用它的并行性的好处。selectid,count(distinctlocations)ASunique_locationsfrommytable;和selectid,size(collect_set(locations))ASunique_locationsfrommytable; 最佳答案 使用两个查询对count(distinctvar)有效:SELECTcount(1)FROM(SELECTDISTINCTlocationsasunique_