当前位置: 首页 > 知识库问答 >
问题:

当我们在Hadoop MapReduce中使用多个输入时,组合器是如何工作的

燕禄
2023-03-14
  1. 在上面的程序中,如果我编写combiner类,它将如何工作,据我所知combiner是映射器级别的聚合器,然而在本例中我们有两个映射器逻辑。
  2. 组合器逻辑是否会应用于两个映射器逻辑
  3. 有没有什么方法可以将组合器逻辑应用到任何一个映射器逻辑

共有1个答案

华瀚漠
2023-03-14

组合器聚合映射器输出,您可以用您认为更好的任何代码重写它。Combiner被称为迷你还原器,继承了还原器类。

请记住,组合器并不保证在所有情况下都能运行,因此映射器输出应该始终足以作为还原器输入。

我不明白你的问题,不管你的映射器输入是什么,映射器输出将是一些键值数据。combiner只是聚合或简单地将它们相加,假设映射器的输出是:

{'ali':2, 'jack':4, 'ali':3}
{'ali':5, 'jack':4}
 类似资料:
  • 每个Hadoop开发者都知道合并器是优化mapreduce的关键,但它是可选的。它可以最小化带宽并提高mapreduce作业性能。在这里,我的问题是,hadoop在默认情况下提供了许多功能,如数据局部性问题,但没有将组合器作为默认值。为什么?这意味着在所有情况下合并器都是不可取的?当我们不使用合成器时。如果我将它设为默认值,会有什么问题呢?

  • 问题内容: 我正在学习JPA,有一个问题: 在哪些情况下,我们的应用程序需要多个? 我知道的两种情况如下: 当我们的应用程序是多线程应用程序并且一个以上的线程需要JPA事务时,因为它不是线程安全的,因此每个线程需要一个线程。 当任何一个线程需要多个并发事务时,由于和之间存在一对一的关系,因此在该线程中我们需要多个。 Q1。当我们需要多个条件时,还有其他情况吗? Q2。据我了解,每个Percentn

  • 如果我使用,但和两个参数等于supplier,它就会运行。 如何使在方法中工作?

  • 我有一个JSON输入: 我的震动规格是: 我的输出是: 这个输出看起来不错,直到我的输入文档数组中只有一个 JSON 对象。然而,当我放另一个对象时,它看起来有点像这样,这是不希望的。它将两个对象的所有值组合在一起,如下所示: 请建议我在JOLT规范中应该做哪些更改,以使数组中的每个变换对象都列为一个单独的对象,而不是被混入。

  • 问题内容: 我有以下查询: 我想要的只是获得不同的汽车名称。 我写了这个,但这不是我想要的。 我怎么解决这个问题? 问题答案: 尝试

  • 因此,我试图分析我的元组集,看看对于该集中的x,是否有两对分别由2个元素和3个元素组成的元素。 所以就像每个第一个字符一样,必须有3个相同的字符和2个相同的字符。。。 但它们必须是连接的,例如如果有3A和2C,则顺序只能是AAAAC或CCAAA,而不能是CACAA或ACCAA等 那么比如说,, 下面是我对代码的尝试 然而,我的代码只有在它是一个列表时才起作用。。。当我放入一组元组时,它不起作用。。