Chinaunix首页 | 论坛 | 博客
  • 博客访问: 11677795
  • 博文数量: 8065
  • 博客积分: 10002
  • 博客等级: 中将
  • 技术积分: 96708
  • 用 户 组: 普通用户
  • 注册时间: 2008-04-16 17:06
文章分类

全部博文(8065)

文章存档

2008年(8065)

分类: 服务器与存储

2008-04-19 12:42:58

构架一个系统需要考虑哪些成本呢?成本不仅仅是购买磁盘和RAID控制器的支出,还包括了设备消耗的电能以及为了散热而必需安装的空调等其他费用支出。因为对成本问题没有清晰的认识和统一的考虑,一些企业有可能选择SATA硬盘作为在线关键业务数据的存储介质,但同时,这家企业对性能和业务连续性还有较高的要求。

    实际上,存在性能要求的环境中,SATA硬盘在价格上并不比FC硬盘具备更多的优势。需要强调的是我们所指的是在有性能要求的环境中,在相同的存储环境中,存储密度是一个重要的考量因素。

SATA的困扰
    使用SATA硬盘现在风靡一时,因为相对价格较低。最初的应用是作为企业磁盘到磁盘的近线存储与备份,但是现在,用户使用SATA硬盘来做主要数据在线存储的案例也比比皆是,其原因是因为可以节约成本。SATA硬盘甚至成为了大型数据库的主要存储设备,其他以前使用FC硬盘的领域,现在也能看到SATA硬盘,显然用户对存储空间单位成本极为关注,但似乎忽略了一些可靠性方面的问题。

    好在现在RAID厂商已经开发了支持RAID-6控制器的SATA产品来打消这些疑虑,RAID6增加了第二个独立的奇偶校验信息块,而不象RAID5只有一个校验块,所以可以同时允许两块硬盘出现故障。

    但RAID6同时带来的是需要分配更多的磁盘空间,也需要在控制器和硬盘之间比RAID5提供更多的带宽。我们使用著名硬盘厂商希捷网站上提供的数据来做例证,750GB容量的SATA硬盘平均传输速度是78MB/秒,如果你用的RAID5时,你需要702MB/秒的传输速度让RAID集正常工作,但如果你用的是RAID6,平均速度至少要达到780MB/秒,或者提供10%额外的带宽。同样的速度问题在需要大量读写操作的应用软件中也存在,包括视频、音频输入输出流。还有一个可能被大家忽视的应用,那就是数据库重建索引。

    毫无疑问SATA硬盘提供了一个较低的单位存储空间成本,但是由于与FC硬盘相比每秒输入输出次数更少,而且各种指标都比FC硬盘稍逊一筹,比特误码率,硬盘转速以及较长搜索时间,企业究竟决定购买何种硬盘,显然还需要考虑更多地因素。

性能对连接组件的需求

    当我们想要获得所需要的性能时,我们还需要做哪些投入呢?

    假设需要建设满足一定性能要求的输入输出流的环境,需要每秒以MB或GB计算的传输速率,我们必须配备以下的硬件。
    可以满足I/O传输所需要的足够的内存。
    可以满足I/O传输的PCI总线性能。
    相应的存储连接设备,不管是目前为止在企业中最为广泛使用的光纤通道主机适配器( FC HBA) 还是USCSI,SATA,HCA或者NIC
    机, FC机,InfiniBand交换机或者以太网交换机
    RAID控制器,FC,IB,SATA或者以太网接口
    硬盘,FC\SATA\SAS等等

    你需要足够的设备来满足性能的需求,因为,每一个部件都有可能成为性能的瓶颈。举例来说,如果你有4Gbit FC和一个RAID控制器可以以4GB/秒传输数据,而你只有两个HBA,每个上面有两个口,就算是全双工通信,因为每一个HBA口每秒钟可以传输800MB的数据(400MB的读操作和400MB的写操作),那你的传输速度也只有3.2GB/秒。假设控制器上配置了足够的磁盘空间,可以以4GB/秒速度传输数据,所有其他硬件都不是瓶颈,HBA就成了瓶颈所在。

     所以,要满足对于性能的要求,需要的是一个平衡的系统。想要有这样的系统,就需要每一部分的硬件满足下面的要求:内存、PCI总线、HBA、交换机口、RAID控制器以及硬盘。每种硬件都需要使用电力、空调,这也是成本,但这些运维的成本我将不会计算在内,因为这方面的支出往往比较隐性。

