当前课程知识点:大数据系统基础 >  3.文件存储 >  授课视频 >  Video

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

Video在线视频

Video

下一节:Video

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

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

从这一节开始呢

我们将讨论一个非常典型的

一个文件系统

叫做Google文件系统

那么这个Google文件系统

跟前面的AFS文件系统

完全不一样

那么我们从前面讨论的过程

大家也可以看到

不管是NFS还是AFS

那么它的一个文件

只能放在一个服务器上面

那如果文件太大

比如说

超过一个本地文件系统的

存储容量的话

它是无能为力的

因为需要把文件进行切分

放到不同的一个位置

需要做很多额外的工作

那这样的一个额外的工作

那恰恰是Google文件系统

它所能够提供的

那么我们后面可以看到

Google文件系统在这上面

它是怎么去做这件事情

那么首先第一个问题是

我们需要回答一下

为什么需要一个不同的一个

分布式文件系统

让Google这个公司去用

那么所有的事情

其实都是由应用驱动的

那么我们看一下

在Google的最大的应用

其实就是它的搜索引擎

那么我需要建立一个

新的一个分布式的一个文件系统

去为它的搜索引擎去服务

那么既然为搜索引擎去服务的话

我们去看一下搜索引擎

需要做一些什么样的工作

那么第一个呢

是为了建立搜索引擎

需要存储互联网容量的一个数据

那么我在做搜索引擎的时候

我第一步需要做的工作

是在互联网上去采集数据

那采集数据的话

我要把几乎整个互联网的数据

都要保存到本地

这样的话

我这个存储系统

就需要非常大的一个容量

那么单台机器是肯定不能

做这件事情的

是需要联合很多台机器

去做这个事情

那么第二个呢

我在存数据的时候

我必须要很快速地把这个数据

写到存储系统当中去

那么我在互联网上的话

我要下载数据

我不可能是让一台机器

去做这个工作

那么我肯定是有成千上百台机器

去做工作

那么成千上百台机器

需要同时地往这个文件系统里

写数据

那这就需要文件系统

支持数据快速地写入到

分布式文件系统当中去

当然Google它不光需要存数据

它还需要对数据进行查询

那么在查询之前呢

它需要对数据大量地进行处理

进行到台的索引

那么到台的索引

简单地说

它就是帮助用户把所有的查询

先给你做完了

那么之后呢

只需要把已经查询完的结果

交给用户就行了

那么这是到台索引的工作

那么到台索引

也需要对前面已经下载到本地

分布式文件系统里面的

所有的数据进行扫描

进行索引的一个重建

这个时候就需要对整个数据

进行快速的一个处理

那么在搜索引擎里面

也需要对于网页数据进行排序

因为比如说任意一个检索是

比如说清华大学

那么返回到页面

包含清华大学这四个字的页面

会非常非常的多

那么我希望一些重要的页面

返回给我

那些次要的页面

就不要返回给我了

那么这需要一个

数据排序的一个工作

需要对网页进行排序

那么需要对网页进行排序的话

那么底层文件系统

必须要能够支持这一点

让这个数据可以进行快速地访问

这样才能够达到

快速网页排序的一个功能

所以这个是Google文件系统

它需要建立的一个需求

那我们看一下

在这个Google文件系统里面

一些具体的一个需求

那么同样地

我们在Google里面的话

我的文件系统

也是需要有一个基础

那么这个基础是什么东西呢

那么就是一个

很大规模的一个集群

那么这个规模的一个集群的话

一般来说是采用x86的一个集群

那么这些集群的话

都是在市面上都是可以买到的

那么这些集群有一些特点

第一个最大的特点

它的规模会非常非常的一个大

那么可能有一排集群

可能一个集群包含了数千个结点

比如说3000个 4000个

甚至5000个结点

那么这些结点会通过一些

商用的网络

比如说我们平常用的以太网

把它们连在一起 对吧

那么在这个时候呢

商用的一个服务器有一个特点

它在绝大多数情况下

它会工作得很好

但是因为我数量实在太多了

那么会每时每刻

有可能会有一些

一台 或者是几台

或者是可能是上十台个模块

可能会出错

这是服务器的一个特点

那么因为我规模大了

那么在维护的时候

也有可能会出错

我非常有可能比如说把一个机架

机器掉电了

那么几十台服务器

马上就会下线

在这个时候呢

现有的文件系统

是没有办法满足要求的

那在这个时候

我的文件系统需要做

整个硬件会做出错的一个处理

这是对于文件系统

提出了一个容错的要求

那么另外一个我们前面也说过了

在Google文件系统里面

有很多超大规模的一个文件

它有可能会超过

一个本地文件系统的一个容量

那么文件大小会超过数百个GB

这可能还算小的

可能会有一个TB的一个文件

在这种情况下

或者是10个TB

那么单台机器有可能存不上

另外一个是

单台机器你要存这么多数据的话

它的性能可能也会受不了

那么在这种情况下面的话

我也需要做大文件的一些处理

在读写的优化上面的话

我们也可以看到

在Google里面的话

搜索引擎的模块里面的读写模式

大量地是写入一次

多次读取的一个特征

那这种特征的话

对文件系统也会提出一些

特殊的一些要求

那么写入也是要并发的

读取也是要并发的

那么这也是对文件系统

提出的一些要求

那么在Google文件系统里面

最大的应用是需要对

文件进行建索引的一个操作

那建索引操作的话

它对底层文件系统

它可以容忍底层文件系统

高的一个延迟

就是说我发出一个操作

那么你可能会过个1秒钟

给我一个反应

这个是没有问题的

那么本地文件系统

可能是在几个毫秒之内

就可以做出反应

把数据存进去

但是分布式文件系统

它因为有网络的参与的话

高延迟

有可能是不可避免的

那么 但是呢

我可以容忍高延迟

但是你不能在持续地带宽上面

给我做限制

我需要一个

很长时间的一个高带宽的操作

因为我要对所有数据

进行扫描工作

这样的话也对上层的文件系统

提出了一个需求

所以呢

上层的应用对于

Google文件系统的话

会提出这样的一个需求

我们需要看一下

在这种的基本的需求条件下面

我们如何去设计

一个分布式文件系统

去满足这样的一个需求

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

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

Video笔记与讨论

也许你还感兴趣的课程:

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