如何实现高效存储(上)

日期: 2013-04-10 作者:Jacob Gsoedl翻译:郭镭 来源:TechTarget中国 英文

最大限度地挖掘存储系统的性能潜力是用户永远的追求,但是,面对众多性能优化技术,我们还必须考虑到底是性能重要还是空间利用率重要。 在当前经济形势低迷的大背景下,挖掘现有存储系统的性能潜力成为用户的必然选择,不过追求性能只是一个方面。我们看到的现象是大多数存储系统的空间利用率还不到50%,而且存储控制器的处理能力也只用到一小部分,这些都是让用户不可接受的事实。在数据中心应用领域,通过服务器整合以及虚拟化技术,物理服务器的资源已经被最大化的利用起来,与此相反的是,存储效率低下的问题却成为用户的痛点。

若要实现服务器虚拟化的高效率,存储系统就必须跟得上,这是一个必要的前提,因此服务器虚拟化应用推动着存……

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

最大限度地挖掘存储系统的性能潜力是用户永远的追求,但是,面对众多性能优化技术,我们还必须考虑到底是性能重要还是空间利用率重要。

在当前经济形势低迷的大背景下,挖掘现有存储系统的性能潜力成为用户的必然选择,不过追求性能只是一个方面。我们看到的现象是大多数存储系统的空间利用率还不到50%,而且存储控制器的处理能力也只用到一小部分,这些都是让用户不可接受的事实。在数据中心应用领域,通过服务器整合以及虚拟化技术,物理服务器的资源已经被最大化的利用起来,与此相反的是,存储效率低下的问题却成为用户的痛点。

若要实现服务器虚拟化的高效率,存储系统就必须跟得上,这是一个必要的前提,因此服务器虚拟化应用推动着存储技术向更高效的方向发展。在虚拟化环境中,当前端服务器数量不断增加,后端存储阵列的不足便暴露出来,尤其表现在缺乏细粒度的分配和调动空间资源的能力方面。因此,如果用户希望对数据中心进行高度整合,那么服务器虚拟化技术和高效的存储技术二者缺一不可。

存储效率是一个综合性的指标,实现最佳的存储效率意味着要在有效存储空间以及可用处理资源两方面都有出色表现,通常也是各产品之间相互竞争的重点。

StorageIO高级分析师Greg Schulz说,“为了达到应用所需的IOPS能力,有些存储系统被设计得很大,通过大量磁盘的并发来提升IOPS,可是空间利用率却非常低,反之,追求空间利用率的最大化往往需要借助存储精简技术,比如压缩和重复数据删除等等,但是这些功能会对系统性能带来负面的影响“。因此,达成高效的存储就需要在容量和性能之间寻找一个平衡点,根据应用需求的不同,对容量、处理能力、性能以及成本进行控制和优化。

保证存储效率有哪些基本条件

优化存储系统的性能,本质上就是要尽可能地提高存储处理资源的利用率,同时尽量消除系统的瓶颈或阻塞。随着处理资源利用率的增加,剩余的处理资源以及响应额外处理请求的能力相应的就会降低。而且如果缓冲区太小的话,那么系统达到性能上限(瓶颈)的可能性就非常大。举个例子来说,一个平均处理资源利用率在50%的磁盘阵列不太可能触及性能上限(瓶颈),而对于一个利用率达到80%的系统来说,这个可能性就要大得多。

图1 高效存储技术及其对性能、容量和成本的影响

由存储厂商或第三方公司提供的内嵌在存储系统内部或在外部附加的运行报告、监控以及存储分析功能是十分重要的,它们可以帮助用户更好的了解系统的运行情况,避免系统过度(过高)配置,并减少很多后期维护工作。尤其是当用户需要优化性能或者按需增加处理资源时,这些组件的作用就会体现的非常明显。对此,StorageIO高级分析师Greg Schulz评价道:“无论是性能问题还是容量问题,好好利用存储厂商或第三方公司提供的工具都是十分重要的。”

这些工具不仅能够帮助用户定位性能的问题,更重要的方面在于它们可以帮助用户选择出最恰当的解决方案。衡量一套存储系统的性能并不能依赖某个单一指标,而要考虑多种组合因素,它们每一项都对应用程序访问数据的速度有所影响。其中,IOPS、吞吐带宽和访问延迟这三项指标是最关键的。 不过,指标数据究竟是好是坏还要考虑应用环境的差异,包括工作负载的类型(随机请求或者顺序请求)、数据块的大小、交易类型(读或是写),以及其他相关的能够影响性能的因素都依赖于应用程序本身的特点。比方说,如果是流媒体视频应用,那么大文件快速顺序读性能和大数据块是最重要的;而如果是虚拟化应用环境,那么随机读性能通常是最主要的考察指标。

