当前课程知识点:大数据系统基础 >  4. 处理框架 >  授课视频 >  4.14章节总结

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

4.14章节总结在线视频

4.14章节总结

下一节:5.1内存计算概述

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

4.14章节总结课程教案、知识点、字幕

这个近些年

MapReduce和PIG

这样的系统

都有了非常长足的发展

大数据也是个非常热门的

这么的一个题目

我们来看一看

目前MapReduce处于什么状态

它之后的发展方向是什么

Hadoop在前两年

我们介绍Hadoop都是这样介绍

就像我们课上讲的那种Hadoop

它是一种Hadoop1.0的状态

那么我们底下跑的是文件系统

HDFS仿照的Google的gfs

上面跑的MapReduce

刚才MapReduce我们提到了

它的资源管理和调度

和数据处理

它是绑定在一起跑的

在之上我们可以跑PIG

可以跑Hive

或者可以跑其他的cascade

这一系列的这些东西

这是我们在现阶段的Hadoop

现在Hadoop已经发展到了

2.0的时代

虽然没有讲到这些

是因为Hadoop2.0它并没有

真正地反映它的MapReduce

这种基本的架构是什么

它的几个核心要点的变化

是什么

一个是它把资源集群的管理

从MapReduce中抽取出来了

它把集群资源的管理

作为单独的一个服务

叫做Yarn

作为这个跑在集群上

MapReduce反而成了

这个管理上头的

只是一种服务

那么PIG可能是变成了

另一种服务

Hive变成了另外一种服务

都是由这个资源集群管理的

这个管理系统

通过这个执行的引擎

然后来进行

在这种情况下

MapReduce的框架

实际上MapReduce的语言本身

就变得会更简单

不像我们刚才讲的那些

它既有资源管理和调度

它既有job-kill

它自个儿要判断

到底在哪里执行

它又要实际地执行

所以MapReduce它可以

自己专心地管理它的

执行的过程

但是执行引擎

包括它的资源管理

他们把它切分开了

这样变得更加结构化

而且在Hadoop2.0这是一个

(01:52)的这个项目里头

它又吸收了一系列的

其他的服务

比如说storm 比如说Gigraph

这一系列的服务

也可以跑在Yarn上面

甚至于可以跑一个完整的

就是(02:04)的数据库

那么叫做HBase

也是跑在Hadoop上面的

跑在HDFs上的

但是HDFs变成了一个标准的

这个存储能够支持各种各样的

这种服务

这个是Hadoop正在变化的方向

或者说目前已经变化成这样了

现在Hadoop2点几发布了

一段时间了

也基本比较成熟了

所以现在大家如果用到的

Hadoop2点几的话

它都是带Yarn这个管理

资源管理框架的

Hadoop这个东西

发展的这些年

它最重要的为什么大家

非常关注它

因为它积累了一个非常强大的

生态系统

就很多的东西都是基于它的

首先有一系列的这个

它的应用

包括一系列的应用和搜索引擎

这些东西

nutch是一个开放的open的

搜索引擎

然后它可以用来处理什么

它可以用来处理一系列的

比如说是半结构化数据

或者非结构化的数据

那么我们有这个像

像这个PIG

像HIVE这样的

更高层级的抽象

然后我们有一个workflow的

management比如说像cascading

它是可以manage一堆的

Hadoop的job

它可以有一些

workflow management

然后它可以做 统一一些个数据

它可以当成一个数据库来用

比如说HBASE

它可以存机构化数据

有些人实现了什么

这一系列的东西

它可以实现结构化数据

甚至于有些人实现了

更高层次的抽象

比如说像mahout

我们后面会讲到

它会

就是一个机器学习的库

你可以直接

不用编任何程序

就在一个数据上运行一些

机器学习的算法

它也是在Hadoop上运行

然后最后它还有一些个

企业级应用的集成

比如说BI

就是商业情网

Business Intelligence

这一系列集群可以做一些

非常漂亮的图表

可以非常漂亮的前端

然后你跑一个集群

它必然有一系列的工具

来维护你的集群的运行