硬盘成本

    良好的存储表现需要一个平衡的架构。因为SATA硬盘比FC硬盘以及未来的SAS硬盘慢,而且更不可靠,就需要有更多的硬盘来满足带宽的需求,连带的,就需要更多的RAID控制器,更多的交换机口,因为需要更多的HBA来满足读写操作的需要,这就是硬盘性能和可靠性带来的一系列连锁反应。

    总而言之,需要更多的硬件。要回答的问题就是,随着硬件的增加,电力和空调等运维费用也水涨船高,SATA硬盘与FC或者SAS硬盘相比在处理数据上是否还有价格优势呢?如果有的话,又是多少呢?

    我们知道最便宜的希捷 15.5K Cheetah 4 Gbit 300GB硬盘售价为1000美元,也就是说,每MB的成本为0.0033美元,但是MB/秒的成本为10.10美元。使用同样的技术,希捷 Barracuda 750GB SATA硬盘售价为269美元,所以SATA硬盘每MB的成本为0.00035,或者说是前者的10%,MB/秒的成本为3.45美元,也就是FC硬盘的三分之一。而在密度上面的成本和性能上面的成本的差异就更加明显。正如我所言,密度上面的成本只是成本构成中的一部分而已。

    根据上面的比较我们可以知道,在一个对性能有要求的环境中,SATA要比FC或者SAS硬盘的产品成本更高。虽然SATA可能要比FC便宜三分之一到90%,其实企业需要衡量的是性能和容量的平衡。但是衡量一个系统的整体成本,除了我们较容易计算的存储系统成本之外,还有一些较为隐蔽的成本问题。

    首先,我们需要注意的是一个RAID阵列中的硬盘可靠性要远远小于硬盘厂商所宣传的参数,其原因是因为只要硬盘有一点点迹象表明无法正常工作,比如在设备特定的响应时间内,系统没有任何反应,RAID阵列就会报错。而其实在这种情况下,硬盘还是能够运转很长时间的,并能修复这个错误。

    举例来说,如果一块硬盘在数秒钟的时间内没有响应,我所知道的一些设备就会报告说这块硬盘出现问题,并把这块硬盘标记为需要重构,但是更大的可能性是硬盘最终会有响应的。硬盘并不把这个当作一个错误,因为硬盘最终是会有所响应的。

    另外一个需要考虑的重要参数就是IOPS,SATA和FC的随机IOPS比率和以兆字节每秒计算的性能表现差异一致,考虑到真正的性能是以MB/s为单位来计算,以及FC硬盘较高的寻道延迟性能,我相信FC硬盘是比SATA硬盘更合适的选择。

    由于RAID阵列中的硬盘比普通硬盘要有更高的性能,同时也对故障更为敏感,因此一些硬盘厂商所公布的硬盘寿命,在RAID阵列中并不适用。

    举例来说,在希捷的网站上,标注15000转的FC硬盘的年度不良率(AFR)为0.62%,同样根据希捷网站的数据,测试出RAID阵列硬盘的使用寿命是120万小时。为了便于讨论各种情况,在这里我们给出大多数RAID设备使用的寿命,50万小时,而此时,年度不良率则变成了1.49%。

    同样也是来自希捷的数据表明SATA硬盘年度不良率为0.73%。我们按照网站上的数据假设硬盘的使用时间为100万小时,还假设RAID设备的使用时间为50万小时和30万小时。我想在30万小时的时候硬盘很有可能就由于高负载而出故障了。但为了公平起见,我还是会使用两个数字来说话,所以50万小时的年度不良率为1.46%,30万小时的年度不良率为2.44%。

关注能耗成本
    记住我的假设是SATA在对性能有要求的环境中并没有成本优势,不管是以IOPS来衡量,还是以流量方式来衡量。

    下面是2007年三、四月份网站上的数据:

表一


