中国科学院计算技术研究所数据存储技术研究中心

存储科普 当前位置 >> 存储研究中心 >> 存储科普

集群存储

发布日期:2011-08-17

  集群存储
  集群存储是将多台存储设备中的存储空间聚合成一个能够给应用服务器提供统一访问接口和管理界面的存储池,应用可以通过该访问接口透明地访问和利用所有存储设备上的磁盘,可以充分发挥存储设备的性能和磁盘利用率。数据将会按照一定的规则从多台存储设备上存储和读取,以获得更高的并发访问性能。


  与传统NAS和SAN相比集群存储的优势何在
  传统的SAN与NAS分别提供的是数据块与文件两个不同级别的存储服务,集群存储也分为提供数据块与文件两个不同级别存储服务的集群存储系统。
  集群存储的优势主要体现在提高并行或分区I/O的整体性能,特别是工作流、读密集型以及大型文件的访问,通过采用更低成本的服务器来降低整体成本。
  SAN系统具有很高的性能,但是构建和维护起来很复杂。由于数据块和网络需求的原因,SAN系统也很难扩容。NAS系统的构建和维护虽然比较简单,但是由于其聚合设备(又叫做NAS头)是其架构上的瓶颈,造成其性能很有限。集群存储提供了SAN和NAS结构的优点。在大多数使用集群存储的案例中,随着存储系统的扩容,性能也随之提升。一个大的集群存储的性能往往胜过一个SAN系统,但是价格也会更高。集群存储系统像NAS系统一样易于构建、操作和扩容。大多数集群存储系统没有传统NAS系统的固有瓶颈。
  集群存储有两种实现方式:一种是硬件基础架构加上软件;另一种是专用集群存储,是构建在NAS基础架构之上的,但是通过操作系统实现集群存储。从这个角度讲,集群存储与SAN或NAS不存在竞争关系,是实现不同存储需求的解决方案。”
  集群存储和NAS的概念是在文件系统层面上的,而SAN是在LUN层面上的,集群存储可以利用SAN环境实现。因此,集群存储与SAN解决的问题不同。如果一定要比较这两者的优缺点的话,可以说SAN做到的是多个服务器节点可以同时看到SAN环境中的同一个LUN,还不能做到多服务器节点间的文件级共享。
  集群存储在性能、可靠性及扩展性等多个方面都远远优于 NAS。
  集群存储在部署时有没有特别要求
  总体来说,部署集群存储并无特别之处。集群存储中的所有节点都必须安装好操作系统,并保障网络畅通。整套系统的配置管理一般都可以通过单一节点进行,不会像SAN那样复杂。
  采用集群存储的客户一定要懂得应用,对现有的基础架构非常熟悉,因为集群存储在实施时可能要用到网络、服务器、操作系统等多种知识。在采用集群存储架构时,必须考虑以下三方面问题:存储成本对整个业务模型的影响;应用系统架构和输入/输出负载的特点;在评估集群方案时,原有系统本身的性能、成本、可用性如何。
  为了尽可能减少风险,用户在部署集群存储系统时,最好与厂商的专业技术人员进行充分沟通,根据具体应用需求进行有针对性的设计和部署,这样才能达到预期效果。


 如何选择集群文件系统
