存储基本知识


DAS分析

  直接连接存储:存储设备是通过电缆(通常是SCSI接口电缆)直接连到服务器的。 I/O请求直接发送到存储设备
优势:连接简单
集成在服务器内部;点到点的连接;距离短;
安装技术要求不高
低成本需求
SCSI总线成本低
较好的性能
通用的解决方案
DAS的投资低,绝大多数应用可以接受
劣势:有限的扩展性
SCSI总线的距离最大25米;最多15个设备
专属的连接
空间资源无法与其他服务器共享
备份和数据保护
备份到与服务器直连的磁带设备上
硬件失败将导致更高的恢复成本
TCO(总拥有成本高)
存储容量的加大导致管理成本上升
存储使用效率低

NAS

  网络 连接/附加/附属 存储:存储设备连接到现有的网络上,提供数据和文件服务,应用服务器直接把File I/O请求通过LAN传给远端NAS中的文件系统,NAS中的文件系统发起Block I/O到与NAS直连的磁盘。主要面向高效的文件共享任务,适用于那些需要网络进行大容量文件数据传输的场合。
优点:
资源共享
构架于IP网络之上
部署简单
较好的扩展性
异构环境下的文件共享
易于管理
备份方案简单
低的TCO
劣势:
扩展性有限
带宽瓶颈,一些应用会占用带宽资源
不适应某些数据库的应用

SAN

  存储区域网络:它是一个用在服务器和存储资源之间的、专用的、高性能的网络体系。它为实现大量原始数据的传输而进行了专门的优化。
优势:
实现存储介质的共享
非常好的扩展性
易于数据备份和恢复
实现备份磁带共享
LAN Free和Server Free
高性能
支持服务器群集技术
容灾手段
低的TCO
劣势:
成本较高
需要专用的连接设备如FC交换机以及HBA
SAN孤岛
技术较为复杂
需要专业的技术人员维护

RAID 级别比较

热备与重构

在线操作特性
系统中需设置一个热添加的备份盘或用一个新的替代磁盘替代故障磁盘
当满足以下条件时开始数据自动重构
1、有一个热备份盘存在独立于故障磁盘的
2、 所有磁盘都配置为冗余阵列(RAID1,3,5,10)
所有的操作都是在不中断系统操作的情况下进行的

逻辑卷快照(snapshot)

用途(利用少量存储空间保存原始数据的备份)
文件、逻辑卷恢复
备份、测试、数据分析等
基本概念:
Base Volume :快照源卷
Repository Volume :快照仓储卷,保存快照源卷在快照过程中被修改以前的数据
Snapshot Volume :快照卷
某一个时间点的逻辑卷映像:
逻辑上相当于整个Base Volume的拷贝
可将Sanpshot Volume分配给任何一台主机
Snapshot Volume可读取、写入或拷贝
存储空间需求
需要相当于Base Volume 20%的额外空间

云存储概念与技术原理

  目前业界两种主流云存储技术解决方案:基于虚拟化技术和分布式存储。
分布式存储:
  分布式块存储
  分布式文件存储
  分布式对象存储
  分布式表存储
存储虚拟化:
  基于主机的存储虚拟化
  基于网络的存储虚拟化
  基于存储设备的存储虚拟化

块存储技术


分布式文件存储

  文件存储以标准文件系统接口形式向应用系统提供海量非结构化数据存储空间。分布式文件系统把分布在局域网内各个计算机上的共享文件夹集合成一个虚拟共享文件夹,将整个分布式文件资源以统一的试图呈现给用户。 它对用户和应用程序屏蔽各个节点计算机底层文件系统的差异,提供用户方便的管理资源的手段或统一的访问接口。
  分布式文件系统的出现很好的满足互联网信息不断增长的需求,并为上层构建实时性更高,更易使用的结构化存储系统提供有效的数据管理的支持。在催生了许多分布式数据库产品的同时,也促使分布式存储技术不断的发展和成熟。

对象存储技术

  对象存储为海量非结构化数据提供Key-Value这种通过键-值查找数据文件的存储模式,提供了基于对象的访问接口,有效地合并了NAS和SAN的存储结构优势,通过高层次的抽象具有NAS的跨平台共享数据和基于策略的安全访问优点,支持直接访问具有SAN的高性能和交换网络结构的可伸缩性。
特点:访问接口简单,提供REST/SOAP接口
协议开销高、响应延迟较文件存储长
引入对象元数据描述对象特征
应用系统跟存储系统的耦合程度松散
支持一次写多次读

表存储技术

  表存储系统用来存储和管理结构化/半结构化数据,向应用系统提供高可扩展的表存储空间,包括交易型数据库和分析型数据库。
  NoSQL是设计满足超大规模数据存储需求的分布式存储系统,没有固定的Schema,不支持join操作,通过“向外扩展”的方式提高系统负载能力。

