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

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

Video在线视频

Video

下一节:4.1大数据的处理框架

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

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

这一节

我们继续讨论一下

Google文件系统

其他方面的一些特征

那么第一个呢

我们需要讨论一下

Google文件系统

关于POSIX兼容的问题

那么实际上

我们从前面的讨论过程当中

大家也应该感觉得到

Google文件系统

并不是一个标准的文件系统

而是在建立

在本地文件系统上的

一个应用性层文件系统

并且这个文件系统

跟POSIX标准是不兼容的

那不兼容的

主要是前面

关于一致性的一个讨论

所以在写入的数据

可能不是用户反映的一个数据

这样的话

我需要应用程序

进行特殊的处理

才能够说

去适应底层的那个文件系统

那同时也就保证了

底层文件系统的一个高效

另外一个呢

它有一个Append的一个操作

这也是POSIX文件系统

它不具备的

那么这两点来说呢

就说明Google文件系统

它实际上是一个

特殊的一个文件系统

并且跟传统的文件系统

它本身的功能和语义上

它是不兼容的

那么但是呢

正好是这种文件系统

也能够提供一个

在分布式环境下一个

很高的一个性能

那么对于

Google的那些应用程序来说

它其实是知道这个文件系统

它内部的一些特点的

那知道内部文件系统的特点的话

它正好就可以利用

内部文件系统那个特点

去获取它的高效性

那么有很多应用程序

它并不需要那么强的一致性

所以呢

可以根据这样的分布式文件系统

达到一个高效的一个目的

那么这是一个特建立的文件系统

所以相对来说

对于兼容性来说

它很容易大家理解这么一个观点

就是说通用的

一般都不是最优的一个策略

所以我们在这里面呢

Google就为它的搜索引擎

建了一个特殊的

特定的一个文件系统

但是又非常的高效

那么在另外一个方面呢

Google文件系统呢

它也有其他的一些特征

比如说在这里面

要做一些垃圾搜集的一些工作

那么一个文件系统

需要做垃圾搜集呢

我们知道

比如说

在通常的Windows文件系统里面

那么删掉的文件

都会出现在垃圾箱里面

垃圾箱里面的话

我就直接给它清空垃圾箱就行了

那么具体在反映文件系统里面

无非就是把一些数据

从一个inode的结点表上

和数据块的分配表上

把它删掉

然后删一个文件之后

我在原数据上

我直接给它删掉了就行了

那么不会

可能出现一些垃圾的一些问题

垃圾的问题就是说

我会占用磁盘空间

但是我又找不到文件在哪儿

这是不太可能的

对吧

在本地文件系统当中

但是Google文件系统

就会出现这种情况

那么怎么会出现呢

举一个非常简单的例子

比如说我一个数据块有三个副本

那么这个三个副本

那么有一个副本下线了

那么master会启动一个

数据恢复的过程

然后又会给它恢复出

一个新的一个副本

那么这样的话又有三个副本了

但是当这个

数据副本的那个服务器

重新上线的时候

这个数据块在这个服务器上面

它是有的

在这个服务器上面是包含了

这个数据块的一些内容的

但是在master服务器上面

那么只有这三个数据块的

一些相关的信息

没有这个数据块的

那么就相当于说

在master上面

没有这个数据块的一个内容

这个时候呢

这个数据块就会被认为是

一个垃圾的一个数据块

我们需要给它清理掉 对吧

否则的话

随着系统的一个运行

整个系统里面的垃圾会越来越多

那么磁盘利用率就不高了

所以呢

在这种情况下面的话

就会产生垃圾

这是产生垃圾的一个情况

另外呢

在TPT里面也简要地讲了一下

文件系统删除的一个工作

文件系统删除

就是直接在NameSpace里面

把这个文件删除就可以了

那么之后呢

可以通过垃圾收集的方法

回收数据块

那么这个特点

是本地文件系统所不具备的

那么垃圾收集怎么做呢

那也很简单

就是通过master服务器

上面的那个扫描

凡是在master服务器上面

没有的原数据

并且在块服务器上面有的

那些东西都是垃圾

那么可以让块服务器

就给直接删掉了 对吧

所以呢

在分布式文件系统当中

垃圾搜集是一个必须的一个工作

这是关于

分布式文件系统的一个垃圾收集

那么以上我们就把整个

分布式文件系统

特别是Google文件系统

都已经完全研究过了一遍

那么在学习的过程当中

大家必须要注意这么几点

第一个是

整个Google文件系统

它建立的基础

就是说在现在市场上可见的

硬件水平上去建立整个文件系统

第二

我们去看一下

整个文件系统它的性能

它的Performers它是怎么处理的

第二个是Fall Tanlt

就是错误它是怎么处理的

大家回去仔细地理解一下

那总的来看

整个Google文件系统

它的设计是非常简单的

并且这个设计

是也可以容忍一部分的一些错误

那这个设计

也可以扩展到数千个结点

那么在工业实践上来说的话

也有很多开源的软件

包括HDFS和MooseFS

那么这些系统规模都很大

像GFS

在一个集群规模

可以达到四五千的集群的规模

所以这种简单的设计

在工程实践当中

也是非常有用的一种设计

那么今天的课程大概就是这样

谢谢大家

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

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笔记与讨论

也许你还感兴趣的课程:

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