分布式存储的发展演变
回顾发展简史,大致可以把分布式存储分为四个发展阶段。
第一阶段是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等,但离真正的云文件系统都还有很大的差距。
分布式存储的发展展望
存储技术发展日新月异,从来都不缺少新的概念和名词,但铅华褪去,真正留下来的才是精髓。五年后或十年后,分布式存储到底会是一个什么样子?这里不妨大胆展望一下。
(1) 超高Scale-Out扩展能力:单一EB级存储系统,支持万级集群规模,可全球范围内全局部署;
(2) CompuStor超融合:类似Nutanix架构,计算、存储,甚至应用高度融合;
(3) 闪存技术应用:从主存、Cache到Tier分层,闪存无处不在;
(4) 高速网络互连:四/十万兆以太网和Infiniband网络得到普及;
(5) 应用感知:I/O更加智能,性能和效率动态自适应和优化;
(6) 纠错码技术:基于纠错码提供可用性,复制技术作为辅助;
(7) Online消重/压缩:成为系统标准配置,提高存储效率;
(8) 统一存储:池化存储,同时支持对象、块和文件存储。
作者:刘爱贵 中科院博士