用户应该从自己的实际应用需求(如性能需求及可靠性需求等)出发来判断是否需要构建集群存储。在选择集群存储解决方案时,应该着重考虑避免性能瓶颈。集群存储解决方案中最容易产生性能瓶颈的地方是元数据管理服务器(Metadata Server),因为元数据服务器的数量通常都有限制,而且其工作负载又很大。另外,在方案设计和项目实施的过程中,一定要注意避免单一故障点。好的方案可以从服务器、网络及存储系统的各个方面消除单一故障点。SAN、NAS设备和基于Linux系统的商品硬件可以将所有的基础磁盘实时复制到另一个存储节点,从而提供一个模拟共享盘环境。基础模块设备被复制之后,那些节点就可以访问相同的数据,也可以运行同一个群集文件系统了,但是这种复制超出了传统共享盘的定义。相反,不共享才是共享盘的问题所在。连接着不同存储设备的节点会在每个模块被写入数据时将变化通知给主服务器。现在,不共享架构仍存在于Hadoop那样的文件系统之中,那些文件系统可以在许多节点故意建立多个数据副本,从而提高性能和冗余。而且,在不同存储设备或节点之间利用自己的存储设备进行复制的群集也可以做到不共享。
对于互联网、流媒体、高性能计算、能源等数据密集型、高并发访问的行业用户来说,容量与性能的线性扩展是必须的,而对于传统的存储方式来说,这却是不可逾越的鸿沟。
  集群存储是由若干个存储系统组成的集群,其性能和容量等属性可通过集群的方式得以叠加和扩展,不但有效解决了高性能的文件共享问题,同时兼顾了数据的高可用性及文件系统的高扩展性。
  用户的迫切需求直接导致了集群存储市场的兴起。在集群存储领域,有中国用户十分熟悉的IBM、SGI、NetApp、Panasas、中科蓝鲸,还有中国用户不太熟悉的DataDirect、Omneon、Isilon、Verari、龙存科技等。
  从我们接触到的中国用户来看,能源行业、广电行业和科学计算等领域的用户成了集群存储市场上首批用户。因为这些行业的用户越来越依赖大型的和日益增长的数据集,对于存储的性能和可靠性要求也非常高,而且在服务器集群方面也积累了很多经验,这些因素都有助于上述行业的用户了解和实施集群存储。
集群存储的应用并不局限于某个行业或某个应用,只要存储的经济性与技术性能达到一定的要求,集群存储就是一种不错的选择。

 

集群文件系统词典
GFS:全局文件系统
GFS是应用最广泛的集群文件系统。它是由红帽公司开发出来的,允许所有集群节点并行访问。元数据通常会保存在共享存储设备或复制存储设备的一个分区里。
OCFS:甲骨文集群文件系统
从概念上来说,OCFS与GFS非常相似,现在OCFS 2已经被应用于Linux系统之中。
VMFS:VMware的虚拟计算机文件系统
VMFS是ESX服务器用来允许多个服务器访问同一个共享存储设备的集群文件系统。这样就可以实现虚拟机在不同服务器之间的无缝迁移,因为源服务器和目标服务器都可以访问同一个存储设备。日志是分布式的,ESX服务器之间也不会出现单节点故障。
Lustre:Sun的集群分布式文件系统。
Lustre是专门用于包含数千个节点的大型集群的分布式文件系统。Lustre已经支持Linux系统,但是高速计算环境之外的应用程序是有限的。
Hadoop:一个象谷歌那样使用的分布式文件系统。
这不是一个集群文件系统,但是却是一个分布式文件系统。我们将Hadoop收录进来是因为它的应用越来越广泛,而且利用Hadoop的存储架构设计决策的组合很多。但是默认配置下,你会在3个不同的节点上拥有3个数据副本。一旦数据发生变化,每个数据副本都会更新,因此,从某种意义上来说,它也可以被看做是集群文件系统。然而,Hadoop存在一个故障点隐患,即跟踪记录所有文件系统级数据的命名节点。


 
  集群存储在中国的应用
  用户对SAN和NAS比较熟悉,但是对集群存储解决方案比较陌生,特别是对集群存储的可靠性存在疑问。从目前情况看,集群存储还处于导入期,用户接受需要一定的时间。
  中科蓝鲸已经研发出蓝鲸海量网络存储系统、蓝鲸网络存储设备、蓝鲸服务部署系统、蓝鲸虚拟存储设备系统,而且在这些系统中用到的海量存储技术,包括虚拟存储技术、存储专用设备的硬件设计和设备专用的操作系统,分布式文件系统、负载平衡技术、动态存储空间映射、数据迁移技术、远程容灾备份技术、日志系统、高可用技术、网络系统管理技术、基于网络存储系统的集群系统的动态部署和管理系统等,集群存储已经在国内广电、石油、遥感、金融等各个行业得以实际的应用,并在海外大规模的应用。在这些行业中,客户需要存储系统的功能、特点能够适应其业务应用环境,并且不能影响过去的投资,更重要的是不能影响整个业务的运作。