表二

    因为主机总线适配器和交换机口都需要电源,下面列出的是数据通路技术需要的电能:Logic双口4Gb的主机总线适配器需要6.5瓦,公司网站上没有给出关于热量的数据。 9500系列多层控制器交换机,48个口的刀片上,每个4Gb的口耗电16.46瓦,还需要3BTU来解决放出来的热量。

    下面是一个16个硬盘架的RAID设备和控制器的相关数据:
    • 每一个控制器大概需要60瓦电
    • 硬盘架有16块希捷500GB的Tonka-2 SATA硬盘=375瓦
    • 硬盘架有16块接口为4Gbit15400转146GB硬盘=382瓦
    • 降温需要的BTU数值则根据使用不同硬盘的情况和硬盘的容量而有所不同(容量越大一般就需要更多的能量来制冷降温)
    o 16块500GB的希捷的SATA硬盘=1283 BTUs
    o 16块146GB的希捷接口为4Gbit的FC硬盘=1300 BTUs

    从简单的乘法中可以看出,一个FC机架只需要消耗118瓦电(382-(16*16.5)),而一个SATA机架则需要使用167瓦电(375-(16*13))。这很可能是因为与光纤通道连接相比,SATA需要额外的控制器。对于FC来说需要增加31%的电能,对于SATA来说则需要增加45%的电能。

举例说明

    假设你需要在企业内部随时保持每秒100GB的处理能力。这在今天并不是常见的性能要求,但是在银行,保险公司,汽车产业,医药公司或者任何大型的商业机构,而这也不算什么过分要求了。让我们来算算硬盘的真正成本。

    如果是FC硬盘,我根据厂商数据假设每个硬盘最内侧磁道的最小传输速度是每秒75兆字节,我估计这两种硬盘都只达到了最大性能的55%左右。有些数据是曾经在多家硬盘厂商网站上公布过的。我已经把我统计的RAID 4+1和RAID 8+1的硬盘数量和估计的年度不良率写在上面的表里了。


表三

    根据这些信息以及重建的时间,按照我的估计和性能需要,从4小时到12小时不等,我认为需要两个额外的4+1或者8+1来保证达到性能的需求,就是17077个RAID 4+1,15387个RAID 8+1,注意还不包括热备。

    两个额外的LUN需要两个额外的主机总线适配器和两个额外的交换机口,还可能需要一部分额外的RAID控制器,我没有把这些计算在内,但请不要忘记这些因素。

    下表是SATA的数据:

表四

    一天内如此之高的出错可能性,要想达到FC同样的水平,我估计你为了性能需要再添置5个LUN才能把年度不良率降到1.46%,或者8个LUN达到2.4%。

    如果是1.46%,硬盘数为35751 RAID 4+2,以及29817 RAID 8+2。

    如果是2.44%,硬盘数为35801 RAID 4+2,以及29847 RAID 8+2。

    所以从纯耗电的角度看,单单是硬盘你就需要:

表五

表六

    不包括BTU的成本,基本上会再增加三分之一的能源成本支出,这样一来,二者之间的成本差异就越发不明显了。

表七

    消耗的电能和冷却成本,以及额外的硬盘、控制器和交换机口,让SATA的成本优势越来越微不足道了。虽然SATA硬盘可能便宜90%,但是计算上所有的成本以后,我们还没有包括额外的控制器和交换机口,以及它们运行所需的电能和冷却需要的能量,这么算下来,SATA的价格优势进一步缩小了。

    我们前面提到了硬盘的成本,以及通过网站查到的每种硬盘的价格。你看到的价格中没有包括SATA硬盘需要增加额外的RAID控制器以及需要做的重构,也没有包括额外的交换机口,主机总线适配器的价格和所有这些额外设备的散热支出。

    记住本文讨论的范围是有性能要求的环境,结论表明SATA的在有性能要求的环境下并没有什么成本优势,而FC或者即将来临的SAS硬盘应该是不错的选择。我们没有考虑为了散热而需要的BTU的数值,以及额外的主机总线适配器,交换机口和相关的能源消耗,也没有把未来会出现的能源成本计算在内。

    企业可以选择适用于自身环境的硬盘和介质,但是我个人强烈反对SATA用于有性能要求的环境中。

阅读(1180) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~