SPC(storage performance council,存储性能理事会):定义、管理和推动行业标准的、供应商中立的benchmark来描述存储产品的性能
在这里,笔者先引用一段SNIA(存储网络工业协会)China教育委员会主席王纪奎先生主编的《成就存储专家之路--存储从入门到精通》一书中对SPC测试的介绍:
SPC的SPC-1和SPC-2
存储性能理事会(storage performance council,SPC)是一家非营利组织,主要使命是定义存储系统基准测试、实现其标准化并进行推广,为计算机行业及其客户提供客观、可验证的性能数据。SPC成员对所有公司、学术机构和个人开放。根据存储行业的需要和行业所关心的问题,SPC在2001年创建了第一个行业标准性能基准测试,目标是推动存储性能的提高。目前IBM,HP,Sun,HDS,Dell等存储业内的巨头都是SPC的重要会员,并且都视自身产品获得更高的SPC标准评分为荣誉。由于某种原因,存储业内的另一个巨头EMC一直未能参加SPC,这不免让我们有些遗憾。
SPC最为著名的标准是SPC-1和SPC-2。几乎每个月都会有厂商将自己产品的SPC-1和SPC-2的测试结果公布,可以说这两个标准是目前存储业内公认的最为活跃的测试标准。
SPC-1基准测试体现了存储供应商衡量存储系统处理复杂请求和大量数据的基本性能,其主要衡量存储系统在随机I/O负荷下的吞吐量(IOPS)。而SPC-2则主要衡量在各种高负荷连续读写应用场合下存储系统的带宽(MB/s)。
SPC-1设计一个专门为测试存储系统在典型业务应用场合下的负载模型,这个负载模型连续不断地对业务系统并发的做查询和更新的工作,因此其主要由随机I/O组成。这些随机I/O的操作涉及数据库型的OLTP应用以及E-mail系统应用,能够很好地衡量存储系统的吞吐量(IOPS)指标。
SPC-2与SPC-1测量的模式完全不同,它由3个不同负荷模型构成,主要衡量存储系统在连续大规模移动数据时的性能。这3种负荷模型包括:
(1) 大文件处理模型。该模型模拟同时读写多个大容量模型的应用场景,这些场景一般常用在科学计算和大规模金融计算领域中。
(2) 大数据量的数据库查询模型。该模型模拟数据之间的大量连接(join)和全表扫描应用场景,这些场景一般常用在数据挖掘和常务智能领域。
(3) VOD模型。该模型主要模拟非线性编辑应用场景,会同时读取多个大的影音文件并写入存储系统中。
可以看出SPC-2涵盖了目前大量连续I/O的所有典型测试场景,因此能够很好地测量出存储系统的带宽。
SPC-1和SPC-2在SPC组织的官方网站http://www.storageperformance.org/上,可以找到有关SPC-1和SPC-2的最新数据。标准的测试结果能够很好地帮助数据中心用户明确各种存储在不同应用场合下的性能表现,用户可以根据这些标准得分判别存储系统是否能满足自己业务系统的性能需求。
上述的最后一句话,相信现在已经有许多人不再认同,其中原因我们在上文已经有所叙述。那么SPC-1在今天就完全没有意义了吗?撰写本文的目的又是什么呢?
上图为SPC网站上公布的SPC-1测试结果对应的存储厂商,其中包括我们熟悉的戴尔、富士通、惠普、日立数据系统(HDS)、IBM、NetApp、甲骨文(Sun)、SGI;现在已经被HP收购的3PAR、被Oracle收购的Pillar、被NetApp收购的LSI Engenio存储部门(以OEM业务为主);推出SANmelody存储虚拟化软件的厂商DataCore、为众多国内渠道存储品牌OEM供货的台湾厂商Infortrend;还有固态存储的先行者Texas Memory Systems(TMS)、主张精简控制器架构的Xiotech、以及唯一参与SPC组织的国内存储厂商华为赛门铁克(现已被华为收购全部股份)。