北京大学:《大规模数据处理——云计算 Mass Data Processing Cloud Computing》课程教学资源(PPT课件)MapReduce算法设计 Basic MapReduce Algorithm Design

大纲 Functional Language and MapReduce ■MapReduce Basic MapReduce Algorithm Design Hadoop and Java Practice 2
2 大纲 ◼ Functional Language and MapReduce ◼ MapReduce Basic ◼ MapReduce Algorithm Design ◼ Hadoop and Java Practice

NC&IS Functional Language and MapReduce
Functional Language and MapReduce

What is Functional Programming? In computer science,functional programming is a programming paradigm that treats computation as the evaluation of mathematical functions and avoids state and mutable data.It emphasizes the application of functions,in contrast with the imperative programming style that emphasizes changes in state.[1] 4
4 What is Functional Programming? ◼ In computer science, functional programming is a programming paradigm that treats computation as the evaluation of mathematical functions and avoids state and mutable data. It emphasizes the application of functions, in contrast with the imperative programming style that emphasizes changes in state.[1]

Example Summing the integers 1 to 10 in Java: total =0; for(i=1;i≤10;++1) total total+i; The computation method is variable assignment. 5 5
5 Example Summing the integers 1 to 10 in Java: total = 0; for (i = 1; i 10; ++i) total = total+i; The computation method is variable assignment. 5

Example Summing the integers 1 to 10 in Haskell: sum[1..10] The computation method is function application. 6 6
6 Example Summing the integers 1 to 10 in Haskell: sum [1..10] The computation method is function application. 6

Why is it Useful? The abstract nature of functional programming leads to considerably simpler programs; It also supports a number of powerful new ways to structure and reason about programs. 7
7 Why is it Useful? ◼ The abstract nature of functional programming leads to considerably simpler programs; ◼ It also supports a number of powerful new ways to structure and reason about programs

Functional Programming Review Functional operations do not modify data structures: they always create new ones Original data still exists in unmodified form Data flows are implicit in program design Order of operations does not matter 8
8 Functional Programming Review ◼ Functional operations do not modify data structures: ◼ they always create new ones ◼ Original data still exists in unmodified form ◼ Data flows are implicit in program design ◼ Order of operations does not matter

Functional Programming Review fun foo(l:int list)= sum(I)mul(I)length(I) Order of sum()and mul(),etc does not matter They do not modify I 9
9 Functional Programming Review fun foo(l: int list) = sum(l) + mul(l) + length(l) ◼ Order of sum() and mul(), etc does not matter ◼ They do not modify l

Functional Updates Do Not Modify Structures fun append(x,Ist) = let Ist'reverse Ist in reverse (x Ist') The append()function above reverses a list,adds a new element to the front,and returns all of that, reversed,which appends an item. But it never modifies Ist! 10
10 Functional Updates Do Not Modify Structures fun append(x, lst) = let lst' = reverse lst in reverse ( x :: lst' ) The append() function above reverses a list, adds a new element to the front, and returns all of that, reversed, which appends an item. But it never modifies lst!

