我有一个map reduce代码,在mapper中我在做一些计算,而在reducer中我在应用公式以得到结果。我的结果是intdouble对作为键,文本作为值格式。我需要知道如何对减速机的结果进行排序?
这是减速机的输出示例。我需要按钥匙分类。我在mapper中实现了所有代码,它对代码进行了完美的排序,但与reducer不同的是,结果没有排序。
[1 0.5] Mr. Nice Guy
[1 0.0] Rush Hour
[1 0.3] Twin Dragons
[1 0.6] Snake in the Eagle's Shadow
[1 0.5] Police Story
[1 0.5] Armour of God 2: Operation Condor
[1 0.5] Drunken Master
应为排序列表:
[1 0.0] Rush Hour
[1 0.3] Twin Dragons
[1 0.5] Mr. Nice Guy
[1 0.5] Police Story
[1 0.5] Armour of God 2: Operation Condor
[1 0.5] Drunken Master
[1 0.6] Snake in the Eagle's Shadow
1条答案
按热度按时间wecizke31#
你想把钥匙怎么分类?
我会定义一个对象
IntDoublePair
,使其具有可比性,实现适合我的比较逻辑,然后在reducer中示例化List<IntDoublePair> myList
在迭代每个键的值时,我会将它们添加到myList
。最后对列表进行排序。您还可以搜索“辅助排序mapreduce”。。。也许这会符合你的目的