目前,又出现了一种新型存储层:Tier 0。Tier 0是一种固态存储器存储,在Tier 1的基础上提高性能。过去,Tier 0的存储形式为RAM磁盘,价格不菲。实际上,为了降低RAM磁盘的较高成本,你不仅需要确保由存储引起的性能问题,还应该说明在RAM磁盘上的投资能得到回报。
但是,目前这种情况已经发生了变化。固态硬盘成本降低,数据中心可以更加容易地采用SSD技术。尽管SSD成本降低,吸引力增强,但公司还是会首先考虑性能问题,然后才决定是否选择SSD技术。
要创建Tier 0存储,首先应明确需要存储哪些数据。
要与4U SSD匹配的性能需要巨大、昂贵的磁盘阵列。以及大型磁盘LUN对多个硬盘分条。根据常理,简单才能胜出。4U SSD简单实用,大型磁盘阵列采用驱动器安装,复杂繁琐,两者之间,大多数用户都会选择SSD。
SSD有两种形式:基于RAM的系统和基于闪存存储器的系统。闪存存储器正在改变SSD。尽管闪存的性能不如RAM系统,但是相比传统的磁盘阵列–即使是高性能阵列,速度明显加快,从而成为某些数据中心的完美解决方案。
基于RAM的系统价格比闪存要贵。例如,目前闪存SSD的容量购买点通常为2TB。2TB的闪存存储器通常需要19万美元。基于RAM的 SSD容量通常为128GB,需要7万美元。如果购入2TB的RAM SSD,费用将超过100万美元。
目前,闪存SSD的销售量超过RAM SSD(从总容量上讲),不过RAM SSD系统的销售量也在增长。如果你需要RAM SSD,可以调整额外的开支。
与闪存SSD系统不同的是,RAM系统对写入的数据量没什么要求。闪存系统能处理的写入数据量有一个理论限制值。另外,闪存系统无法提供和 RAM系统相同的写操作性能。
因此,如果文件非常活跃,I/O写操作频繁,具有恢复日志和撤销片段,那么RAM系统就是不错的选择。如果在数据库环境中,恢复日志和撤销片段影响了当前磁盘的I/O性能,此时利用RAM就能迅速提高I/O性能,实现投资回报。
怎么创建Tier 0
创建Tier 0的第一步是明确需要存储哪些数据。采用RAM系统后,这些应用程序的I/O读操作事务性能较高。在这些应用程序中,某些特定文件处于"炽热"状态,也就是说,这些文件非常活跃,需要的I/O高于磁盘子系统所能提供的I/O。
我们回头看看前面的情况,即数据库的恢复日志和撤销片段安置在RAM磁盘中。有三种可行的解决方案:升级为更快(更贵)的磁盘阵列;在阵列中更多的硬盘间传播数据(只是你更容易遭受双硬盘故障的情况);购买SSD。这些应用程序的I/O读操作性能很高,与闪存存储器相比,非常适合采用RAM系统。安装RAM SSD的另外一个优势为延迟期很低。虽然许多应用程序同时具备低延迟、高IOPS的特性,但是相对而言,延迟期比IOPS的顶峰绝对数量更加重要。
在闪存系统中工作良好的数据往往来自读操作密集型的应用程序,至少是读操作比较频繁的程序。闪存系统如果具有足够的RAM缓存,就能支持大量的读操作,也就意味着其适用的应用程序对磁盘I/O要求较高,但是无法判断个人文件,如数据仓库等。
相比RAM系统,闪存系统容量大、能耗低。由于闪存SSD可用容量较大,因此能将整个数据库系统迁移到SSD中。
保护Tier 0
如何保护这种新型的Tier 0?毕竟,Tier 0是一种存储器。通常,闪存在模块中捆绑出售,而模块分布在阵列组里,其中一个模块作为奇偶校验硬盘。这样就能有效构建RAID 3保护策略。同样,与USB驱动器中的存储器类似,闪存硬盘维护存储数据不需要消耗能源。
RAM硬盘时刻需要能源,数据保护成为最重要的问题。一些RAM系统采用电池备份方式,具有内置硬盘,万一系统由于人为原因或缺电原因被关闭,也能存储数据。在没电的时候,RAM硬盘电池能够供系统运行,同时将数据复制到硬盘中,以防电池耗尽了,电力还没有恢复。
基于RAM的SSD还采用纠错存储器(ECC)技术和IBM的Chipkill 技术。(惠普公司也提供相似技术,称为Chipspare)。这些技术都提供先进的纠错和改错技术,保护计算机的存储系统免受存储晶片故障的影响,以及存储片端口多位故障的影响。
例如,Chipkill技术通过在多个存储晶片中分散ECC位数,实现纠错功能;这样,一片存储晶片发生故障,只会影响一位ECC。因此,即使一片晶片完全发生故障,系统也能重建存储内容。
Chipkill技术结合了动态位迁移技术,因此如果晶片发生故障(或超过位错误的临界值),闲置的存储晶片就可以替代故障晶片。这种理念与 RAID的理念相似,能够保护磁盘故障,只不过现在是将理念运用到单个的存储器晶片中。20世纪90年代,IBM公司开发Chipkill技术时,主要针对主框架和高端Unix系统,但是Chipkill技术现在主要在SSD中使用。IBM公司对Chipkill技术影响的研究表明,Chipkill能使存储器系统中数据丢失的概率降低两个数量级。
基于RAM的系统:是绿色环保吗?
基于RAM的系统绿色环保吗?如果比较每TB容量消耗的电量,那答案就是否定的,但现实中并非这么比较。一直以来,如果应用程序的磁盘I/O 性能不佳,都是通过创建LUN,部署高性能硬盘,以提高性能。阵列中硬盘越多,磁盘的I/O速度越快。这些额外的硬盘需要更多能耗,尤其是采用非虚拟化存储技术时,非虚拟化环境中的大量磁盘容量得不到利用。为了提高速度,用户不得不牺牲容量利用率。
SSD无需额外的硬盘,而是在硬盘之外提高速度。因而需要的硬盘数量较少,能源消耗速率也就较低。