当前课程知识点:高级大数据系统 >  MapReduce >  Learn MapReduce by playing with cards >  Video

返回《高级大数据系统》慕课在线视频课程列表

Video在线视频

Video

下一节:Video

返回《高级大数据系统》慕课在线视频列表

Video课程教案、知识点、字幕

我们来讲MapReduce

下面我们通过一个小游戏

来给大家来介绍怎么用

MapReduce做一个非常简单的任务

这个游戏的名字叫做用

MapReuduce来对扑克进行排序

我这里有一副扑克

扑克大家知道有四种不同的花色

梅花 方片 红桃 还有黑桃

我们现在就要把这幅扑克给排序出来

我们来看看用计算机来怎么做这件事情

这张A4纸代表了一台服务器

我的双手呢

就来演示这个排序的算法

怎么来做呢

我们来看

那么当我看到一张这个花色的时候

我会把它放到一个固定的位置

它是另外一个不同的花色

把它放到这个位置

红桃 一个新的位置

方片是已经有了

所以把它排到这个有的位置上

这是黑桃

这是梅花

这个算法呢

实际上可以看得出来

它是在串行的进行着

我们也找到一个数据

会把它放到指定的位置上

通过我的手的模拟呢

实际上实现的是今天计算机

对相同的任务所进行的操作

这样呢

我们就把这四个牌四种颜色的扑克给分开了

我们把数据进行整理

把它变成一个数据

一个数据集的数据进行一个整理

这个数据进行整理

这个数据进行整理

我们实际上得到了四种花色的扑克牌

完成了依次排序

现在想我们想做的一件事情就是说

用并行的方式

用我们已经说过的MapReduce的这个方法

把这个速度给加快

我们怎么来做呢

我们找来一台新的服务器

现在我们有了两台服务器

大家可以看到服务器一和服务器二

那么一样 我们把刚刚的数据打散

我们把扑克重新打乱

我们来进行这样一个分布式的一个计算

怎么做呢

我们把数据分成了两部分

并不要求两部分的数据严格的一样

只要把它分成两部分就可以了

分别会在两台机器上进行

在第一台机器上

我们依然运行刚刚说过的这个算法

我们把不一样的颜色给挑出来

由于我们刚刚已经做过这件事情

有很多没有被完全打乱

所以现在我们分起来相对是比较容易的

不过大家应该可以知道我的这个意思是什么了

我们就把这个速度可以加快

在这台机器上的算法运行完了

那么另外一台机器是同时进行的

因为我现在只有一个人

所以我把它分开进行

实际上这两个过程是可以完全并行起来的对吧

所以这边也进行了这样的一个运算

我们分别在两台服务器上运行的这样一个算法

两台机器上对数据进行了独立的这个数据的排序

我们还有下一步怎么做呢

我们现在就进行到了

MapReduce中的Reduce的阶段

我们让这台机器来做

比如说方片和梅花的Reduce

也就是说把方片和梅花都归总到这台机器上

而让这台机器来做另外两种

就是黑桃和这个红桃的Reduce

我们来看怎么做

那么在这个过程中

实际上就会发生网络的传输

我们需要从这台机器上把方片的数据传到这边来

那么它的过程是这样

这些数据会根据他们的花色被提取出来

然后通过网络传输到这边

这台机器上的梅花也经历了同样的事情

从这台服务器通过网络传输到这台服务器

对应的从这台服务器会把黑桃的数据传输到这边

从这边把红桃的数据传到了这边

同样我们也把这个四种花色给排序开了

那么他们分别存储到了这个两台服务器上

有了这两个过程之后

我们实际上把扑克牌的四种颜色也区分开了

那么它完成的这样一个作用呢

和刚刚我们在单机上进行的一个过程是完全一致的

高级大数据系统课程列表:

Introduction to Big Data Systems

-What is big data and what is big data system?

--Video

-Problems in big data systems?

--Video

-Overview of the course

--Video

-Principles of big data system design

--Video

Basics of Linux Data Processing

-Manipulating Data on Linux

--Video

--Video

--Video

-Basics of Linux Data Processing--Manipulating Data

-Running Commands on a Single Machine

--Video

-Running Commands on a Single Machine--作业

-Using a Linux Cluster

--Video

-Using a Linux Cluster--作业

Distributed File System

-Storage for Big Data Computing: Distributed file system

--Video

-Storage for Big Data Computing: Distributed file system--作业

-File system and GFS

--Video

-File system and GFS--作业

-Understanding HDFS using Legos

--Video

-Understanding HDFS using Legos--作业

-File System Implementation and DFS

--Video

--Video

-File System Implementation and DFS--作业

MapReduce

-What is MapReduce and why

--Video

-What is MapReduce and why

-Learn MapReduce by playing with cards

--Video

-Processing pattern

--Video

-Processing pattern--作业

-Hadoop

--Video

-Hadoop--作业

-Algorithms in MapReduce

--Video

-Algorithms in MapReduce--作业

-Tutorial

--Video

In-memory Processing

-Background

--Video

-Background--作业

-Spark

--Video

-Spark--作业

-Use Spark for data mining

--Video

-Use Spark for data mining--作业

-Spark data processing

--Video

-Spark data processing--作业

-Experiment in Spark

--Video

-Experiment in Spark--作业

Streaming Data Processing

-Introduction to streaming data processing

--Video

-Introduction to streaming data processing--作业

-Storm

--Video

--Video

--Video

-Storm--作业

-Spark streaming

--Video

--Video

-Spark streaming--作业

NoSQL

-NoSQL introduction

--Video

-NoSQL introduction--作业

-Common Advantages

--Video

-Common Advantages--作业

-Bigtable

--Video

-Bigtable--作业

-Master Startup

--Video

-Master Startup--作业

-HBase

--Video

-HBase--作业

Graph Processing

-What is GraphDB and Graph data processing

--Video

-What is GraphDB and Graph data processing--作业

-Graph systems

--Video

-Graph systems

-Example of a GraphDB

--Video

-Example of a GraphDB--作业

Machine Learning System

-Mahout

--Video

-Mahout--作业

-Case Study: Recommendation

--Video

-Case Study: Recommendatio作业

-Recommendation in Mahout

--Video

-Recommendation in Mahout--作业

Video笔记与讨论

也许你还感兴趣的课程:

© 柠檬大学-慕课导航 课程版权归原始院校所有,
本网站仅通过互联网进行慕课课程索引,不提供在线课程学习和视频,请同学们点击报名到课程提供网站进行学习。