原文发表于《程序员》2014年7月刊。

4月30日,Redhat宣布1.71亿美元收购Ceph开发商Inktank公司,加上之前2011年10月1.36亿美元收购的Gluster,Redhat已经将两大著名的开源分布式文件系统纳入旗下。5月17日,最后一台小型机在阿里巴巴支付宝下线,标志着阿里已经完成“去IOE化”。随后国内互联网以及有技术实力的公司,掀起了一场去IOE(以IBM, Oralce, EMC为代表)化运动,通过开源解决方案解决计算和存储问题。Nutanix和VSAN在VMware等虚拟化中大行其道,更是把分布式存储推到了风口浪尖,Server SAN一时间成为了高大上的东西。为什么会出现这番场景呢?分布式存储说来也不是新奇的玩意,2000年就已经有很多产品了,诸如GPFS, Lustre, Panasas, PVFS等,但之后十年发展一直不温不火。其实,说到底还是实际应用需求的推动,当前分布式存储欣欣向荣的发展景象主要源于数字宇宙的爆炸式增长。

分布式存储的发展演变

回顾发展简史,大致可以把分布式存储分为四个发展阶段。

第一阶段是1980s的网络文件系统。这一时期历史背景是以太网技术蓬勃发展,主要研究重点是实现网络环境下的文件共享,解决客户端与文件服务器的交互问题。这一阶段的主要成果包括CMU/IBM合作研制的AFS文件系统和SUN公司推出的NFS文件系统。题外话,SUN公司是一家伟大的公司,如Solaris, Java, ZFS, DTrace,每一个产品在技术上都是所向披靡,但可惜的是在商业模式和市场方面做得不好,最后沦落到被收购的结局。

第二阶段是1990s的共享SAN文件系统。“天下大事,合久必分”。这一时期存储系统开始独立于计算机系统快速发展,存储区域网络SAN兴起,研究重点转变为解决存储系统的可扩展性和面向SAN的共享文件系统。在这一阶段重量级的产品是IBM研制的GPFS,以及由Redhat支持的开源项目GFS(Global File System,不是Google的GFS哦!)。这里重点提一下,GPFS可谓是文件系统的常青树,而且能够保持与时俱进,不仅在HPC中占据重要地位,还能够通过SoNAS/GSS在云计算领域保持竞争力。

第三阶段是2000s的面向对象并行文件系统。计算机技术不断发展,尤其是高速网络技术的发展,这对存储系统扩展性提出了更高的需求,急需突破容量和性能方面的瓶颈。相应的,研究重点主要集中在对象存储技术,如何进行高效的元数据管理和提高数据访问的并发性。这一阶段可谓是百家争鸣,尤其是开源系统异常繁荣,包括PVFS, Panasas, Lustre, Ceph,GFS(这里才是Google File System)等。简要说一下对象存储(Object-basedStorage),这是一种新的网络存储架构,综合了NAS和SAN的优点,同时具有SAN的高速直接访问和NAS的分布式数据共享等优势,提供了具有高性能、高可靠性、跨平台以及安全的数据共享的存储体系结构。

第四阶段是2010s的云文件系统。云计算和大数据从噱头而起,现在已经慢慢开始真正落地。在这样的背景下,数据呈现爆炸式增长趋势。根据研究显示,2020年数字宇宙将达到40 ZB,比2009年的0.8 ZB猛增50倍,这其中80%以上为非结构化数据。云存储要求弹性扩展、高可用、高性能、多租户和QoS保证,大数据则有4V(Volume、Velocity、Variety、Value)特征,这对数据存储和管理提出新的挑战。在这一阶段,研究重点是EB级大规模存储系统,数据高可用性方法(如复制、HA、纠错码),高效智能存储技术(如消重、压缩、分层),以及新型的计算存储融合系统和应用感知(Application-aware,比如虚拟化)存储。目前很多分布式文件系统都在往的云的方向发展,诸如GPFS、ISILON、OceanStor 9000、GlusterFS、Ceph等,但离真正的云文件系统都还有很大的差距。

