Main Menu
News
FAQs
Hive & Pig
Drupal
Twitter
Google App Engine
Hadoop & Hbase
.MOBI Apps
Python
PHP
CentOS
Syndicate
Cloud Storage PDF Print E-mail
Written by yun yu   
Tuesday, 13 October 2009

云存储
1.云存储的种类及适合的应用

我们可以把云存储分成二类,Block Storage 与 File Storage。

  Block Storage 会把单笔的数据写到不同的硬盘,借以得到较大的单笔读写带宽,适合用在数据库或是需要单笔数据快速读写的应用。它的优点是对单笔数据读写很快,缺点是 成本较高,并且无法解决真正海量文件的储存,像 EqualLogic 3PAR 的产品属于这一类。

  File Storage 是基于文件级别的存储,它是把一个文件放在一个硬盘上,即使文件太大拆分时,也放在同一个硬盘上。它的缺点是对单一文件的读写会受到单一硬盘效能的限制 ,优点是对一个多文件、多人使用的系统,总带宽可以随着存储节点的增加而扩展,它的架构可以无限制的扩容,并且成本低廉,代表的厂商如Parascale 。

那些应用适合 Block Storage?

快速更改的单一文件系统

快速更改单一文件的例子包括 数据库、共用的电子表单,在这些例子中,好几个人共享一个文件,文件经常性地、频繁的更改。为了达到这样的目的,系统必须具备很大的内存、 很快的硬盘及快照等功能,市场上有很多这样的产品可以选择。

针对单一文件大量写的高性能计算(HPC)

某些高性能计算有成千上百个使用端,同时读写单一个文件,为了提高读写效能,这些文件被分布到很多个节点,这些节点需要紧密地协作,才能保证数据的完整性,这些应用由 集群软件负责处理复杂的数据传输。例如石油探勘及财务数据模拟。

哪些应用适合 File Storage?

File Storage适合应用的场合如下

1.  文件较大,总读取带宽要求较高—例如 网站、IPTV

2.  多个文件同时写入 – 例如 监控

3.  长时间存放的文件 – 例如文件备份、存放或搜寻

这些应用有一些共通的特性

1.  文件的并发读取

2.  文件及文件系统本身较大

3.  文件使用期较长

4.  对成本控制要求较高

下面我们介绍一下典型的 File Storage 应用

文件及内容搜寻

大部分的情形,数据久了之后,使用的机会就比较少,但为了可以查询,不管是公司资料还是媒体内容,查询的成本必须低于数据本身的价值,这样才划得来。用户可以使用旧的 甚至淘汰不用的服务器建立云存储,存放这些旧的数据以供查询。

Tier-2 NAS

File Storage支持标准的网络协议,对使用者来说,就是一个 NAS,用户在使用时,几乎不需更动数据中心任何的应用端程序,一些旧的数据,可以迁移到这个云存储中,我们可 以把它作为 Tier-2 的NAS来使用。Tier-2 是指二级存储的意思。

多文件大量写入的应用

监控是大量数据写入的典型应用,成千上万的摄像头,将数据写到各自的文件中,在一个云存储中,有很多存储节点,每个存储节点可以提供多个摄像头写入,在写的带宽不够时 ,只要增加存储节点即可,由于数据集中处理,只需要一个管理人员,便能管理整个监控系统。

数据大量读取的应用

数据挖掘及高性能计算是大量读取的标准应用,这些应用需要很大的读取带宽,这些带宽的要求往往不是现有一般的 NAS 可以提供的,云存储可以把很多文件分散写到不同的存储 节点,以便透过多个存储节点的并发得到最大的带宽。这里的高性能计算与 Block Storage 中说的不同点是,这里的高性能计算所读取的不是单一文件,而是从不同存储节点读取 很多文件,这是 File Storage 的强项。

多个使用端都希望读取同一个文件的应用

IPTV 及网站的特质是,一个文件同时供很多人读取,为了应付大量及突如其来的读取需求,云存储会复制多份文件,以满足应用端读取的需求。

2.云存储在基因研究的应用实例