就是软硬件的这种

基础架构的运行

所以它也有一系列的

管理的系统

比如像eclipse这样的东西

它可以帮助你更好地开发它

Ganglia这些东西

可以更高地帮助你监控

这种机器的使用率等等

但是一切都是

这些东西就像Hadoop的

文件系统它的中心就是

一个是Hadoop的文件系统

加上Hadoop的MapReduce

当然现在我们把MapReduce

拆开之后

变成了一个Hadoop的

资源管理器

叫Yarn

以及它的MapReduce

这是它的执行任务的一个引擎

所以Hadoop这个项目

它之所以成功

是因为它成功地代替的

这一整套的

这样的一种生态系统

所以说这个Hadoop

它是big data这件事情

能够飞速发展的一个

非常重要的助推器

当然是不是Hadoop这玩意儿

大家就觉得它特别的牛

然后特别的(04:43)

这个事可说

有些人

很多人都认为Hadoop是个

非常非常好的一个系统

或者说MapReduce

Hadoop本身是照着

MapReduce的论文来做的

那就是说谷歌发明MapReduce

是不是一个非常非常地

创新的东西呢

大部分人认为是的

但是有些人尤其是这个

做了很多时间database的人

他们会有另外的看法

他们说其实这些东西

没有什么新的

且它扔掉了无数的

database领域

就数据库领域

几十年来的研究成果

这些人全部都忽略掉了

然后他们才想到了

MapReduce这种东西

所以它这两个人

都是非常有名的

做数据库方面的教授

他们联合写了一个博客文章

叫做MapReduce:A major

step backwards
所以他指出MapReduce

这几点是非常的差的

就是说大家觉得

你明明可以有更好的办法做

为什么不做

那么首先第一点

说在编程模式里头

它往后退了一大步

大家早就知道

SQL怎么写了

大家早就知道我们不应该

去直接操作数据

我们应该去写这种declared

而且声明式的语言

像SQL那样的语言

为什么大家还想写MapReduce

这是一

就是没有编程模式

没有这种合理的抽象

第二 他说是一个无

不优化的方法来实现的

你想搜索任何一个数据

那数据库里头怎么搜索数据

它有各种各样的方法

它有各种各样的排序的方法

如果它没有排序的话

它可以建议索引

这个数据库的人研究的

30年 40年他才研究了

这些东西

那么说MapReduce

那你把这些乱七八糟的

研究全部扔掉

然后你说我怎么找到一个数据

那我全部扫描一遍

我才能找得到

那暴力法

第三点 他说这个东西

一点都不创新

任何一个MapReduce讨论了

包括map

包括reduce

包括它的(06:30)

包括它的数据可以分割

包括它的(06:35)

包括这种它的整个的partion

包括MapReduce

一个map接一个reduce

这种模式

在25年之前

这个数据库领域

大家就发明了这种方法

并行的数据库也是这种执行的

只不过大家没这么说而已

因为它只是编程数据库里

一个巨小的一个方面

说它这个东西

没有什么可创新的

最后一点就是说

目前数据库里头已经实现了

那么多的功能和特点

它这里都没有

比如说索引

比如说有更新

有事务处理transaction

比如说它有constrained

就是说我这个数据

应该是什么样的

如果不是这样的

我数据库拒绝把它放进去

比如我可以定义很多逻辑视图

我说这个数据

虽然我在磁盘上存的

和我看见的是不一样的

这叫逻辑试图

叫view(音)

说这些东西是数据库研究了

那么多年

数据库慢慢积累起来的东西

MapReduce里都不包括

然后它还声称

它是一个非常新的概念

这是为什么大家还愿意用它

其实它初期散发出来的

MapReduce

其实它确实什么功能都没有

但是为什么要用它

我们可以大家

其实同学们可以自己想一想

但是我理解这个原因是

因为一 MapReduce这个东西

它足够的简单

二 因为它足够的简单

所以它能够扩展的规模很大

你看分布式数据库

它扩展的功能一般都

没有那么大

因为它扛了太多的包袱

扛了太多的东西在那里

第三

