为企业选择一款合适的主存储解决方案可能是项棘手的任务。为了确保最后获得一款设计精良、经济高效的解决方案,IT管理者要做的最重要的事情是,深 入了解自身环境在当前和未来的存储要求。如果没有做到这一点就开始评估市面上众多的存储解决方案,会很浪费时间,而且到最后可能发现解决方案并不如意。
除非有意购买专门用于单一高性能的存储设备,否则最好的办法还是首先认真分析企业环境。高冗余性、高性能的主存储设备价格不菲。所以,想让准备 投入的资金花在刀刃上,最好的办法就是确保存储设备为基础架构带来最大的效益。
以下是应当遵守的几条简易规则,以及需要避免的常见陷阱。
选择合适容量
目前的存储容量需求可能是最容易确定的事情了。看一下所有服务器占用的磁盘空间,然后累加起来,最终就会得出一个数字。当然,实际情况没有这么 简单。需要考虑三个基本因素,否则有可能会导致估计不准确。
要估计的第一个也是最困难的因素是数据增长。要准确评估这个需求,其实惟一的办法是使用一套系统,长期监测数据的使用情况,并且可以推断出将来 的使用情况。无论目前有没有考虑购买存储设备,都应当部署一套系统来推断将来的存储要求。如果能够事先知道何时在存储方面做下一次投入,不但可以更准确地 编制预算,还有机会控制数据增长,以免为时太晚。
第二个因素是准备保持哪种级别的过度分配。不可能为含有100GB数据的一个卷只分配105GB的存储资源,因为数据很可能会不断增长,用户还 没来得及反应,数据已占满了那点剩余空间。如果存储环境以直接附加存储(DAS)系统为主,那么过度分配级别的可能性很大。大多数人通常尽量避免为原地 (in-place)生产服务器添加内部存储资源,所以可以经常看到这一幕: 购买的服务器拥有的存储空间是所需存储空间的两到三倍。使用共享式存储解决方案的主要优点之一就是没必要这么做; 但重要的是考虑到这一点: 用户可能仍需要在每个卷上留出至少20%~30%的剩余空间。
容量方面要考虑的第三个主要因素是存储环境中计划使用的快照。诸多存储设备供应商实施了全然不同的快照技术,所以用户在选择特定的存储产品时, 需要重新考虑这个方面。快照将来使用的空间容量通常与存储卷上的数据变化速度有关。要注意: 这与数据增长不一样——数据在不增长的情况下也能够——而且确实经常变化。数据库和电子邮件服务器就是这种数据频繁变化的典例。一条简易的经验法则就是, 为快照留出实际数据量的50%~100%。用户希望隔多久拍快照、希望拍快照保留多长时间、具体使用哪项快照技术以及数据变化速度,这些因素都会对这方面 的计算产生重大影响。
判断性能优越
判断磁盘架构需要如何高的性能,需要全面了解用来各种衡量尺度。随着用户不断深入地了解,这个课题会变得极其复杂。但有一些基本的规则可以让用 户准确地估计需要。
在考虑应用程序的存储性能要求之前,要做的第一件事就是忘记应用程序有多重要。这听上去似乎很可笑,但许多企业会下意识地以为因为某应用程序 “很重要”,所以需要更高的性能。或者更糟糕的是,因为某应用程序“不重要”,它们想当然地只需要较低的性能。
在第一种情况下,用户很可能会购买自己不需要的磁盘资源。而在第二种情况下,用户最后可能会遇到应用程序性能变低的情况。无论重要与否,反正这 两种情形都没有人喜欢。如果某应用程序在企业中相对重要,用户可能会多留出来余量,确保为突如其来的峰值需求留有余地,但这不会影响最初分析。
大致说来,有两个性能衡量指标会影响用户购买的磁盘类型: 数据吞吐量和事务吞吐量。
● 数据吞吐量
“数据吞吐量”(Data throughput)是指在既定的一段时间内,能够读取或写到存储设备上的原始数据量,通常以每秒兆字节(MBps)来表示。许多人对这个性能衡量尺度 很熟悉,因为它在网络领域有直接对应的衡量尺度。然而,它也经常被人过于强调,而且通常被人误解。
简而言之,实际上原始数据吞吐量最终很重要的情况少之又少。比方说,从某个特定的存储区域网(SAN)按顺序读取两兆字节的数据。这样的话,只 要以400MBps的流量,就能让连接至该SAN的4GBps光纤通道几乎处于最高速状态。不过,除了视频编辑、医疗成像及另外几个小众领域之外,很少有 应用程序会在实际环境中出现类似这样的操作。用户有可能在企业环境中看到的最常见的高带宽使用情况就是直接来自SAN的备份。
尽管确保用户选择的存储平台能满足这些需求,但是一味关注最大数据吞吐量会忽视磁盘性能最重要的一方面,如下。
● 事务吞吐量
“事务吞吐量”(Transactional throughput)是指在既定的一段时间内,磁盘架构所能处理的小型磁盘事务的总数,通常以每秒输入/输出次数(IOPS)来表示。简而言之,通常关 系到存储环境成败与否的因素是事务性能,而不是能传输多少原始数据。
最关键的应用程序基于像数据库这些结构化数据系统。这些类型的系统一般会生成数量相当多、但非常小的数据事务,这些事务很少是顺序型的。正因为 如此,存储系统基于内存的缓存不太可能特别有效,用户也不会大量使用存储互连架构中的可用带宽。影响提供事务吞吐量的一个关键因素是,存储系统中的磁盘数 量和类型。在这种情况下,驱动器磁头在一面磁盘碟片上寻找数据、然后跳到另一面以获得另一部分数据所花的时间量,比拥有的是4GBps还是8GBps光纤 通道重要得多。之所以会有15000转速的串行连接磁盘和固态硬盘(SSD),就是因为需要减少这方面的负荷。
由于这个原因,绝对有必要监测应用程序带来的事务磁盘负荷。要确保监测的时间足够长,那样才能在月底看到处理和备份等瞬间活动产生的负荷状况。 这些活动其实会考验存储平台,而且往往决定着实施的系统能否取得成功。
如果用户在自身环境中从来没有进行过这种监测,很可能是对应用程序的重要性与它们所耗用的资源数量并不清楚。