2011-05-16 158 views
0

我有一個文件,其中包含文本格式的IP包頭。在mapreduce中對map函數中的鍵值對進行排序

在映射函數之後,將針對特定的IP地址調用每個reduce方法。我想按排序順序排列值,但它們沒有排序。該值基本上是一條線,其中有時間戳。我希望reduce中的所有值都按時間戳排序。

請幫我在那裏做分類。

+0

您能否提供一些關於映射輸入的示例信息以及您期望減少的輸入?好像你還沒有爲reducer選擇正確的密鑰,因爲你可以將時間戳定義爲密鑰或者使用多個字段的複合密鑰(例如通過流式傳輸,你可以通過設置stream.num.map.output.key .fields到您希望用作密鑰的字段數)。 – diliop 2011-05-17 00:11:00

回答

0

Hadoop MapReduce有一個名爲「Secondary Sort」的功能,可以實現您想要的功能。

該書「Hadoop the definitive guide」在這個主題上有不錯的篇幅。