Chapter 11: 海量信息存储

Download Report

Transcript Chapter 11: 海量信息存储

第11章
海量信息存储
主讲:刘方明 副教授
华中科技大学计算机学院
Email: [email protected]
Web: http://grid.hust.edu.cn/fmliu
2012.06
Based on the course slides of 《物联网导论》,刘云浩编著,科学出版社
物联背景下如何适应海
量信息存储的需求呢?
随着物联网的发展,
数据中心将成为
解决海量数据存储的主
要手段。
本章将介绍典型的网络
存储体系结构以及数据
中心的基本概念。
内容提要
内容回顾
•第10章介绍了数据库管理系统的基本概念
•数据库模型的发展
•关系数据库的基本概念
•利用关系代数写查询表达式
•物联网数据管理的特点
•本章重点介绍三种基本的网络存储体系结构,并以
Google数据中心为例,介绍大规模数据中心的相关技术,
最后简要开源分布式计算框架Hadoop。
本章内容
11.1 物联网对海量信息存储的需求
11.2 网络存储体系结构
11.3 数据中心
信息存储的发展历程如何?物联网对海量信息存储的
需求促使了哪些技术的发展?
数据存储的发展历史
甲骨文→纸质书籍→数字化存储
物联网对海量信息存储的需求
•全球信息总量迅猛增长
–2007年产生的数据量为281EB ( 1EB=10亿GB )
–物联网中对象的数量将庞大到以百亿为单位
•物联网中的对象积极参与业务流程的需求
–高强度计算需求
–数据的持续在线可获取特性
•导致了网络化存储和大型数据中心的诞生
本章内容
11.1 物联网对海量信息存储的需求
11.2 网络存储体系结构
11.3 数据中心
三种基本的网络存储体系结构:直接附加存储,网络
附加存储,存储区域网络,各有什么特点?
直接附加存储
直接附加存储(Direct-Attached Storage, DAS)
•将存储系统通过缆线直接与服务器或工作站相连
•一般包括多个硬盘驱动器,与主机总线适配器通过电缆或光纤
•在存储设备和主机总线适配器之间不存在其他网络设备
•实现了计算机内存储到存储子系统的跨越
直接附加存储
•一个计算机系统也由各有专长的厂商所领导,可大体分为:
处理器、操作系统、网络、资源共享、数据库等等不同的水
平领域
•从封闭走向开放的代表是直接连接存储系统的出现和应用
• 直接附加存储(Direct Attached Storage,DAS)是指将外
部存储设备通过连接电缆直接连接到服务器上
• 外部数据存储设备采用SCSI、SATA、FC(Fibre Channel)等
技术,通过数据连接电缆直接挂接在服务器的内部控制器上
特点
•DAS的这种直连方式,能够解决单台服务器的
存储空间扩展、高性能传输需求
•单台个DAS存储介质可以被多台服务器所共享
•DAS产品目前还在广泛应用,尤其是一些中小
型企业常使用DAS来存储数据
问题
•DAS拥有较长的使用历史,但是随着数据量及访问人数的不
断增多,DAS在备份、恢复、扩展、灾备等方面存在的问题
变得日益突出
•DAS依赖服务器主机操作系统进行数据的I/O读取和存储维
护管理,数据备份和恢复要求占用服务器主机的CPU、I/O等
资源
•DAS的数据量越大,备份和恢复的时间就越长,对服务器硬
件的依赖性和影响就越大
网络附加存储
网络附加存储(Network Attached Storage, NAS)
•文件级的计算机数据存储架构
•计算机连接到一个仅为其它设备提供基于文件级数据存储服务
的网络
NAS与DAS的区别
DAS是一种对已有服务器的简单扩展,并没有真正实现网络互联。NAS
则是将网络作为存储实体,更容易实现文件级别的共享。NAS性能上比
DAS有所增强
• 与DAS相比,NAS设备的可靠性和稳定性都要高,特别是NAS的文
件管理系统得到了优化,其价格也比DAS低廉
• 与DAS相比,NAS的最大不同是外部存储介质直接连接到网络上
特点
•NAS作为一个网络附加存储设备,采用了目前较为流行的嵌入式
技术。使得NAS具有无人值守、高度智能、性能稳定等特点
•NAS设备内置优化的独立存储操作系统,可以更加有效地利用系
统总线资源,更好地支持I/O存储
•同时,NAS设备一般集成本地的备份软件,可以不经过服务器便
将NAS设备中的重要数据进行本地备份
•而且NAS设备提供硬盘RAID、冗余的电源和风扇以及冗余的控制
器,可以保证NAS的稳定性
•主要应用于中小型网络
特点
• 安装、调试、使用和管理非常简单。RJ-45或光纤接口
• 数据从服务器分离,减少了数据管理上的许多问题
• 有自己专用的管理软件,通过管理软件可以方便地实现设
备的配置
• 支持UNIX、Windows、NetWare、Macintosh等多种操作系统
与DAS相比,NAS主有存在以下的优点
• 由于大量的数据访问由NAS设备完成,服务器减少了数据的
I/O操作,提高了服务器的性能
• NAS设备独立于服务器。如果一个服务器出现故障,其他服务
器也可以访问存储设备中的数据
• 由于NAS设备直接连接在网络上,而且可以通过管理软件进行
配置和管理,所以便于NAS设备的扩展和管理
• 可支持UNIX、Windows、NetWare、Macintosh等多种应用平台
存储区域网络
存储区域网络 (Storage Area Network, SAN)
•通过网络方式连接存储设备和应用服务器的存储架构
•由服务器、存储设备和SAN连接设备组成
SAN的特点
•存储共享
•支持服务器从SAN直接启动
• SAN是存储系统的最新模式
– SAN专注于企业级存储的特有问题
– 目前,企业存储方案所遇到的两个问题是:
• 数据与应用系统紧密结合所产生的结构性限制
• 目前广泛使用的小型计算机系统接口(SCSI)标准的限制
• 在SAN系统中,存储设备通过专用交换机与多台服务器相连
• 提供了多主机连接,允许任何服务器连接到任何存储设备,不
管数据置放在那里,服务器都可直接访问所需的数据
• 同时,随着存储容量的增长,SAN也允许企业独立地增加它们
的存储设备
•
• 不同于普通的网络交换机,SAN是基于光纤通道(Fiber Channel
,FC)技术的高速传输网络。FC是ANSI为网络和通道I/O接口建
立的一个标准,支持SCSI、IP、ATM等多种高级协议
• FC的最大特性是将网络和设备的通讯协议与传输物理介质隔离开
,这样多种协议可在同一个物理连接上同时传送
• 使高性能存储设备与宽带网络使用单一的I/O接口,使得系统的
成本和复杂程度大大降低
• 光纤通道支持多种拓扑结构,主要有点到点(Links)、仲裁环
(FC-AL)、交换式网络结构(FC-XS)等
• 点对点方式:DAS应用
• FC-AL:磁盘阵列
• FC-XS交换式:SAN
• 因为采用了FC技术,SAN具有更高的带宽
• SAN结构具有NAS的所有优点,在提高了服务器性能的同时,便
于对数据的管理,也便于系统的扩充,同时支持多种应用平台
• 但与NAS不同的是,在SAN中服务器与存储设备之间的数据交换
是通过SAN网络进行,不会消耗应用网络的带宽资源,所以SAN
主要应用于大型网络
• 随着FC-SW标准的确立,2Gbit/s光纤通道标准下的各种SAN设
备已解决了互操作性问题,这已从成本和技术上解决了SAN的
应用瓶颈
三种网络存储结构的比较
三种网络存储结构的比较
DAS
管理容易,结构简单;集中式体系结构,不能满足大规模数据访问的
需求;存储资源利用率低,资源共享能力差,造成“信息孤岛”。
NAS
网络的存储实体,容易实现文件级别共享;性能严重依赖于网络流量,
用户数过多,读写过频繁时性能受限。
SAN
存储管理简化,存储容量利用率提高;无直接文件级别的访问能力,
但可在SAN基础上建立文件系统。
本章内容
11.1 物联网对海量信息存储的需求
11.2 网络存储体系结构
11.3 数据中心
什么是数据中心?典型的数据中心有哪些?数据中心
的研究热点是什么?
什么是数据中心?
•维基百科:“数据中心是一整套复杂的设施。它不仅仅包括计算机系统
和其它与之配套的设备(例如通信和存储系统),还包含冗余的数据通
信连接、环境控制设备、监控设备以及各种安全装置。”
•Google:“多功能的建筑物,能容纳多个服务器以及通信设备。这些
设备被放置在一起是因为它们具有相同的对环境的要求以及物理安全上的
需求,并且这样放置便于维护。”
数据中心的起源与发展
大型机
微型机
大规模数据中心
(Mega Data Center)
数据中心的起源与发展
大规模数据中心已经得到推广
数据中心标准
数据中心建设者面对的难题
如何规划一个新的数据中心?
怎样对数据中心进行升级?
数据中心的标准对相关经验进行了总结
ANSI/TIA/EIA-942(简称TIA-942):数据中心标准
电信产业协会(TIA)提出
美国国家标准学会(ANSI)批准
数据中心标准:TIA-942
连接运营商
选址:需要考虑多方面因
素
建设和运营成本
应用需求
政策优惠
…
布局:
按功能区域划分
连接运营商
入口室
办公室,控制
中心,支持室
主干缆线
水平缆线
电信室
主干
缆线
计算机房
主分布区
主干缆线
水平分布区
水平缆线
水平分布区
水平分布区
区段分布区
水平缆线
设备分布区
水平缆线
……
设备分布区
功能区域组成
水平缆线
设备分布区
数据中心标准:TIA-942(续)
机柜
正面
背面
机柜
机柜
热通道
有小孔的
地板
能源系统
外部电力供应
电池组
发电机
背面
冷通道
正面
正面
缆线系统
规格
如何放置缆线
背面
TIA-942还对缆线系统,可靠性分级,能源系统和降温系统等做了规
定。
有小孔的
地板
降温系统
降温设备
架空地板
冷通道与热通道
典型数据中心:Google 数据中心
简介
•全球共建有近40个大规模数据中心
•单个数据中心需要至少50兆瓦功率,约等于一个小型城市所有家庭的
用电量
•独特的硬件设备:定制的以太网交换机、能源系统等
•自行研发的软件技术:Google File System、MapReduce、
BigTable等
Google File System
GFS的设计观念
组件失效不再被认为是意外,而是被看做正常的现象
GFS的文件非常巨大
对文件的操作具有特定的模式
应用程序和文件系统API的协同设计提高了整个系统的灵活性
Google File System
GFS的设计架构
Application
GFS client
(file name, chunk index)
GFS master
File namespace
/foo/bar
chunk 2ef0
(chunk handle,
chunk locations)
Data message
Control message
一个GFS集群包含
一个主服务器和
多个块服务器,
Instructions to chunkserver
Chunkserver state
(chunk handle, byte range)
并被多个客户端访
问。
GFS chunkserver
GFS chunkserver
Linux file system
Linux file system
...
...
...
文件分成固定大小的“块”。每个块在创建时都由主服务器分配一个固
定不变的64位句柄唯一标识。
块服务器把块作为Linux文件存储在本地磁盘上,并根据指定的块句柄
和字节范围对数据块进行读写操作。
Google File System
GFS的设计架构(续)
主服务器维护所有文件系统的元数据,包括名字空间、访问控制信
息、文件到块的映射信息以及块当前的位置。此外,主服务器还控制其它
系统级的活动。主服务器周期性地与块服务器通信,以下达指令和收集状
态。
GFS客户端代码被嵌入到每个应用中。它实现了文件系统API,实现主
服务器与块服务器的通信从而代表应用实现读写操作。客户端与服务器交
互从而实现元数据操作,但所有的数据操作都通过直接与块服务器交互而
完成。
MapReduce
MapReduce是一种针对超大规模数据集的编程模型和系统
用MapReduce开发出的程序可在大量商用计算机集群上并行执行、处理计
算机的失效以及调度计算机间的通信
MapReduce的基本思想
•用户写的两个程序:Map和Reduce
•一个在计算机集群上执行多个程序实例的框架
MapReduce
MapReduce程序的执行过程
用户程序
master
worker
worker
输出文件1
worker
输出文件2
Reduce阶段
输出文件
文件片段1
文件片段2
worker
文件片段3
worker
输入文件
Map阶段
中间文件
BigTable
BigTable是一种用来在海量数据规模下(例如包含以PB为单位的数据量和
数千台廉价计算机的应用)管理结构化数据的分布式存储系统。
应用
•Google地球
•网页索引
•RSS阅读器
•…
BigTable
每个BigTable都是一个稀疏的、分布式的多维有序图,按行键值、列键
值和时间戳建立索引
“anchor:cnnsi.com”
“contents:”
“<html>...”
“com.cnn.www”
“<html>...”
“<html>...”
“anchor:my.look.ca”
t3
t5
t6
“CNN”
t9
“CNN.com”
t8
典型数据中心:Hadoop
什么是Hadoop?
•Apache开源组织的一个分布式计算开源框架
•用于在大型集群的廉价服务器设备上运行数据密集型分布式应用程序
•在早期实际上是Google文件系统与MapReduce分布式计算框架及相关IT
基础服务的开源实现
Hadoop包括多个子项目
HDFS、 MapReduce、 HBase 、Chukwa、Pig、ZooKeeper等
HDFS
Hadoop Distributed File System
Namenode
Metadata (Name, replicas,...):
/home/foo/data,3,...
Metadata ops
Block ops
Client
Datanodes
Read Datanode
Replication
Rack 1
Write
Write
Rack 2
Client
数据中心的研究热点
• 2006年Google在数据中心项目上的花费为19亿美元,而2007年该项支出
增加到24亿美元。
• Google在俄勒冈州的数据中心有近100兆瓦的功率,满负荷运行时消耗的
电力基本上和纽卡斯尔(Newcastle)一个城市所有家庭的用电量加起来
一样多。
研究热点:如何在保证服务质量的前提下降低成本?
数据中心的成本构成
基础设施部分包括能源系统、
降温系统、各种防火设备、安保
设备等。降低这一部分成本往往
涉及到机械设备制造技术或政策
优惠等因素,与计算机学科的关
联程度相对较低。
我们分别从服务器,网络设备,
能源三个方面对造成高成本的原
因和目前的解决方法进行简要介
绍。
服务器成本
服务器的实际利用效率较低
•分配到各服务器的应用不能完全利用某些组件
•对应用需求的预测比较难,无法做到按需分配
•为了提高系统的可靠性,一般都留有冗余设备
提高服务器利用率的关键在于及时应对需求的动
态变化
服务器
网络设备
能源
网络设备成本
主要来源
•交换机、路由器、负载均衡设备
•传统的数据中心使用树形结构,核心交换机和路
由器构成流量瓶颈,且造价昂贵
研究热点:新的数据中心网络结构
以交换机为中心的多层树形结构:例如Fat-Tree
以服务器为中心的互联结构:例如DCell
服务器
网络设备
能源
能源成本
服务器
网络设备
能源
研究热点
•降低服务器工作能耗
降低同等性能设备能耗
提高同等能耗设备性能
可调整负载的服务器
•减少降温系统能耗
精细、精准的温度控制
集装箱式模块化数据中心
数据中心能耗构成
本章小结
内容回顾
本章介绍了三种基本的网络存储体系结构,并讨论了数据中心的基本概念,
以Google数据中心和Hadoop为例,简要介绍了数据中心的相关技术,最后指
出了数据中心的研究热点。
重点掌握
•了解物联网对海量数据存储的迫切需求。
•重点掌握三种基本的网络存储体系结构(DAS,NAS,SAN)的基本概念以
及各自的优缺点。
本章小结
重点掌握(续)
•了解数据中心的概念,以Google数据中心为例,了解GFS,MapReduce,
BigTable等技术的基本概念和特点。了解Hadoop分布式计算开源框架的特点。
•掌握保证性能前提下降低数据中心成本的方法(服务器成本,网络设备成
本,能源成本)。
Thank you!