阿里云-使用MaxCompute构建好友推荐系统

应用场景

MapReduce经常用于如下商业场景:

  • 搜索:网页爬取、倒排索引、PageRank。
  • Web访问日志分析:分析和挖掘用户在web上的访问、购物行为特征,实现个性化推荐;分析用户访问行为。
  • 文本统计分析:比如莫言小说的WordCount、词频TFIDF分析;学术论文、专利文献的引用分析和统计;维基百科数据分析等。
  • 海量数据挖掘:非结构化数据、时空数据、图像数据的挖掘。
  • 机器学习:监督学习、无监督学习、分类算法如决策树、SVM等。
  • 自然语言处理:基于大数据的训练和预测;基于语料库构建单词同现矩阵,频繁项集数据挖掘、重复文档检测等。
  • 广告推荐:用户点击(CTR)和购买行为(CVR)预测。

 

最佳好友推荐往往通过查找两个非好友之间的共同好友来实现

原始数据:一张表,两个字段,用户ID以及多个好友(好友是另一条数据的用户ID)

期望输出结果:用户ID1,用户ID2,共同好友个数

                          共同好友越多,越可以在推荐中占据靠前位置

 

MapReduce编程模型(用于1T以上大数据集的并行计算)

Map:数据分片,并行处理

Combine:数据本地聚合,降低中间传输量

Reduce:数据汇总,输出结果

 

好友推荐

Map阶段:key为两个用户,value为共同好友个数(0则两个用户已经是共同好友了)

Combine阶段:key相同的聚合,value相加

Reduce阶段:多个并行数据得到最终汇总(其中一个为0,另一个非0,最终记为0,已是好友)

 

推荐系统架构

云服务器ECS->(应用数据)->云数据库RDS->(分布式数据计算)->大数据计算服务->大数据开发平台

|---------------------业务系统------------------------|  |---------------------------------计算系统-------------------------|

MaxCompute使用(原odps)

海量数据实时性要求不高的批量处理,适用于商业智能,数据分析,数据挖掘

开发:先下载安装odps插件在idea开发工具上,创建odpsProject需要指定odps cmd命令的路径

安装参考下面这个文档安装MaxComputeStudio

https://help.aliyun.com/document_detail/50892.html?spm=5176.11065259.1996646101.searchclickresult.7d0870e1QMBJz1

File->Settings->Plugins->单击Browse repositories…按钮,然后搜索MaxCompute Studio->找到MaxCompute Studio插件页面,单击绿色Install按钮进行安装->确认安装后,重新启动IntelliJ IDEA,完成安装。可以新建maxcomputeSQL

开发流程:MaxCompute在本地开发应用->打包通过dataIDE上传到云

 

 

你可能感兴趣的:(阿里云)