一. 数据基础:
主要包括:
- 用户行为数据:来源于用户行为日志,通过flume采集至HDFS
- 用户画像数据:来源于用户注册,保存至Hbase用户表
- 物品元数据:来源于内容管理系统,通过flume采集至HDFS
二. 推荐算法(粗排)
-
基于内容的推荐(简称CB):
(1)将HDFS中的物品元数据写入Hbase倒排表
(2)读取Hbase倒排表中数据20w+索引数据,以token(关键词)为rowkey,每个itemID为column,score为value
(3)通过spark进行基于内容的离线相似度计算,得到每个物品的相关推荐物品列表,按score排序后取TOP20,(itemA–>itemB:score,itemC:score)
(4)将推荐结果写入redis中,格式为(key:CB_8001909117 value:"1668409118:0.645192_4669809161:0.46545_7937409115:0.318916_6241409345:0.279611”) -
基于协同的推荐(简称CF):
(1)读取HDFS中32w+用户行为数据,通过spark进行基于协同的离线相似度计算,得到每个商品的相关推荐商品品列表,按score排序后取TOP20,(itemA–>itemB:score,itemC:sc