- 1、本文档共51页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Google三大法宝之一:MapReduce 矩阵乘法串行实现 1: for i=1;i=N;i++ 2: for j=1;j=N;j++ 3: 4: 5: 6: for k=1;k=N;k++ C[i][j] += A[i][k]*B[k][j] end for end for 7: end for ? 算法复杂度:O(N3) ? 以1次乘法需要1个时钟周期,计算10亿维度矩阵为 例,使用1G的CPU,需要的计算时间为: t = 10亿×10亿×10亿 / 10亿 = 317年! 是否OK? 想办法解决大规模矩阵相乘问题:我拆 ? Cm = Am ⅹ B ? M台服务器并行计算,时间降低为1/M C A B C1 Cm CM A1 Am AM = ⅹ 想办法解决大规模矩阵相乘问题:我再拆 ? Cm,n = Am ⅹ Bn ? M ⅹM台服务器并行计算,时间降低为1/M2 C A B A1 Am AM = ⅹ C1,1 Cm,1 CM,1 B1 Bn BM 子任务 子任务 子任务 … 拆的本质- 分而治之 ? 分而治之 – Divide and Conquer – 一个大的计算任务分解为若干小计算任务 – 子任务计算结果合并后获得最终结果 计算任务 Divide Conquer 计算结果 MapReduce的来源 ? 编程模型: – 1956年John McCarthy(图灵奖获得者)提出的Lisp语言中的 Map/Reduce方法 – Map输入是一个函数和n个列表,输出是一个新的列表,列表中的元素是 将输入函数作用在n个输入列表中每个对应元素获得的计算结果。 – Reduce输入是一个函数和一个列表,输出是将函数依次作用于列表的每 个元素后获得的计算结果 (map vector #* #(1 2 3 4 5) #(5 4 3 2 1) - #(5 8 9 8 5) (reduce #+ #(5 8 9 8 5)) - 35 Lisp中的Map和Reduce操作 MapReduce原理 Source:sun.fim.uni-passau.de/cl/MapReduceFoundation/ MapReduce机制 ? 主控程序(Master):将Map和Reduce分配到合适的工作机上 ? 工作机(Worker):执行Map或Reduce任务 MapReduce不仅仅是编程模型! ? 让程序员在使用MapReduce时面对以下细节问题? – 大数据如何分割为小数据块? – 如何调度计算任务并分配和调度map和reduce任务节点? – 如何在任务节点间交换数据? – 如何同步任务? – 相互依赖的任务是否执行完成? – 任务节点失效时该如何处理? ? Google的MapReduce是一个完整的计算框架 – 程序员只需要编写少量的程序实现应用层逻辑 程序示例:WordCount #include mapreduce/mapreduce.h class WordCounter : public Mapper { public: virtual void Map(const MapInput input) { const string text = input.value(); const int n = text.size(); for (int i = 0; i n; ) { while ((i n) isspace(text[i])) i++; int start = i; while ((i n) !isspace(text[i])) i++; if (start i) Emit(text.substr(start,i-start),1); }}}; REGISTER_MAPPER(WordCounter); class Adder : public Reducer { virtual void Reduce(ReduceInput* input) { int64 value = 0; while (!input-done()) { value += StringToInt(input-value()); input-NextValue(); } Emit(IntToString(value)); }}; REGISTER_REDUCER(Adder); int main(int argc, char
您可能关注的文档
- 2013发现不一样的CNKI中国知网.ppt
- 2013城市形成因素.ppt
- 大学职业生涯人物访谈PPT飞扬小组.ppt
- 信息技术-信息安全课件.ppt
- 2013大学职业生涯人物访谈PPT.ppt
- 大学职业规划班会[1].ppt
- 2013央视网国标频道行业榜样品牌-战略合作伙伴企业.ppt
- 大学英语(B)test05.ppt
- 大学英语(B)test06.ppt
- 大学英语(B)考前辅导交际用语.ppt
- [中央]2023年中国电子学会招聘应届生笔试历年参考题库附带答案详解.docx
- [吉安]2023年江西吉安市青原区总工会招聘协理员笔试历年参考题库附带答案详解.docx
- [中央]中华预防医学会科普信息部工作人员招聘笔试历年参考题库附带答案详解.docx
- [保定]河北保定市第二医院招聘工作人员49人笔试历年参考题库附带答案详解.docx
- [南通]江苏南通市崇川区人民法院招聘专职人民调解员10人笔试历年参考题库附带答案详解.docx
- [厦门]2023年福建厦门市机关事务管理局非在编工作人员招聘笔试历年参考题库附带答案详解.docx
- [三明]2023年福建三明市尤溪县招聘小学幼儿园新任教师79人笔试历年参考题库附带答案详解.docx
- [哈尔滨]2023年黑龙江哈尔滨市木兰县调配事业单位工作人员笔试历年参考题库附带答案详解.docx
- [上海]2023年上海市气象局所属事业单位招聘笔试历年参考题库附带答案详解.docx
- [台州]2023年浙江台州椒江区招聘中小学教师40人笔试历年参考题库附带答案详解.docx
最近下载
- 中国急性胰腺炎诊治指南(2021).docx
- 2024届高考散文阅读知识点即答题技巧概述+课件113张.pptx VIP
- 2024苏科版新教材八年级物理上册新课程内容解读课件(深度).pdf
- Unit3 第2课时Speed up Fuel up(教学设计)-三年级英语下册(外研版三起2024).pdf
- 第16课优秀影视作品欣赏与分析教学设计-2023—2024学年人教版初中综合实践活动八年级上册.docx
- 幼儿园中班音乐《章鱼和小鱼》 优质课件.pptx
- 考研真题武汉理工大学833材料科学基础历年考研真题汇编(含部分答案).docx
- 2024年度房地产市场总结报告:泉州-保利和润.docx
- 北京理工大学考博英语历年真题及详解.pdf
- 传热学(全套714页课件课件).pptx VIP
文档评论(0)