PageRank的MapReduce实现知识讲稿.ppt

  1. 1、本文档共35页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
PageRank的MapReduce实现知识讲稿.ppt

PageRank的MapReduce实现 2011-09 PageRank算法介绍 PR(A)是网页A的PageRank值; a是一个权值,例如可以设定为0.5,经过多次迭代,PR(A)接近精确值; ti表示链向页面A的第i个网页; C(ti)表示页面i的链出链接数 PageRank算法介绍 PageRank算法的MapReduce实现 实现一个简单的搜索引擎 WordCount例程源码讲解 PageRank的MapReduce实现 Step 1:分析一个页面的链接数并赋初值; Step 2:多次迭代计算页面的PageRank值; Step 3:根据PageRank值排序。 Step1 分析页面链接数 Map: -input: (0 , index.html) -output: (index.html , 1.html) (index.html , 2.html) … (index.html , n.html) 说明:输出为(key,value)键值对,key为当前网页路径,value为当前网页中的对外的链接。 Reduce: -input: key: “index.html” value: “1.html”,…,”n.html” -output: key: ”index.html” value: “1.0 1.html,…,n.html” 说明:Hadoop把Map函数输出的key合并,相同key的value合并成一个集合作为reduce的value。输出key网页的PR值(初值为1.0) Step1 分析页面链接数 对于MapReduce程序,Map函数的输入为用户指定的文件,那么输入的value值就是文件内容(可以配置成按行读取或者把整个文件视作一个大字符串),key值是读入文本的偏移量。程序员对输入的key,value进行一系列操作,然后按(key,value)键值对的形式输出。需要注意的是:输出的key,value是程序员自己定义的,可以和输入的key,value毫不相关。 系统获取Map函数的输出,把相同的key合并,再把key和value集合作为键值对作为reduce函数的输入。程序员自定义reduce函数中的处理方法,输出(key,value)键值对到磁盘文件。 Step2 迭代计算PageRank值 Map: -input: key: index.html value:PR1.html,2.html… -output: key: “1.html” Value: “index.htmlPR number of outlinks” Key: “2.html” Value:” index.htmlPR number of outlinks” …… Reduce: -input: Key: “1.html” Value: ”index.html 0.5 23”, ”2.html 2.4 2”,…… key: “2.html” value: “index.html 0.5 23”, “1.html 1.3 3”,…… -output: key:”1.html” value:“new PR index.html,2.html” PageRank number of outlinks 注意,这是1.html的新PR值 Step2 迭代计算PageRank值 说明: step2是一个迭代过程,每次将磁盘上的文件读入,key为每一个网页链接,value的第一项为当前网页的PangRank值,后面接该网页中的对外链接。Map函数将输入的每一对(key,value)“反转”成多对(value,key)输出,也就是说,每个输出的key为输入value中的每一个链接,而输出value为输入key的链接+输入key的PR值+输入key的对外链接数。 在reduce函数中,就可以根据输入的value中的参数来计算每一个key新的PageRank值,并按Map函数的格式输出到磁盘,以作为下一次迭代的输入。迭代多次后,PageRank值趋于稳定,就得出了较为精确的PageRank值。 Step3 根据PageRank值排序 Map: -input: key: “index.html” value: “PR 1.html,2.html” -output: key: “PR” value: “index.html” S

文档评论(0)

yuzongxu123 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档