云计算 3 MapReduce可解决哪些算法问题 ◆MapReduce可解决的复杂算法:Web搜索引擎(网页爬取、网 页排序、搜索算法)、Web访问日志分析(分析和挖掘用户在 Web上的行为)、数据/文本统计分析(如专利文献引用分析和统 计)、图算法并行化宽度优先搜索(最短路径问题)、机器学习 、数据挖掘等。 1986
MapReduce可解决哪些算法问题 MapReduce可解决的复杂算法:Web搜索引擎(网页爬取、网 页排序、搜索算法)、Web访问日志分析(分析和挖掘用户在 Web上的行为)、数据/文本统计分析(如专利文献引用分析和统 计)、图算法并行化宽度优先搜索(最短路径问题)、机器学习 、数据挖掘等。 云计算
云计算 3 MapReduce分布式处理技术 MapReduce定义了Map和Reducei两个抽象的编程接口,由用户 编程实现: ◆Map:对一组数据元素进行某种重复式的处理 ◆Reduce:对Map的中间结果进行某种进一步的结果整理 /986
MapReduce分布式处理技术 MapReduce定义了Map和Reduce两个抽象的编程接口,由用户 编程实现: Map: 对一组数据元素进行某种重复式的处理 Reduce: 对Map的中间结果进行某种进一步的结果整理 云计算
云计算 3 MapReduce分布式处理技术 原始数据 原始数据 原始数据 1、在编程的时候,开发者 2 M 需要编写两个函数: Map:(in_key,in_value) Map Map Map Reduce:(key,[value 1,value 2..]) 2、Map操作产生结果是 <key,value>对 Reduce Reduce 3、在Map,Reduce之间系 统把同一Key归类到Reduce 结果 V结果 3、Reduce操作对相同的 R Key进行归类处理 1986
MapReduce分布式处理技术 云计算 Map Map … Map … 原始数据 1 原始数据 2 原始数据 M Reduce Reduce 结果 1 结果 R … … 1、在编程的时候,开发者 需要编写两个函数: Map:(in_key, in_value) Reduce:(key,[value 1,value 2…]) 2、Map操作产生结果是 <key,value>对 3、在Map,Reduce之间系 统把同一Key归类到Reduce 3、Reduce操作对相同的 Key进行归类处理
云计算 3 MapReduce分布式处理技术一Map端 map:(k1,v1)-list(k2,v2) ◆输入:键值对(k1,V1)表示的数据 ◆处理:文档数据记录(如文本文件中的行,或数据表格中的行) 将以"键值对”形式传入map函数;map函数将处理这些键值对 ,并把处理的一组键值对中间结果Ist(k2,V2)以另一种键值对形 式输出。 ◆输出:键值对(k2,V2)表示的一组中间数据 ◆备注:Iist(k2,V2)表示有一个或多个键值对组成的列表
MapReduce分布式处理技术——Map端 map: (k1, v1) → list(k2, v2) 输入:键值对(k1, v1)表示的数据 处理:文档数据记录(如文本文件中的行,或数据表格中的行) 将以“键值对”形式传入map函数;map函数将处理这些键值对 ,并把处理的一组键值对中间结果list(k2, v2)以另一种键值对形 式输出。 输出:键值对(k2, v2)表示的一组中间数据 备注: list(k2, v2) 表示有一个或多个键值对组成的列表 云计算
云计算 c3 MapReduce分布式处理技术一Reducei端 reduce:(k2,list(v2))-list(k3,v3) ◆输入:由map输出的一组键值对list(k2,v2)将被进行合并处理, 同样主键下的不同数值合并会到一个list(v2)中,故reducel的输入 为(k2,list(v2) ◆处理:对传入的中间结果列表数据进行某种整理或进一步的处理 ,并产生最终的某种形式的结果输出list(k3,v3)。 ◆输出:最终输出结果Iist(k3,V3)
MapReduce分布式处理技术——Reduce端 reduce: (k2, list(v2)) → list(k3, v3) 输入:由map输出的一组键值对list(k2, v2) 将被进行合并处理, 同样主键下的不同数值合并会到一个list(v2)中,故reduce的输入 为(k2, list(v2))。 处理:对传入的中间结果列表数据进行某种整理或进一步的处理 ,并产生最终的某种形式的结果输出list(k3, v3)。 输出:最终输出结果list(k3, v3)。 云计算