本文共 758 字,大约阅读时间需要 2 分钟。
社交网站上,在看好友信息时,经常会得到如下一个信息,你和xxx有N位共同好友。 下面是A、B、C、D、E 5个人的好友情况: A -> B C D B -> A C D E C -> A B D E D -> A B C E E -> B C D 第一行的意思是A有BCD 3个好友,下面几行的以此类推。 请使用 map reduce 任务,完成共同好友这个功能。 要求: 1. 描述清楚map和reduce函数的的输入,输出 2. (optional)将map 函数、reduce函数的输出逐步演算出来 解答 1.map输入:(偏移量,原始数据) map输出:([用户1,用户2],用户1和用户2的共同好友) reduce输入:([用户1,用户2],用户1和用户2的共同好友) reduce输出:([用户1,用户2],[用户1、用户2的共同好友列表]) 2. map输入: 0 ABCD 4 BACDE 9 CABDE 14 DABCE 19 EBCD map输出: BC A BD A CD A AC B AD B AE B CD B CE B DE B AB C AD C AE C BD C BE C DE C AB D AC D AE D BC D BE D CE D BC E BD E CD E reduce输入: BC A BD A CD A AC B AD B AE B CD B CE B DE B AB C AD C AE C BD C BE C DE C AB D AC D AE D BC D BE D CE D BC E BD E CD E reduce输出: AB CD AC BD AD BC AE BCD BC ADE BD ACE BE CD CD ABE CE BD DE BC转载地址:http://pglbb.baihongyu.com/