分布式表存储

表存储适应场景

各种存储技术对比

云存储产品与系统

主流公有云云存储产品分析


主流私有云云存储产品分析




对象存储技术

传统块存储与对象存储

  在传统的存储系统中用文件或块作为基本的存储单位,块设备要记录每个存储数据块在设备上的位置;而在对象存储系统中,对象是数据存储的基本单元,Object维护自己的属性,从而简化了存储系统的管理任务,增加了灵活性,在存储设备中,所有对象都有一个对象标识,通过对象标识OSD命令访问该对象。

对象的组成

  对象是系统中数据存储的基本单位,每个Object是数据和数据属性集的综合体,数据属性可以根据应用的需求进行设置,包括数据分布、服务质量等。
  对象包含了文件数据以及相关的属性信息,可以进行自我管理 。
基本存储单元
名字空间:对象ID
数据
元数据
元数据类似于inode,描述了对象在磁盘上的块分布
属性
根据需要而定义
E.g. 多媒体对象的延迟和吞吐请求

OSD

  每个OSD都是一个智能设备,具有自己的存储介质、处理器、内存以及网络系统等,负责管理本地的Object,是对象存储系统的核心。OSD同块设备的不同不在于存储介质,而在于两者提供的访问接口。
  OSD的主要功能包括数据存储和安全访问。目前国际上通常采用刀片式结构实现对象存储设备。

OSD的主要功能

OSD提供三个主要功能:
(1) 数据存储。OSD管理对象数据,并将它们放置在标准的磁盘系统上,OSD不提供块接口访问方式,Client请求数据时用对象ID、偏移进行数据读写。
(2) 智能分布。OSD用其自身的CPU和内存优化数据分布,并支持数据的预取。由于OSD可以智能地支持对象的预取,从而可以优化磁盘的性能。
(3) 每个对象元数据的管理。OSD管理存储在其上对象的元数据,该元数据与传统的inode元数据相似,通常包括对象的数据块和对象的长度。而在传统的NAS系统中,这些元数据是由文件服务器维护的,对象存储架构将系统中主要的元数据管理工作由OSD来完成,降低了Client的开销

文件系统

  文件系统对用户的文件操作进行解释,并在元数据服务器和OSD间通信,完成所请求的操作。
  现有的应用对数据的访问大部分都是通过POSIX文件方式进行的,对象存储系统提供给用户的也是标准的POSIX文件访问接口。
  接口具有和通用文件系统相同的访问方式,同时为了提高性能,也具有对数据的Cache功能和文件的条带功能。
  同时,文件系统必须维护不同客户端上Cache的一致性,保证文件系统的数据一致

元数据服务器

MDS控制Client与OSD对象的交互,主要提供以下几个功能:
(1) 对象存储访问:MDS构造、管理描述每个文件分布的视图,允许Client直接访问对象。MDS为Client提供访问该文件所含对象的能力,OSD在接收到每个请求时将先验证该能力,然后才可以访问。
(2) 文件和目录访问管理:MDS在存储系统上构建一个文件结构,包括限额控制、目录和文件的创建和删除、访问控制等。
(3) Client Cache一致性:为了提高Client性能,在对象存储系统设计时通常支持Client方的Cache。由于引入Client方的Cache,带来了Cache一致性问题,MDS支持基于Client的文件Cache,当Cache的文件发生改变时,将通知Client刷新Cache,从而防止Cache不一致引发的问题。

存储技术趋势

数据优化技术将成为热点

存储虚拟化

  存储虚拟化是目前以及未来的存储技术热点,它其实并不算是什么全新的概念,RAID、LVM、SWAP、VM、文件系统等这些都归属于其范畴。
  存储的虚拟化技术有很多优点,比如提高存储利用效率和性能,简化存储管理复杂性,绿色节省,降低运营成本等。
  目前最新的存储虚拟化技术有自动分级存储(HSM)、自动精减配置(Thin provision)、云存储(Cloud storage)、分布式文件系统(Distributed file system),另外还有诸如动态内存分区、SAN和NAS虚拟化。
  虚拟化可以柔性地解决不断出现的新存储需求问题,因此我们可以断言存储虚拟化仍将是未来存储的发展趋势之一

固态硬盘

  固态硬盘(SSD, solid state disk)是目前倍受存储界广泛关注的存储新技术,它被看作是一种革命性的存储技术,可能会给存储行业甚至计算机体系结构带来深刻变革。
  SSD与传统磁盘不同,它是一种电子器件而非物理机械装置,它具有体积小、能耗小、搞干扰能力强、寻址时间极小(甚至可以忽略不计)、IOPS高、I/O性能高等特点。
  对于存储系统来说,SSD最大突破是大幅提高了IOPS,摩尔定理的效力再次显现,通过简单地用SSD替换传统磁盘,就可能可以达到和超越综合运用缓存、预读、高并发、数据局部性、磁盘调度策略等软件技术的效用。
  SSD已经开始被广泛接受并应用,当前主要的限制因素包括价格、使用寿命、写性能抖动等。从最近两年的发展情况来看,这些问题都在不断地改善和解决,SSD的发展和广泛应用将势不可挡。

