探索中国CIO人才现状 | 第四季调研报告
存储将怎样向上堆叠
2014-03-14  作者:e--worke 

  在不久的将来,存储将不会是个消极的角色,因为它与应用和工作负载越来越紧密地集成在了一起。


  ArunTaneja在上一期专栏里写到:LUN的概念已经被废弃,或者说,它在未来作为存储被管理的首要方式,至少已经日薄西山。提供以虚拟机(VM)为中心的高级存储的产品的出现和不断被采用,这已经变得很明显了。注意力从LUN转向VM,改变了可以继续与他们直接理解的建构一起协同工作的VM管理员、必须提升服务的存储人员、以及那些可能受惠于改善的性能和可用性(并有望更低成本)的讨厌的终端用户的存储游戏。


  你可以认为LUN的终结是由于存储厂商为了提供更好、更高级别的产品相互竞争而导致低级别阵列的功能产业商品化的结果,或者归因于最具效能和效率的IT可以有助于取得成功的竞争激烈的市场。不管如何,我们认为存储解决方案将向上堆叠不断演变是必然的。最大的问题是:接下来会发生什么?存储堆叠向上一层的有价值的级别是什么?让我们从熟悉的存储类型开始,逐步深入到一些未来可能的存储解决方案。


  块、文件和对象存储


  这里我打算简化一点,但是在堆叠的底部,我们可能找到我们所钟爱的块存储。块存储与位处理有关——保存并保护原始数据。职责和注意力通常都大规模地分配给IT域或孤岛。存储经理人负责保存和保护放在随机容器(LUN)里面的任何数据,而存储客户端根据需要随意使用和安排这些数据。SAN有效地提供了磁盘虚拟化。它的性能可以很高,但服务是最初级的,而客户端需要处理很多低级别的问题。在LUN级别的切换确保特定的存储被定义和被分派,但存储经理人几乎无法为其客户端优化任何数据级别的服务。


  文件系统为块存储增加了一个实用程序层。与原始位存储不同,其存储服务向客户端提供一个“虚拟的”文件系统,并跟踪与放置在系统中的文件有关的预定的元数据。存储经理人可以创建、优化并调试该文件服务,以利于客户端,并试图优化潜在的基础设施资源。与此同时,客户端享有更高级别的文件服务,并放弃较低级别的控制。从根本上来说,一个沉重的负担已经从“很多”客户端转回到更有效率的中央存储服务。


  文件系统对于组织原始磁盘的能力有限的应用非常有用,但是它们仍然呈现一个由目录层次结构、所有权、权限和共享设施组成的大体上以人为本的界面。对象存储具备读写随机数据块和元数据块的简化协议,它对于自动化和程序编写而言是一个更自然持久性目标。通过使用具备策略的元数据,对象存储能够独立地管理它们存储的对象。例如,对象到期的时候修改数据保护级别、确保地理定位的遵从性,甚至保存期满后删除对象等。


  由于大多数对象存储内置于文件系统的组件中,可以说,文件系统能够建于对象存储之上。然而,我们仍然认为:对象存储向存储内数据提供管理(例如自动化的生命周期管理)的这种演变,是迈向存储服务堆叠的行之有效的一步。


  应用建构


  如前所述,从对象存储向上堆叠的一个途径,是设计用于VM或者数据库等特定的应用数据对象的存储解决方案。我称之为应用“建构”,以免与常用的名词“对象”相互混淆。


  为特定的应用建构而专门设计的存储,不仅可以在功能上充分满足客户端的需求,而且可以进行内部优化,以提供显著的性能和成本/容量优势。例如,OracleZFSStorageAppliance是对Oracle数据库的“应用设计”。它可以存储并把存储端的处理单方面地应用到数据库的数据上(例如,以混合列式压缩的格式)。它也支持能够使数据库直接地调试那些影响应用性能的存储端的参数的特定协议。


  Arun在其专栏中指出:Tintri之类的很多以VM为中心的解决方案,运行VM是其首要建构。再进一步,我们可能考虑把AtlantisILIO作为专门用于虚拟桌面基础架构(virtualdesktopinfrastructure,VDI)桌面机的存储服务。Actifio可能被定义成为一种针对管理“复制数据”建构的存储服务。我们甚至可能考虑使用Maginatics的MagFS之类的提供“文件系统”建构,此时该建构的首要用户是配置文件系统(“文件系统即服务”),而不是访问文件的最终用户。


  在所有这些情形中,存储解决方案都是应用感知的。它对应用建构了如指掌,并可以向对应用无感知的存储提供改善的管理、性能和效率。


  敢问路在何方?


  再看长远一点儿,我可以看到下一步的演变:存储不仅嵌入到应用建构、其元数据和静态的策略之中,而且嵌入到特定的动态行为、程序或者功能之中。想象一下数据库存储的过程或者面向对象的程序编写,此时单个的编程对象可以被“附加”各种(编程)方法。当然,如今存储基础设施正满载计算和存储能力,存储端可能很快会有充足的容量以执行嵌入到数据的功能。在将来,静止的数据可能很难与动态的应用截然分开,且可能永不停歇。


  很多厂商一直大规模地在他们的存储阵列上无所顾忌地运行VM,向数据提供更直接的访问,或者运行病毒扫描之类的工作。如果你考虑已经把存储当成VM来运行的虚拟存储阵列的话,融合计算和存储似乎大势所趋。


  请定义软件定义存储


  存储厂商有三种处理未来基础设施的方法。第一种是融合统一存储。有些厂商会继续在一个大的核心平台上附加广泛的功能。第二种是创建专用的存储,为特定的应用进行设计和优化。我们看到很多着眼于此的始创公司。而第三种是可以按需动态地塑造的可编程或者软件可定义的存储。尽管EMC的ViPR等已经发布,但是这种方法的效果有待验证。


  哪一种方法会获得最后的成功?我认为:下一代的存储平台将具备强劲、多用途、横向扩展的核心,具有可以动态地编程以支持各种各样的应用建构的专用模版。对以数据为中心的计算任务而言,这个平台马力强劲,从顶端俯瞰,彷如一个虚拟化的大数据集群。


  存储将必然向上堆叠,更智能,与使用它的应用程序更密切。