下面的部分,我们将纵览那些可以优化性能并且提高存储资源利用率的技术,这里没有独门秘籍,因为每一种方法都有其优点和缺点。

通过堆砌磁盘数量来提高性能

磁盘驱动器是一种机械装置,读写磁头通过在高速旋转盘片的内道和外道之间往复移动来寻找并读写数据。即使是转速最快的15000转磁盘,其磁头机械臂的重定位时间延迟都会有数毫秒之多,因此每个磁盘的IOPS值最多只有几百个,吞吐带宽则局限在100MB/秒以内。

通过将数据分布在多个磁盘上,然后对多个磁盘同步进行读写访问是一种常见的扩展性能的方法。通过增加磁盘的个数,系统整体的IOPS和带宽值也会等比例提升。加之,有些存储厂商还提供short stroking这样的可以缩短磁头机械臂移动距离的技术。此类技术可以将数据集中放置在磁盘盘片的外道区域,结果是磁头移动的距离大大缩短,对数据访问的性能具有十分明显的提升作用。可是,当我们通过利用大量的磁盘并发以及short-stroking磁头短距离移动技术达成既定的性能目标之后,我们会发现其代价是非常高昂的,此外,由于仅仅使用了盘片的外道空间,所以存储的空间利用率会非常差。早在SSD固态盘技术出现之前,利用大量的磁盘并发以及short-stroking磁头短距离移动技术来满足应用的性能要求是最普遍的办法,即使在今天,这种方案依然被大量使用,原因是SSD固态盘的成本太高,所以用户依然青睐磁盘而不是SSD。NatApp技术和战略总监Mike Riley就说:“对于顺序访问大数据块和大文件这样的应用,使用磁盘通常性价比更高。”

RAID 及wide-striping技术对效率的影响

很多用户容易忽视一点,即RAID和RAID级别其实都会对性能和容量产生影响。通过改变RAID级别来提升存储性能或者空间的利用率是一种很现实的选择。校验盘的数量、条带的大小、RAID组的尺寸以及RAID组内数据块大小都会影响性能和容量。

图2 RAID技术对性能和容量的影响

我们都熟悉那些常见的RAID级别及其特点,但还有一些不常见的技术趋势值得我们关注,这些都与我们讨论的存储效率有关。首先,RAID组的尺寸会影响性能、可用性以及容量。通常,大的RAID组包含的磁盘数量更多,速度也更快,但是,当出现磁盘故障后,大RAID组也需要更多的时间用来重建。每隔几年,磁盘的容量都会翻一番,其结果是RAID重建的时间也相应变的更长,在数据重建期间出现其他磁盘故障的风险也变得更大。即使是带有双校验机制,允许两块磁盘同时出现故障的RAID 6也存在风险增加的问题,况且,RAID 6对性能的影响还比较大。有一个更好的办法是完全打破传统RAID组和私有校验盘的概念,比如,NetApp的Dynamic Disk Pools (DDP)技术,该技术将数据、校验信息以及闲置空间块分散放置在一个磁盘池中,池中所有的磁盘会并发处理RAID重建工作。另一个有代表性的产品是HP的3PAR存储系统,3PAR采用了一种叫做wide striping的技术,将数据条块化之后散布在一大堆磁盘上,同时磁盘自身的裸容量又细分成若干小的存储块(chunklet)。3PAR的卷管理器将这些小的chunklet组织起来形成若干个micro-RAID(微型RAID组),每个微型RAID组都有自己的校验块。对于每一个单独的微型RAID组来说,其成员块(chunklet)都分布在不同的磁盘上,而且chunklet的尺寸也很小,因此数据重建时对性能的冲击和风险都是最小的。

请继续阅读如何实现高效存储(下)

本文选自存储经理人2012年9月刊:全固态驱动阵列,亮了!请下载阅读PDF版本。

作者

Jacob Gsoedl
Jacob Gsoedl

暂无

相关推荐

  • RAID类型详解

    RAID可以实现更好的存储性能,带来更高的可用性。市场上有许多种不同的RAID类型,阅读本篇RAID各类型的详解有助于了解其最适合的场景领域。

  • 不满意就退货,戴尔存储看齐电商

    戴尔最近宣布未来就绪的存储保障计划,一句话概括就是:“60天内不满意即退货”。你可能会感叹:为了提升用户体验戴尔真是拼了。不过细想下,有钱才能这么任性吧?

  • 归档介质如何选?

    当前有很多归档介质是可用的,包括磁盘和云,但是他们的可用性和存储密度水平是多变的。

  • 揭秘:合适的RAID恢复服务

    当RAID还原需要的技巧超出内部已掌握的时候,RAID还原服务提供商可能就是解决之道,只要选择合适的一家即可。