Functions Can Be Used As Arguments fun DoDouble(f,x)=f(f x) It does not matter what f does to its argument;DoDouble()will do it twice. A function is called higher-order if it takes a function as an argument or returns a function as a result 11
11 Functions Can Be Used As Arguments fun DoDouble(f, x) = f (f x) It does not matter what f does to its argument; DoDouble() will do it twice. A function is called higher-order if it takes a function as an argument or returns a function as a result
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 北京大学:《大规模数据处理——云计算 Mass Data Processing Cloud Computing》课程教学资源(PPT课件)MapReduce原理 MapReduce Theory and Practice.ppt
- 北京大学:《大规模数据处理——云计算 Mass Data Processing Cloud Computing》课程教学资源(PPT课件)课程介绍 Introduction to Cloud Computing(主讲:彭波).ppt
- 《大规模数据处理——云计算 Mass Data Processing Cloud Computing》课程教学资源(阅读材料)Data-Intensive Text Processing(MapReduce book 20100307).pdf
- 《大规模数据处理——云计算 Mass Data Processing Cloud Computing》课程教学资源(阅读材料)MapReduce——Simplified Data Processing on Large Clusters.pdf
- 《大规模数据处理——云计算 Mass Data Processing Cloud Computing》课程教学资源(阅读材料)The Google File System(GFS).pdf
- 《大规模数据处理——云计算 Mass Data Processing Cloud Computing》课程教学资源(阅读材料)k-means++——The Advantages of Careful Seeding.pdf
- 《大规模数据处理——云计算 Mass Data Processing Cloud Computing》课程教学资源(阅读材料)Efficient Clustering of High-Dimensional Data Sets with Application to Reference Matching.pdf
- 《大规模数据处理——云计算 Mass Data Processing Cloud Computing》课程教学资源(阅读材料)The Anatomy of a Large-Scale Hypertextual Web Search Engine.pdf
- 上海中医药大学:课程教学大纲汇编合集——教学大纲(计算机中心、图书信息中心).pdf
- 北京中医药大学:《计算机基础》课程教学资源(PPT课件)第8章 模块.ppt
- 北京中医药大学:《计算机基础》课程PPT教学课件(Access 数据库程序设计)包装应用系统.ppt
- 北京中医药大学:《计算机基础》课程教学资源(PPT课件)第7章 宏.ppt
- 北京中医药大学:《计算机基础》课程教学资源(PPT课件)第5章 报表.ppt
- 北京中医药大学:《计算机基础》课程教学资源(教学大纲,Ⅱ).doc
- 北京中医药大学:《计算机基础》课程教学资源(电子教材)《Access 数据库程序设计》第5章 报表.doc
- 北京中医药大学:《计算机基础》课程教学资源(电子教材)《Access 数据库程序设计》第4章 窗体.doc
- 北京中医药大学:《计算机基础》课程教学资源(试卷习题)2009年9月全国计算机等级考试二级笔试试卷——Access 数据库程序设计(含答案).docx
- 北京中医药大学:《计算机基础》课程教学资源(试卷习题)2008年9月计算机等级考试二级(ACCESS真题试卷及答案).docx
- 北京中医药大学:《计算机基础》课程教学资源(试卷习题)全国计算机等级考试二级笔试试卷——Access 数据库程序设计.docx
- 北京中医药大学:《计算机基础》课程教学资源(试卷习题)全国计算机等级考试二级笔试试卷——Access 数据库程序设计.docx
- 北京大学:《大规模数据处理——云计算 Mass Data Processing Cloud Computing》课程教学资源(PPT课件)MapReduce系统设计与实现 Web Search on MapReduce.ppt
- 北京大学:《大规模数据处理——云计算 Mass Data Processing Cloud Computing》课程教学资源(PPT课件)Clustering问题 Clustering.ppt
- 北京大学:《大规模数据处理——云计算 Mass Data Processing Cloud Computing》课程教学资源(PPT课件)并行与分布式系统基础 Introduction to Distributed Systems.ppt
- 北京大学:《大规模数据处理——云计算 Mass Data Processing Cloud Computing》课程教学资源(PPT课件)分布式文件系统 Distributed File systems.ppt
- 北京大学:《移动计算与无线网络》课程教学资源(学生PPT)课程实验——WLAN性能实证(802.11 Wlan无线通讯实验).ppt
- 北京大学:《移动计算与无线网络》课程教学资源(学生PPT)揭秘WLAN无线链路的丢包规律.ppt
- 北京大学:《移动计算与无线网络》课程教学资源(学生PPT)无线实验——距离障碍物等因素之影响.ppt
- 西安电子科技大学:《信息系统安全》课程教学资源(PPT课件讲稿)第一章 绪论(主讲教师:董庆宽).ppt
- 西安电子科技大学:《现代密码学》课程教学资源(PPT课件讲稿)第三章 分组密码.pptx
- 西安电子科技大学:《现代密码学》课程教学资源(PPT课件讲稿)第五章 消息认证算法.pptx
- 郑州大学:《计算机网络》课程电子教案(课件讲稿)第1章 概述.pdf
- 郑州大学:《计算机网络》课程电子教案(课件讲稿)第2章 物理层.pdf
- 郑州大学:《计算机网络》课程电子教案(课件讲稿)第3章 数据链路层.pdf
- 郑州大学:《计算机网络》课程电子教案(课件讲稿)第4章 网络层.pdf
- 郑州大学:《计算机网络》课程电子教案(课件讲稿)第5章 运输层.pdf
- 郑州大学:《计算机网络》课程电子教案(课件讲稿)第6章 应用层.pdf
- 唐山广播电视大学:Premiere Pro CC视频编辑——期末复习题及答案.doc
- 四川开放大学:《跨境电商》课程教学资源(试卷习题)期末考试试题一(试题).doc
- 四川开放大学:《跨境电商》课程教学资源(试卷习题)期末考试试题一(答案).doc
- 四川开放大学:《跨境电商》课程教学资源(试卷习题)期末考试试题三(试题).doc