重复数据删除

  重复数据删除(Deduplication)是一种目前主流且非常热门的存储技术,可对存储容量进行有效优化。它通过删除数据集中重复的数据,只保留其中一份,从而消除冗余数据。
  Dedupe技术可以帮助众多应用降低数据存储量,节省网络带宽,提高存储效率、减小备份窗口,节省成本。Dedupe技术目前大量应用于数据备份与归档系统,因为对数据进行多次备份后,存在大量重复数据。事实上,它也可以用于很多场合,包括在线数据、近线数据、离线数据存储系统。
  信息呈现的指数级增长方式给存储容量带来巨大的压力,而dedupe是最为行之有效的解决方案,因此固然其有一定的不足,它大行其道的技术趋势无法改变。更低碰撞概率的hash函数、多核、GPU、SSD等,这些技术推动dedupe走向成熟,由作为一种产品而转向作为一种功能,逐渐应用到近线和在线存储系统。

SOHO存储

  SOHO(Small office, home office)存储即家庭或个人存储。现代家庭中拥有多台PC、笔记本电脑、上网本、平板电脑、智能手机,这种情况业已非常普遍,这些设备将组成家庭网络。
  SOHO存储的数据主要来自个人文档、工作文档、软件与程序源码、电影与音乐、自拍视频与照片,部分数据需要在不同设备之间共享与同步,重要数据需要备份或者在不同设备之间复制多份,需要在多台设备之间协同搜索文件,需要多设备共享的存储空间等
  SOHO存储目前大致有两种思路,一是home NAS微型存储装置,提供文件级的集中共享存储空间,并在NAS提供数据备份和复制、数据管理、高级文件检索、多种数据访问协议和接口等功能。二是p2p存储系统,利用软件系统将各个设备的存储空间统一起来,提供一个虚拟的集中共享存储空间,同样可以提供home NAS上的所有功能。

ROBO存储

  ROBO(Remote office, branch office)存储即企业远程或分支机构存储。
  大的公司或组织机构会有多个子公司或分支机构组成,物理分布在世界上不同的城市。ROBO存储正是为了应对这种基于互联网的协作式工作模式而产生的。ROBO存储的需求主要集中在数据同步、共享、分发、协作,传统的上传/下载模式文件服务难以满足这种需求,天然地需要基于互联网的广域分布式文件系统。
  针对ROBO存储,通常在公司总部部署集中式存储系统保存所有的数据,在每个子公司部署较小的存储节点,然后通过高速网络互联,并提供高效的数据同步、分发、数据缓存等机制,尽量减少数据通信量以提高性能和实时性。目前ROBO存储似乎还没有成熟的解决方案。

语义化检索

  数据检索目前主要分为两类,一是基于文件名,二是基于文件内容。主流文件系统的数据检索都是基于文件名进行的,桌面搜索引擎则综合文件名和文件内容进行检索,前者遍历文件系统元数据,后者需要解析文件内容,它们都是通过关键字匹配来实现检索。显然,这两类检索的语义是非常有限的,与人类思维方式有着很大的区别。
  存储系统完全可以实现语义化的检索,通过文件属性和关系来检索文件,并用关系网络(类似社会化网络)来表示检索结果。这种方式语义上更加丰富,检索结果更加精确,也更加符合人类的思维方式。
  面对海量的数据,精确、高效地检索出自己需要的数据是第一步,语义化检索符合存储的技术发展趋势。

存储智能化

  人工智能是计算机的发展方向,这是个理想而艰巨的目标。对于存储系统来说,智能化代表着自动化、自适应、兼容性、自治管理、弹性应用,通过对系统的监控、分析和挖掘来发现数据应用的特点和使用者的行为模式并动态调整配置,从而达到最佳的运行状态。
  存储智能化可以分别在存储系统栈中的不同层次实现,包括磁盘、RAID、卷管理器、文件系统、NAS系统、应用系统,从而形成系统的存储智能化。
  虽然我们已经取得了一定的成果,但离真正的目标差距还很大,存储学术界和业界都在这此而努力。智慧的存储,让数据在整个信息生命周期内有序、高效、自治,存储效用最大化、简化管理、减少人工干预,这应该是存储的大趋势。