Standford基因研究中心在采购存储设备时,主要考虑下列几点?

(1).  能否能满足高性能计算?

(2).  能否满足现在及未来对容量及带宽的要求?

(3).  是否可以让研究人员自行管理存储,不需 一群人来协助使用、管理

(4).  成本?

(5).  当硬盘或设备坏掉时,数据是否安全?

  云存储的建立,有很多种方式, Standford 基因研究中心选用的是纯软件的解决方案,这个方案允许客户使用不同的服务器组成海量、可扩展的存储池,这个存储池可以提供多人同时使用,而且方便管理,它的好处包括

可使用任意服务器
  支持任意公司的服务器,不同容量、介质、品牌的硬盘,不同的网卡,只要能安装 Linux 即可。客户可以利用旧的、不用的服务器开始建立一个云存储,之后虽然加上新的服务器,二者可以共同工作,不会有影响。这样可以降低公司的成本,而存储节点的退出,也很容易,可以在线进行,完全不会影响系统运作。

容量扩展非常方便
  允许客户从很小的容量开始建立自己的云存储,当容量不够时,只要增加存储节点即可无缝的扩展到数百个 PB 的容量,完全不影响应用服务。扩展容量时,只要在存储节点上安装 云存储软件,然后接到网络交换机上,开启电源,控制节点侦测到新的存储节点,便会把新的存储容量合并到原来的存储池,整个过程完全在线操作,不影响系统原先在数据读写,使用者还是读写原来的文件,只是存储空间变大了。控制节点会把一些数据自动迁移到新的存储节点,以便增加存储读写能力。与传统增加存储空间或带宽时,需要停机处理,云存储软件 带给客户很多的方便。
  云存储软件 还提供 thin provisioning 的功能,客户在规划存储空间时,可以超过硬盘容量,等客户实际使用超过设定的界限时,云存储软件 会警告管理者增加存储空间,这样可以避免预估错误而导致的容量浪费。

易于管理

  对于拥有很多存储的客户,存储是否容易管理非常重要,云存储可以透过一台电脑轻易管理100个以上存储节点,管理者可以透过管理界面,了解容量使用及机器、硬盘健康状况。
透过多重复制增加数据安全性
   高性能计算过程产生的数据非常重要,为保证计算过程产生的数据不会因为硬盘、存储节点故障导致数据丢失,云存储支持多份复制,系统会自动将文件复制到其他存储节点,这可以保证某些存储节点故障时,服务不会中断且数据不丢失。当新增加存储节点或是硬盘时,系统会自动把数据从负载较大的地方迁移到新的存储节点或硬盘,系统会在不影响应用端使用的情况下,透过internal 网口自动迁移、复制文件,以保证容量、读写负载的均衡,完全的自动化,使系统管理变的非常简便。

不需更改系统架构
  云存储软件 支持标准的网络协议如 NFS, HTTP,FTP及 WebDav,从应用端看来,它就是一个 NAS,可以在不更改客户网络架构的情况下,把 云存储直接与原来系统结合。当分析数据出来后,使用者可以透过 浏览器存取数据,管理者只要利用鼠标就可以轻松的设定存取权限,对远端使用者非常方便.
 
读写性能的线形增长
  每一个文件系统都是跨越所有的存储节点,当 云存储收到一个读写指令时,控制节点会把指令导向存储节点,数据的读写不需经过控制节点,这可以避免产生流量瓶颈,以满足高性能计算的带宽要求,透过平行输出处理,云存储软件的读取带宽可以达到数百 GB/s。
  多重复制除了用来保护数据安全,也可以用来提升读取性能,当用户端负载很大时,管理者可以增加复制份数,这样文件会被复制到不同的存储节点,使得更多的存储节点也能提供该文件,增加读取性能。





Reddit!Del.icio.us!Google!Live!Facebook!Slashdot!Netscape!Technorati!StumbleUpon!Newsvine!Furl!Yahoo!Smarking!Ma.gnolia!
Last Updated ( Tuesday, 13 October 2009 )
 
< Prev   Next >