就是说太抽象的东西

它一步走不到大数据的那一步

就数据库虽然有了

这么多好的索引

这么多好的访问方式

那么多好的优化

但是毕竟它不是为了大数据

特殊优化出来的

那么人们想跑大数据

人们历史(音)就要跑大数据

我历史有这个需求

我等着你数据库

优化大这个地步

还需要等很长很长的时间

大家才能够为大数据

来调整那个数据库

所以我们不如重新写一个

短平快的解决方案

能够凑合着把它做上

这个总比我等着数据库要强

所以我觉得这个是

大家可以值得想的

什么样的系统

才是有用的系统

那么MapReduce确实解决了

在当时大家的一个

非常痛的地方

就是我没办法解决

处理这些数据

那时候的数据库

都处理不了这种问题

但是是不是后期

它会变得越来越抽象

high level的语言会不会

变得越来越普及

MapReduce会不会被淘汰

这种东西我觉得

个人有个人不同的看法

大家可以自己在实践的过程中

可以自己想一想

这个事情究竟应该是

如何来做的

或者说什么东西更适合你

什么东西更适合你自己的应用

今天的这节课就到这里

谢谢大家

大数据系统基础课程列表:

1. 绪论

-授课视频

--什么是大数据

--大数据典型应用

--大数据的特点

--大数据技术体系

--大数据生态系统

--大数据技术挑战

--课程内容

-1. 绪论--Quiz 1

2.云计算

-授课视频

--2.1大数据和云计算关系概述

--2.2并行化理念

--2.3规模经济理念

--2.4从仓库规模计算机到云

--2.5云计算商业模式概述

--2.6云计算带来的价值

--2.7云计算的分类

--2.8虚拟化技术概述

--2.9计算虚拟化

--2.10网络虚拟化:基础

--2.11网络虚拟化:软件定义网络

--2.12软件定义网络实现

--2.13存储虚拟化:用户接口

--2.14存储虚拟化:分布式存储实现方式

--2.15虚拟化技术总结

--2.16OPENSTACK

--2.17云计算小结

-2.云计算--Quiz 2

3.文件存储

-授课视频

--Video

--Video

--Video

--Video

--Video

--Video

--Video

--Video

--Video

--Video

--Video

--Video

--Video

--Video

--Video

--Video

-3.文件存储--Quiz3

4. 处理框架

-授课视频

--4.1大数据的处理框架

--4.2MapReduce编程模型

--MapReduce执行过程

--4.4MapReduce数据流

--4.5MapReduce性能优化与容错

--4.6Hadoop

--4.7MapReduce总结

--4.8Pig Latin

--4.9Pig Latin语法

--4.10Pig Latin 嵌套数据类型

--4.11Pig Latin 实现与优化

--Pig Latin 实现与优化(2)

--4.13类似框架

--4.14章节总结

-4. 处理框架--Quiz4

5.内存计算

-授课视频

--5.1内存计算概述

--5.2并行计算挑战

--5.3并行计算的局限性

--5.4大数据处理并行系统

--5.5内存计算需求

--5.6MapReduce文件传递数据

--5.7内存计算的可行性

--5.8内存层次的延迟

--5.9内存计算实例-spark

--5.10SPARK-RDD

--5.11大数据并行系统

--5.12Spark编程接口

--5.13Spark编程实例——Log挖掘

--5.14Spark编程实例——WorkCount

--5.15Spark实现技术

--5.16复杂的DAG示例

--5.17RDD性能的提高

--5.18Spark应用和生态环境

--5.19Spark的局限性

-5.内存计算--Quiz5

6. NoSQL

-授课视频

--NoSQL与Cassandra

--数据模型、接口、语言

--系统架构与Gossip协议

--一致性哈希与数据分区

--数据副本及一致性

--节点本地数据存储

-6. NoSQL--Quiz6

7. 流计算

-授课视屏

--Video

--Video

--Video

--Video

--Video

--Video

--Video

--Video

--Video

--Video

-7. 流计算--Quiz7

4.14章节总结笔记与讨论

也许你还感兴趣的课程:

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