公司准备做一个推荐功能,从文章库中根据用户阅读记录推荐相关的文章。这个文章库保存了所有子公司的文章,更新频率比较高,所以没有使用计算两两相似度的方式。
目前使用 spark 做 demo 实现如下:
1. submit 应用时传递用户 id
2. 将该用户的最后阅读的 5 篇文章合并为一条长内容
3. 获取最新的 500 篇文章
4. 用长内容与最新的 500 条生成一个 DateFrame 做余弦相似度计算,得到最相似的 topN
5. 定时或者实时触发 submit
虽然能跑,但是总感觉哪里不对。同时对如何实现批量为户计算推荐内容也没有好思路,难道传用户 id 数组然后是循环跑上述流程吗
目前使用 spark 做 demo 实现如下:
1. submit 应用时传递用户 id
2. 将该用户的最后阅读的 5 篇文章合并为一条长内容
3. 获取最新的 500 篇文章
4. 用长内容与最新的 500 条生成一个 DateFrame 做余弦相似度计算,得到最相似的 topN
5. 定时或者实时触发 submit
虽然能跑,但是总感觉哪里不对。同时对如何实现批量为户计算推荐内容也没有好思路,难道传用户 id 数组然后是循环跑上述流程吗