ServerSAN-云计算时代的弄潮儿

“天下大事,合久必分,分久必合”,这是一种轮回,更是螺旋式的演进。存储和计算分离后,IOE基本垄断了IT企业应用市场。然而到了云计算时代,IOE却适应不了云服务的弹性横向扩展,要么无法满足应用需求,要么构建和维护成本过高。去IOE运动其实是被动地改变,这从阿里技术的发展历程也可以看出,当然上万名的技术团队并不是谁都可以负担起的。于是,标准X86服务器+存储软件这种融合系统出现了,计算和存储又重新统一,美其名曰软件定义存储,Wikibon还给出了一个Server SAN的定义。简单地说,Server SAN是有多个独立的服务器带的存储组成的一个存储资源池,有着良好的性价比和扩展性。按照这个定义,Nutaix, VSAN, ScaleIO, Nexenta, Ceph, Gluster等这些都属于Server SAN。Server SAN存储目前主要在互联网公司应用,如Amazon, Facebook, Google, Alibaba, Baidu, Tencent等互联网公司研发使用的Server SAN,即Hyperscale Server SAN,这占据了Server SAN存储的绝大部分份额,但Server SAN已经逐渐进入了企业的数据中心。

Nutanix目前是风头正劲,它在应用层面对计算和存储进行超融合,主要针对虚拟化应用,甚至连自身的控制器都是VM。VSAN更是大潮当下,刚刚发布第一个版本,就有很多用户迫不急待地测试和上线,用户比VMWare表现更积极。根据Wikibon的调查结果,SERVER SAN 5年后将超过传统企业存储,成为市场的主流;10年后传统存储只有10%的份额,大限将至。虽然这个预测有点太过乐观,但大趋势基本是对的,ServerSAN已经成为云计算时代的新宠儿。那么,为什么 Server SAN会如此受到市场的热捧呢?

究其原由,这归结于Server SAN生得逢时。运行于标准X86服务器或虚拟机之上的软件定义存储,这个概念已经深得人心。X86服务器架构的可靠性和性能已经得到充分的验证,Server SAN可以利用服务器的大量Core。存储软件和服务独立于硬件,性价比高而且升级方便,可以提高竞争力,降低成本。传统存储网络主要基于FC,传输带宽和延迟远远优于千兆以太网,随着10Gb/40Gb以太网和Infiniband RDMA网络技术的引入,这却成为了系统性能瓶颈。而采用ServerSAN形态,计算和存储网络统一,就没这个问题。最为重要的一个因素是闪存SSD技术,高IO性能、极低延时和高带宽是闪存的显著特点。一块小小的闪存卡IOPS可以达到80万之多,带宽达到3GB/s,而延时仅为15微秒,完全可以和高端存储相媲美。闪存这种革新性的存储技术使得Server SAN可以具有超高性能。正是由于X86服务器、高速网络、闪存和软件定义存储等技术的发展和广泛应用,造就了ServerSAN的生态环境,使其在恰当的时候成为了云计算时代的弄潮儿。

分布式存储的发展展望

存储技术发展日新月异,从来都不缺少新的概念和名词,但铅华褪去,真正留下来的才是精髓。五年后或十年后,分布式存储到底会是一个什么样子?这里不妨大胆展望一下。

(1) 超高Scale-Out扩展能力:单一EB级存储系统,支持万级集群规模,可全球范围内全局部署;

(2) CompuStor超融合:类似Nutanix架构,计算、存储,甚至应用高度融合;

(3) 闪存技术应用:从主存、Cache到Tier分层,闪存无处不在;

(4) 高速网络互连:四/十万兆以太网和Infiniband网络得到普及;

(5) 应用感知:I/O更加智能,性能和效率动态自适应和优化;

(6) 纠错码技术:基于纠错码提供可用性,复制技术作为辅助;

(7) Online消重/压缩:成为系统标准配置,提高存储效率;

(8) 统一存储:池化存储,同时支持对象、块和文件存储

文章来源:http://blog.csdn.net/liuaigui/article/details/37544339
文章作者:刘爱贵