当前课程知识点:高级大数据系统 > Distributed File System > Storage for Big Data Computing: Distributed file system > Video
大家好
今天我们会来说大数据系统中的
一个重要的组成部分
大数据的这个存储
那么大数据的一个很重要的特征
就是它的体量大
它的数据的多源异构
那么这些数据怎么样能够
第一步被整个系统存储下来
实际上是后续数据处理的
一个前提条件
那么在今天的这个课程当中
我们会去重点介绍
今天流行的这种分布化的
这种数据存储的方法
以及大数据的存储系统中
怎么样对数据的读写进行有效的
这样一个优化
那我们来看大数据的这个存储
实际上是位于数据源和数据处理之间
那么它起到了一个数据最基本的
这样一个介质
这样的一个作用
那么 我们知道在之前的课程当中
我们也说了
数据来自于各种各样的数据源
有的是传感器
有的是用户
那么有的是其它的
这种智能的算法
不断的再生成
而它的这种生成的速度
生产的规模也在一天比天大
那么在这种背景下
我们要怎么样去构建
一个数据存储的这样一个框架
就变得非常的重要了
那么今天我们的课程
主要会先介绍一般的这种单机上的文件系统
那我们会让大家看看
在普通的手机
普通的笔记本上一个文件系统
它应该具有什么样的特征
那么接着我们把这种特征
假设要扩展到一个数据中心
扩展到一个集群之后
我们需要做些什么样的事情
那么最后我们会以
谷歌的这个文件系统作为例子
给大家介绍一下分布式文件系统
它的这种特性以及它的这种系统
结构是什么样的
提到这个计算机的存储系统
实际上大家容易想到的就是
图中给到的这些硬件的介质
不管是内存还是硬盘
那么它都有自己的容量
自己的传输速率
以及自己的局限性
那么我们的这个大数据系统
就是由这样的一些基本的元素构成
最终搭建出了一个能够有效的
自行扩展
支持海量的这样一个数据存储的一个大系统
那我们来看这些最基本的模块
它们具有哪一些特征
我们在大数据的这样一个存储系统中
实际上我们需要提供的功能
和各位同学已经理解的这个存储系统
提供的功能实际上是基本一致的
我们需要对数据进行写
对数据进行读
那么我们需要对已经有的
这个数据记录进行添加进行修改
以及对不需要的数据进行一个删除
那么存储系统中所提供的功能
实际上在单机
在手机
在这个大数据的集群
分布式文件系统
这些系统当中
实际上基本上是没有什么差别的
它的基本的元素
就是这么5种类型
那么这5种类型
实际上会在各个层面进行实现
那我们能够用到的这些组件包含哪些呢
我们包含最快的
但是最小的CPU中的这个计算器
以及GPU中的一些这个寄存器
那我们可以用到主内存
主内存
今天的主内存
通常是GB和这个TB级的这样一个规模
我们可以在主内存中
做相对比较高速的
文件系统的搭建
或者是一些这个内存化的计算
这个主存储器就是我们今天
可以用到的这种机械的硬盘
或者是SSD的硬盘
是大家能够接触到的
相对比较大规模的
这个存储持久化数据的这样一个介质
在里面我们会构建文件系统
我们会构建这个
大规模的这样一个索引
还有一些是离线的存储
比如说出于安全出于冗余的考虑
我们会把一些数据备份到离线的一些系统上
比如说磁带
以及更大规模的
一些这种离线的存储
那么比如说进行异地的
这样一个存储的备份等等
这都是我们可以用到的
这样一个存储的设施
我们发现它呈现出的一些规律
就是说它有这种速度上的差别
比如说寄存器它会有很高的速度
但它通常它的容量是比较小的
那我们给到一个典型的值可能是
几千个bytes
但是它的速度在一个CPU的SQL里面
就能够完成
那么CPU里面的这个cache
通常会大一些
但是它的这个访问的时间
就会稍微长一些
那么主内存会更大
今天已经是TB级的
这样一个主内存的一个典型的环境了
那么它的速度会更慢
而磁盘它的容量会大很多
那么今天几十TB上百TB
在单机上实现已经是一个
比较容易的事情了
那么它的速度
也会相应的变得更慢
我们怎么样有效的
把这种不同的性能
不同的这个容量
然后不同的这个价格的
设施组合在一起
形成一个比较好的这种
大数据的存储的这样一个框架
是我们要讲的
-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
-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--作业
-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--作业
-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
-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--作业
-Introduction to streaming data processing
--Video
-Introduction to streaming data processing--作业
-Storm
--Video
--Video
--Video
-Storm--作业
-Spark streaming
--Video
--Video
-Spark streaming--作业
-NoSQL introduction
--Video
-NoSQL introduction--作业
-Common Advantages
--Video
-Common Advantages--作业
-Bigtable
--Video
-Bigtable--作业
-Master Startup
--Video
-Master Startup--作业
-HBase
--Video
-HBase--作业
-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--作业
-Mahout
--Video
-Mahout--作业
-Case Study: Recommendation
--Video
-Case Study: Recommendatio作业
-Recommendation in Mahout
--Video
-Recommendation in Mahout--作业