问题导读
1.mapreduce矩阵乘法是如何实现的?
2.本文如何改进,形成一个mapreduce?
以个性化新闻推荐为例,整个过程分成两个mapreduce阶段,当然也可以整合为一个mapreduce,详细参考
让你真正明白什么是MapReduce组合式,迭代式,链式
http://www.aboutyun.com/thread-7435-1-1.html
1、首先需要将原始数据处理成如下形式的两个文件
文件一:Item_user_score.txt格式:物品—用户—分数
如下图中第一行,物品100655565被用户1634974浏览过,则将分数记为1
1.png (8.4 KB, 下载次数: 10)
2015-8-9 19:25 上传
文件二:Item_Item_number.txt格式:物品—物品—相似度
如下图中第二行,物品100654360与物品100650498同时被两个用户浏览过
2.png (8.01 KB, 下载次数: 4)
2015-8-9 19:25 上传
2、矩阵乘法
其实文件一和文件二分别保存着一个矩阵,第二步就是要做矩阵乘法。
step1mapper.py
[mw_shl_code=python,true]#!/usr/bin/env python
"""A more advanced Reducer, using Python iterators and generators."""
from itertools import groupby
from operator import itemgetter
import sys
def read