分布式计算、云计算与大数据第十章相关推荐

  1. 《分布式计算云计算与大数据》第一章

    第一章.分布式计算概述 1.分布式计算概述 分布式计算是计算机科学研究的重要内容,主要研究对象是由若干个通过网络联合在一起的计算机组成的硬件系统,这些计算机把需要非常大的计算能力的项目分成许多小部分, ...

  2. 分布式计算、云计算与大数据概论心得理解

    分布式计算.云计算与大数据概论心得理解 第一章 分布式计算概述 分布式计算的概念 分布式计算与其相关计算的发展趋势 集中计算(单机计算) 串行运算与并行运算简介 各种计算简介 网络计算 网格计算 分布 ...

  3. 简介——云计算,大数据,人工智能

    原文链接 云计算最初是实现资源管理的灵活性 云计算不光管资源,也要管应用 大数据拥抱云计算 数据的收集 数据的传输:基于硬盘的分布式队列 数据的存储:分布式文件系统 数据的分析:分布式计算的方法 人工 ...

  4. 云计算,大数据,5G和人工智能

    简单的说,大数据是基础,云计算是管理,5G 是传输网络. 一.云计算最初是实现资源管理的灵活性 我们首先来说云计算,云计算最初的目标是对资源的管理,管理的主要是计算资源,网络资源,存储资源三个方面. ...

  5. 详解云计算、大数据和人工智能的区别与联系

    今天跟大家讲讲云计算.大数据和人工智能.为什么讲这三个东西呢?因为这三个东西现在非常火,并且它们之间好像互相有关系:一般谈云计算的时候会提到大数据.谈人工智能的时候会提大数据.谈人工智能的时候会提云计 ...

  6. 只有它才能让云计算、大数据、人工智能大放异彩?它究竟有什么魔力?

    对比20年前的生活,智能手机.社交网络等智能应用改变了我们的生活.但当AlphaGo第一次战胜围棋世界冠军:当大数据,让人脑信息转换为电脑信息成为可能:当万物互联就在你的身边.越来越多的新鲜事物呈现在 ...

  7. 云计算:大数据时代的系统工程

    很多人觉得云计算应该是个具体的事物,所以初听到云计算时,总会先问一句:"什么是云计算"? 什么是云计算?问的人轻松,回答的人却很费力,仿佛描绘一种味觉,感觉强烈,却不知如何抓住要领 ...

  8. 云计算与大数据复习题

    云计算与大数据复习题 人们通常最熟悉结构化数据的分析.除了半结构化."准"结构化和非结构化这三种基本数据类型以外,还有一种重要的数据类型为元数据,它主要由( ),能够添加到数据集中 ...

  9. 云计算、大数据和人工智的区别和联系

    云计算.大数据和人工智的区别和联系 今天跟大家讲讲云计算.大数据和人工智能.这三个词现在非常火,并且它们之间好像互相有关系. 一般谈云计算的时候会提到大数据.谈人工智能的时候会提大数据.谈人工智能的时 ...

最新文章

  1. VS新建类自动添加版本注释
  2. 汇总|医学图像数据集
  3. 使用babel编译es6
  4. FLASHBACK实施笔记
  5. after exercise
  6. 无法连接到 recaptcha_汕头精巧的重载连接器报价行情,靠谱的重载连接器出厂价...
  7. C++ 流体效果的实现
  8. loop和[bx]的联合应用
  9. python return用法_初学Python要了解什么 装饰器知识汇总有哪些
  10. Linux系统启动流程(4)制作自定义linux之一
  11. AndroidStudio安卓原生开发_一个activity中引用多个fragment_以及不同activity中复用某个fragment---Android原生开发工作笔记117
  12. js 的 protype 小总结
  13. 阶段1 语言基础+高级_1-3-Java语言高级_06-File类与IO流_07 缓冲流_1_缓冲流的原理...
  14. js打开新窗口 window.open() 隐藏菜单栏、工具栏,配置窗口大小、滚动条等
  15. 电力通信网与运营商5G网络融合方案
  16. html页面加文字水印
  17. JVM类加载机制(加载,初始化,类加载器和双亲委派机制)
  18. 青龙面板2.8版本+Ninja 保姆级 服务器安装jd代挂教程——(一)
  19. 软考中级哪个科目比较容易考?
  20. 模电数电自动控制原理实验台QY-MS301C

热门文章

  1. ams1117-3.3v三端稳压芯片低压差线性稳压器
  2. 数据结构童话版 003新的学生
  3. 用R对Twitter用户的编程语言语义分析
  4. Monte Carlo Counterfactual Regret Minimization
  5. 正在找工作的同学看过来,zozo最新的java面试题总会,学会月薪3万起!!!
  6. Yocto系列讲解[入门篇] 1 - 快速入门熟悉Yocto的构建
  7. CMY/CMYK 打印机色彩
  8. 最详细的北京摩托车上牌流程-自己跑流程
  9. 关系型数据库的瓶颈 与 优化
  10. 区块链如何改变出版商在学术传播中的角色