【问题标题】:multiple keys in a MapReduce JobMapReduce 作业中的多个键
【发布时间】:2013-04-11 14:35:37
【问题描述】:

我是 hadoop 新手。我正在尝试运行 MapReduce(Java 编程),其中键是多个键(文本)。我应该使用哪种类型的数组来存储这些键以将它们作为参数传递给 outputCollector?谢谢!!!

【问题讨论】:

  • 如果列表不复杂,那么您可以将键放在一个逗号分隔的字符串中,并将其设置为传递给 outputCollector 的 Text 对象。并在 reducer 中拆分出 key 以获得多个 key 的列表。

标签: java hadoop mapreduce


【解决方案1】:

您应该编写自己的 implements WritableComparable<YourClassName> 类来将键一起存储在一个简洁的对象中。请参阅 this link 了解一个很好的例子。

【讨论】:

  • 是的,我就是这么做的 =)) 谢谢你!
【解决方案2】:

如果只是一些文本值,我建议将它们作为分隔字符串发送。它既方便又直接。否则,您可以按照 Quetzalcoatl 的建议进行操作。您可能会发现这 2 个问题很有用: How do i set an Object as the Value for Map output in Hadoop MapReduce? How (in Hadoop),is the data put into map and reduce functions in correct types?

【讨论】:

    猜你喜欢
    • 2023-03-21
    • 2011-01-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-12-04
    相关资源
    最近更新 更多