论文部分内容阅读
在大数据时代背景下,数据量以指数级的速度迅猛增长。面对日益庞大的数据规模,如何从纷繁复杂的数据体系中过滤提炼出真正有价值的信息,成为人们亟待解决的问题。推荐系统可以通过挖掘用户历史行为,结合用户之间和物品之间的相似程度把用户可能感兴趣的物品推送出去,是一种更加主动和智能的信息过滤方式。目前推荐系统已经广泛应用于社交网络、电子商务以及音乐、视频、美食等生活信息服务领域。推荐系统不仅要具备深入挖掘用户兴趣、准确把握用户需求的能力,还需要快速地从海量数据中过滤出有价值的信息。将推荐系统与基于大数据的分布式计算平台相结合,使推荐系统具备大数据处理和分析能力,既是顺势而为,也是必然举措。Spark是继Hadoop之后的一种基于内存的分布式计算平台,与Hadoop的MapReduce编程模型相比,Spark由于其迭代并行化的设计思想,在性能指标和速度指标上都更具优越性。本文的主要研究内容有:(1)在Spark环境下搭建数据仓库,为推荐应用引擎提供分布式数据调用接口,用于存储原始的用户、物品信息和用户对物品的评分,以及推荐系统的离线计算结果。(2)基于Spark平台完成3种推荐引擎的功能实现工作,根据计算时长和复杂度、更新变化频率将推荐系统分为离线计算和在线计算两部分,采用MovieLens数据集分别从准确度和响应速度2个方面测试推荐引擎的性能和效率。本文在对Spark分布式计算平台、常用推荐算法理论及其应用场景进行深入的理论研究后,设计并实现了基于Spark平台的3种推荐引擎,并完成了对三种推荐引擎的评价指标结果分析,指标显示在现有软硬件环境下,三种推荐引擎基本达到了预期标准,为基于Spark平台的其他推荐引擎的设计实现奠定了技术基础,理论与实践相结合,具有一定的现实意义。