当前课程知识点:大数据系统基础 >  2.云计算 >  授课视频 >  2.13存储虚拟化:用户接口

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

2.13存储虚拟化:用户接口在线视频

2.13存储虚拟化:用户接口

下一节:2.14存储虚拟化:分布式存储实现方式

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

2.13存储虚拟化:用户接口课程教案、知识点、字幕

下面我们介绍

数据中心虚拟化的第三个内容

就是存储的虚拟化

我们首先来看看

存储虚拟化的目的

和用户的接口是什么样子的

为什么我们要虚拟化这个存储

存储 首先它很重要

你提到数据它必然要存储

我们传统的存储

是挂在机器上的

那么挂在机器

是实际上你数据存储的位置

和你的机器是绑定在一起的

但是这个东西

并不是我们真的想需要的

首先你一个机器里

能放多少块硬盘

你能放多大量的存储

这个是有限的

第二个如果你机器坏了

你机器想移动的话

你存储的数据跟着一起移动

这个都不方便

第三个

是如果你把每个机器里

如果你放20T的硬盘

然后你有100机器

实际上你每台机器的硬盘

你也跑不到20T

因为它是一个静态的

分布的一个东西

你每台机器不能填得特别满

所以你最后的浪费也非常大

所以一个现在

大家比较希望的方式是

我把存储放在一起

我想接在哪台机器上

就接在哪台机器上

如果每个机器20个硬盘

然后我有100个机器的话

那么我宁愿放一个

2000T的磁盘盒子

如果我能够放的话

我放上一个巨大的存储

里头有2000个T的硬盘

我可以把它接在一台机器上

我也可以分成100台机器接

然后我想接多少就接多少

这样又方便管理

而且利用率也高了

有些应用得多 我就多接一点

应用少就少接一点

第二个好处是它独立于

这种实际的

物理存储技术的实现

它也比较容易升级

比较容易维护

比如说你的存储量扩大了

如果它不是放在一起的存储

你分别在每台机器上

你需要在每台机器上换硬盘

这个东西是

非常麻烦的一个过程

或者比如说有了新的存储技术

或者是你更有钱了

或者是你的生意做大了

或者是你中了彩票了

反正你更有钱了

你想买一个更好的存储

那么这种集中式的存储

你直接换掉这个存储设备

但是它提供的接口一模一样

每台机器觉得根本就没变化

我只是变得

一个更大更快的存储了

这个时候会比你

分别单独独立管理存储

要容易很多

况且如果你把存储放得越集中

你越容易进行冗余

比如说你更容易做负载均衡

你的存储的性能

也会变得更稳定

因此我们希望

能够把存储

放成一个巨大的存储

但是事实上

当然我们不可能

把一个存储

做得非常非常大的

尤其是大数据这样的应用

我们把所有的数据中心的存储

都放在一起

所以这个就是存储虚拟化的

这么一种概念

是我们虚拟的

在接口上

我们提供了一个足够大

足够灵活的这么一个存储

存储虚拟化有三类不同的接口

第一种就是块的接口

所谓块接口的话

就是本地磁盘

大家都很熟悉

如果本地磁盘挂在Linux上

或者挂在Windows上

操作系统是通过磁盘块这种概念

来访问磁盘的

那么块接口的

虚拟接口磁盘的话

它就提供了这样一个

就像本地磁盘一的

这样一种访问接口

所以这种块接口的虚拟化存储

放在机器上

你看起来它就是一块磁盘

你可以对磁盘进行分区

格式化 创建文件系统

进行这种操作

另一种存储

可能大家在家里头

或者是小型的单位

比较常用的

就是一种文件系统的接口

它是一个网络文件系统

你可以挂接一个

比如说挂一个(03:21)

就是windows文件系统

或者挂一个NFS

在这种情况下

它是提供了一个

文件系统的接口

所以你跟它要

你说我要这个路径上这个文件

那么它就返给你

这个路径上这种文件

但是你不能格式化它

你也不能够

在上头创建新的文件系统

因为它本身就是个

已经提供了文件系统的接口了

它有文件的概念

这个在使用上

它也能够提供一定的方便

因为它有一系列的

比如说它的一致性

数据一致性的

这些个管理之类的

那么第三类

存储在云计算里头比较常用

它是对象存储接口

它说我不再提供一个

什么文件系统

或者是块这种接口

我不再提供这种老式的

为了向过去单机的

系统兼容的这样一种系统了

