Joh*_*ohn 12 reduce amazon hadoop aggregate mapreduce
我希望我能以正确的方式提出这个问题.我正在学习Elastic MapReduce的方法,并且我看到了许多对"Aggregate"减速器的引用,它可以与"Streaming"作业流程一起使用.
在亚马逊的"Amazon Elastic MapReduce简介"PDF中,它声明"Amazon Elastic MapReduce有一个名为aggregrate的默认缩减器"
我想知道的是:还有其他默认减速机可用吗?
我知道我可以编写自己的减速机,但我不想写完已经存在的东西并"重新发明轮子",因为我确信我的轮子不会像原来那样好.
他们提到的减速器在这里记录:
http://hadoop.apache.org/docs/stable/api/org/apache/hadoop/mapred/lib/aggregate/package-summary.html
这是一个内置于流媒体工具中的reducer.它提供了一种通过编写映射器来执行常见计算的简单方法,该映射器输出以特殊方式格式化的键.
例如,如果您的映射器输出:
LongValueSum:id1\t12
LongValueSum:id1\t13
LongValueSum:id2\t1
UniqValueCount:id3\tval1
UniqValueCount:id3\tval2
Run Code Online (Sandbox Code Playgroud)
reducer将计算每个LongValueSum的总和,并计算UniqValueCount的不同值.因此减速机输出将是:
id1\t25
id2\t12
id3\t2
Run Code Online (Sandbox Code Playgroud)
与运行流式组合器和减速器相比,此包中的减速器和组合器非常快,因此使用聚合包装既方便又快捷.
我也有类似的情况。我从 Google 结果等推断,现在的答案是“不,Hadoop 中没有其他默认减速器”,这很糟糕,因为拥有默认减速器(例如“平均”或“中值”)显然很有用“所以你不必自己写。
http://hadoop.apache.org/common/docs/current/api/org/apache/hadoop/mapred/lib/aggregate/package-summary.html显示了许多有用的聚合器用途,但我找不到有关如何使用的文档访问文档和 Erik Forsberg 的答案中描述的非常基本的键/值和之外的其他功能。也许这个功能只在Java API中公开,我不想使用它。
顺便说一句,恐怕埃里克·福斯伯格的回答并不是这个特定问题的好答案。可以构建另一个可能是有用答案的问题,但这不是OP所要求的。
| 归档时间: |
|
| 查看次数: |
4589 次 |
| 最近记录: |