
大数据学习系列(八):MapReduce编程实例——计算两个人的共同好友数量
5星
- 浏览量: 0
- 大小:None
- 文件类型:None
简介:
本篇教程为大数据学习系列第八讲,主要内容是通过MapReduce编程技术实现计算社交网络中任意两个用户之间的共同好友数量,帮助读者掌握大规模数据处理中的关联分析技巧。
现有如下数据:
A:B,C,D,F,E,O
B:A,C,E,K
C:F,A,D,I
D:A,E,F,L
E:B,C,D,M,L
F:A,B,C,D,E,O,M,G
G:A,C,D,E,F,H,I,J
目标是找出哪些人两两之间有共同好友,以及这些共同好友是谁。
思路:
第一步:只求哪些人两两之间存在某个共同好友。
例如对于A的列表B、C、D、F、E和O,
可以生成以下关系对(假设每一对都代表一个键值对):
- A-B: C
- A-C: D, F, E, O
- A-D: B, F, E
...
通过这种方法,我们可以找到所有用户之间的共同好友。
接下来的步骤是将这些关系写入Hadoop MapReduce中的`context.write()`函数。例如:
```java
package com.bigdata.map;
// 假设已经读取了数据,并且正在处理A的好友列表。
for (好友列表) {
context.write(B, C); // 表示用户 A 和 B 之间有共同好友 C
}
```
这个过程需要对每个用户的每一对关系重复执行,以便找出所有存在的共同好友。
全部评论 (0)
还没有任何评论哟~