那我给你的是一个对象的接口

你给我一个对象的键

就是一个key

我就给你一个对象的值

这个key不是个文件名

因为它没有路径的概念

这种接口

待会我们会简单地介绍一下

像亚马逊的S3

或者像OenStack Swift

它都是这样一种接口

这种存储系统的好处是

一个是它的成本比较低

它可以规模做得巨大

因为它整体的

包括它的一致性考虑

包括它的同步和锁的概念

都会非常的简单

这是存储虚拟化三类的接口

我们相信文件接口

大家都会比较熟悉了

因为大家都用过网络的NFS

用一些网络存储的设备

所以我们下面重点介绍一下

这个块接口和对象存储的接口

其实块接口的协议

其实是很多的

像iSCSI 像FCOE

像这些 都是一些

比较常见的块接口的协议

它们之间是有区别的

是有非常细微的区别

但是它们接口的形式

都是一模一样的

都是一个文件块

我给你一个块的ID是一个数

那边就返回了一个

固定大小的文件块

是4k 8k 16k 这个块的大小

大家可以定义

但是都是这样的

有一个块的ID 或者块的地址

那边就返回了一个文件块

这个块接口的好处

就像刚才说的

我们可以直接把它

挂在操作系统上

看起来就像一块磁盘

你可以格式化 可以分区它

这些不同的协议之间的区别

主要在于

它到底是谁来进行的

这个拥塞控制

这叫做Congestion control
或者叫Flow control

它是不是利用了TCPIP的协议

以及它到底能不能

通过这个广域网

它是不是能够通过三层的网络

还是它必须在

二层的网络上跑

它主要都是这一系列的区别

对于这些协议

大家了解一下就好

具体的细微的差别

这个东西如果要真的讲的话

可以讲一节课 两节课

都可以讲下去

对于对象存储 对象存储

通常采用的协议是一个

非常简单的 就是HTTP协议

就像我们访问网页一样的

这样的协议

通常来讲

它定义了一个rest的接口

我们想访问某一个对象

我们就给他发送

这样的一个请求

或者是个geist的请求

或者是一个post的请求

如果你想改 rest的接口说了

如果凡是要改变里头的

状态的话

那么我们用post请求

如果凡是读一下的话

就应该用gait的请求

所以你gait一个东西

那么它发送的内容

包括了一个验证的字符串

这是一个基于公要 私要的

那些个做的一个证书

你发送这么一个验证字符串

表明是我

然后你给它一个路径

这个路径就是相当于它的key

但是我们说这玩意儿是个路径

这只是我们一种说法

但它实际上真的不是个路径

它就是一个扁平的命名空间

你可以管它叫这样的东西

你看起来像一个文件名

像一个完整的路径

但是它斜杠什么都不代表

斜杠这是一个普通的字符

所以它这个key的名字

就叫这个东西

它并不代表

这里有一个目录叫2006

这没有这个意思

所以它就是一个

这样的一个key

然后它把这个拿过去之后

这个人一看

我就找到这个key

到底在什么地方

我把这个value找出来

我把这个value

给它编码成一个HTTP

能接受的这样一个文本的形式

然后返给这个客户端

所以它是一个非常简单的协议

这种协议

都是基于超文本传输的

这种情况有什么好处

你不需要特别的客户端

你用一个什么COL 什么

随便能够访问

这种超文本的协议就可以

然后它所有的验证

都是基于标准的HTTP

它比较开放

然后也没有什么

是一种编码的方式

你拿过来之后

能确保它能解开

而且它可以重用很多很多

我们当时做这种HTTP

或者做大规模网络服务

所产生的一些技术

比如说高速的这种

网页服务器的接口

等等一系列的东西

当然它的问题是

它并不是一个

传统的文件系统的接口

你想在上头

直接跑一个windows

那是不可能的

因为它只是一种key value的

这样的一种形态

但是现在随着云计算的推广

随着这种系统的规模越做越大

这种对象存储的成本越做越低

对象存储

现在也是成为了

大数据处理的

一个非常重要的

一种存储的形式

像Hadoop

像之后会讲到Hadoop

讲到Spark

这是讲到Spark的缓存这些层

都是直接支持

这种对象存储的

它可以把这种对象存储上头

再封装成一种

象Hadoop 能够接受的

一种文件系统的样式

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

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

2.13存储虚拟化:用户接口笔记与讨论

也许你还感兴趣的课程:

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