基于Spark的实时推荐系统设计与实现

来源 :东南大学 | 被引量 : 2次 | 上传用户:zz123zz123zz
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
随着互联网的迅速发展,网络所承载的数据信息也在爆炸式增长。在面对这些海量信息时,人们往往很难找到自己想要的,感兴趣的内容,为了解决这个问题从而诞生了搜索引擎,那些目的很明确的用户可以根据关键字搜索来快速,准确的找到自己想要的内容。然而在实际的日常生活中,很多用户的需求是模糊的,潜在的,为了挖掘出这些用户的潜在兴趣从而又诞生了推荐系统。推荐系统是一种解决信息过载的工具,能够帮助用户发现自己可能感兴趣的信息,使用户寻找感兴趣内容所花费的时间大大减少,从而增加网站的用户黏性。决定推荐系统性能的关键是系统架构设计和推荐算法这两个方面。传统基于离线批计算平台Hadoop的推荐系统,虽然可以通过对海量数据的计算获得较为准确的推荐,但其计算时间较长,无法满足推荐的实时性需求,而目前基于Lambda架构构建的实时推荐系统,采用离线批处理层和在线实时层结合的策略,虽然具有计算准确以及高容错等优点,但也存在结果汇总困难,系统复杂,维护困难等问题,且推荐的结果依赖离线层,如果短时间用户行为发生较大变化则会发生离线层的结果滞后现象,导致推荐不能及时反映用户的兴趣变化。在推荐算法方面,目前常用的推荐算法如协同过滤等一开始只是为了解决离线环境下的推荐任务而提出的,每次的推荐都要基于整个评分矩阵计算得出物品相似度或者用户相似度,当矩阵维度过大计算代价会变得非常高,耗时较长,很难满足实时推荐的需求,而且在实时数据流环境下评分矩阵会经常改变,导致用户相似度和物品相似度的频繁变动,如何在这种环境下实时更新推荐计算结果以及尽量减少不必要的计算成为了推荐算法要面对的一个重要问题。针对上述问题,本文在深入研究了推荐系统的架构设计和推荐算法的基础上,利用Spark的流处理组件Spark Streaming所具有的微批次流数据处理特性,设计并实现了一个推荐计算部分完全由在线层组成的实时推荐系统,和目前广泛使用的Lambda架构相比,本系统不依赖离线层,使得系统的复杂度有了很大降低,并且不存在结果汇总困难等问题,同时因为基于完全在线层的设计提高了推荐的实时性。本文工作具体表现在以下几个方面:首先,对实时推荐系统的需求进行了详细的分析,对可用实时推荐的架构进行论证和对比。在此基础上,基于Spark,Kafka,HBase,Redis实现一个推荐计算部分完全由在线层组成的实时推荐系统架构,即利用Spark Streaming的微批次流处理特性对数据流进行实时计算,以满足实时推荐系对吞吐量和计算延时的需求;利用Kafka消息队列来作为数据缓存模块,以解决实际应用场景中实时数据流不稳定的问题;利用HBase数据库对海量数据提供的存储和随机访问能力,再结合基于内存的数据库Redis提供的快速缓存性能来满足数据处理过程中对数据读写性能的要求。然后,对协同过滤推荐算法在数据流环境下存在的问题进行深入研究,通过在推荐算法中引入Hoeffding界理论实现对数据流的实时过滤,以及通过用户对物品评价正负一致度的物品相似度计算方法实现物品相似度的增量更新,将基于物品的协同过滤推荐算法应用到数据流环境中,在秒级的延时内更新推荐结果。最后,在实时推荐系统架构和推荐算法研究的基础上,对基于Spark的实时推荐系统进行了具体的实现,并通过Movielens数据集对系统进行了测试,结果表明本系统能够在保证推荐准确率的前提下实现秒级延时下的推荐更新,很好的满足推荐实时性需求。
其他文献
介绍了基于ASP技术和数据库技术的实验室管理信息系统的设计方案,该方案基于B/S构架,充分利用了校园网络环境,探讨了系统的可行性、系统架构、功能及软件和硬件设计实现。
目的探讨终末期肾脏病(endstage renal disease,ESRD)患者MDR1基因多态性和二氢吡啶类钙拮抗剂(calcium channel blockers,CCB)诱导牙龈增生的关系。方法入选183例ESRD高血压患者,根
在传统的光学实验中,测量透镜焦距一般采用读数显微镜测量经被测透镜成像后的玻罗板两刻线间距离。由于操作者的熟练程度、瞄准精度等原因,在测量间距时容易产生读数误差,从而导
中国农业经过 2 0年的改革与发展 ,虽然在体制、机制和结构等方面实现了一系列突破 ,并开始走向市场化和现代化。但是在市场经济条件下 ,我国的农业发展也显露出诸多的矛盾 ,
在当今社会,信息技术高速发展,许多传统的学科纷纷接受信息化。衍生出医学信息学等领域信息学。领域信息学的发展,“国家信息化”以及社会转型的提出催生了理论信息学。本文主要
摘要:本文针对目前国内远程教育的教育理念、教育体系、教育模式相对滞后于社会经济发展,无法实现人才培养与企业需求有效对接问题进行分析,从更新教育理念、调整专业结构和教学内容、完善教学与实践相结合模式等方面,进行以企业需求为导向的远程教育应用型人才培养模式的探析。  关键词:远程教育 应用型人才培养 企业需求  中图分类号:G728  背景:我国现代远程教育试点工作开展至今已有十几年历程,虽然在技术应
索泰GT430—1GD3米格版采用了少有的全尺寸设计,索泰特有的8爪鱼高效供电元件,通过低至3.2m0的内阻起到节能的作用,相同性能的情况下让产品的功耗更低,同时出色的供电设计也赋予产
艾诺V5000HDG是一款性价比很高的MP4。正面为一块5英寸的彩屏,拥有800×480分辨率输出,保证了画质的细腻。虽然采用了塑料外壳,但经过磨砂工艺处理,在双手持握机身的时候
慢性肾脏病(chronic kidney disease,CKD)已经成为一个世界性的公共卫生问题。来自美国。肾脏数据系统(USRDS)数据显示2011年美国CKD的患病率已高达14%。同样地,我国CKD患病率己高达
随着全球经济一体化的深入发展,对外直接投资逐渐成为国际资本流动的主要形式,也日益成为全球重要的经济增长力量。与此同时,跨国并购在对外直接投资领域所占比重越来越高,引