学习一

PageRank 网页之间有联系,有相互引用关系,在百度搜索时候网页出现先后顺序,引用关系的越多越重要 对于数据量特别大的计算需要PageRank,采用mapreduce的计算模型。把一个大的数据量拆分成小的数据量。

拆分的过程叫map

把小部分汇总起来叫reduce

Mapreduce由map和reduce两个小部分组成。写程序写两个类,分别实现map和reduce;

2.Mapreduce的编程模型:

对于一台计算机无法完成的任务进行拆分(Map),每台计算机计算小任务,最后将任务进行汇总,的到最后的结果(Reduce)。Map reduce job三个类

(1)       Map的输出是reduce的输入

(2)       Map的输入是HDFS,输出到HDFS

(3)       过程有两次输入两次输出,都是(key,value)

<key1,value1>是map的输入

<key2,value2>是map的输出

<key3,value3>是reduce的输入

Value3的数据类型和value2一样,value3是一个集合,value3的每个元素是value2

<key4,value4>是reduce的输出

(4)       一个任务:job=map+reduce

(5)       <key,value>都是Hadoop自己的数据类型

String->text int->IntWritable

Null->NullWritable

Double->doubleWritable

所有的Hadoop数据类型必须实现Hadoop的序列化(实现接口Writable)

 

(6)       如果一个类实现Writablle的接口,他的对象就可以作为输入和输出

一个mapreduce的程序不能独立进行

 

posted on 2020-02-28 16:12  啥123  阅读(186)  评论(0编辑  收藏  举报