伴随着交易系统,银行还有大量的内部经营管理及分析类系统。管理分析类系统有实时分析系统及非实时分析系统,即我们常说的T+0系统和T+1系统。这些系统的数据类型和数据处理方式和交易系统有较大不同,这些系统对存储的要求也有所不同。
一、金融行业应用特性
在金融行业的IT系统中,存储设备有着举足轻重的位置。我们知道,金融企业客户的存款数据、贷款数据、理财数据、交易数据等等全部存在IT系统中,全部都是数字化、电子化的。这些数据的安全直接影响客户和企业的资金安全,这些数据的存取效率直接影响客户体验,它们都存放在存储设备中,因此存储设备的选择经常被大家关注。本文重点讲讲金融企业如何选择存储。
以银行为例,我们来审视一下金融行业的应用都有哪些特点。从业务类型来看,银行业务系统有交易类系统、经营管理类系统、AI、BI等分析类系统、办公类系统等。从数据的全生命周期来看,分为在线数据和非在线数据,非在线数据又有备份数据和归档数据。银行应用的多样性,决定了数据的多样性,从而也决定了对存储设备选择的多样性。
交易类系统是银行最重要的系统,它直接面向客户提供金融业务服务。银行的交易系统并非是单个系统,而是由许许多多的系统组成,其中最重要的系统是被称为核心系统的账务处理系统,围绕着核心系统,还有众多的产品、渠道类系统,它们共同构成一套复杂的分布式业务处理系统。每套系统都有相对独立的功能,客户完成任何一笔金融业务,都会涉及到多套系统,其中任何一套系统的故障或缓慢都会影响客户的业务体验。因此,交易链路上的每套系统都需要很高的安全性、稳定性和并发交易处理能力。近年来,随着移动互联网、Fintech对金融行业的影响,银行的应用系统也在不断互联网化,秒杀、交易银行等新的应用形态层出不穷,交易系统必须面对突发和不确定性的高并发,这对银行系统的稳定性和性能要求提出了更高的要求。
伴随着交易系统,银行还有大量的内部经营管理及分析类系统。管理分析类系统有实时分析系统及非实时分析系统,即我们常说的T+0系统和T+1系统。这些系统的数据类型和数据处理方式和交易系统有较大不同,这些系统对存储的要求也有所不同。分析类系统不会面临突发和不确定性的并发量,也不需要快速的单笔交易处理时间;但是分析类系统需要在一定的时间内完成海量数据的处理和计算,需要具备非常强的批量处理能力和并行处理能力,这就要求对应的存储系统有较大的吞吐能力。
二、金融行业对存储的需求
根据上述金融行业应用的特性,结合应用的具体技术形态,对存储的需求基本有这几类:
1、虚拟机应用的IO特性及对存储的需求
随着云计算、虚拟化技术的推广使用,金融行业不管是交易类系统还是分析类系统,大量应用节点,包括web服务器、业务处理的App服务器、通讯服务器,及部分体量较小的数据库基本都运行在虚拟机上。为了保证虚拟机的高可用,往往会构建虚拟化集群,并使用共享存储。虚拟机存储的数据和数据访问的特点是:数据存储量大,通常一个虚拟机需要的存储空间在几十GB到数百GB不等;数据的重复量大,可压缩的空间大;对IO性能的要求中等,对于应用节点,IO时延在10ms(毫秒)左右基本可满足要求,如果虚拟机上运行数据库,则IO时延通常要求小于5ms。金融行业虚拟机通常通过共享存储实现虚拟化的高可用,因此,对存储的稳定性有较高的要求。
2、容器应用的IO特性及对存储的需求
容器上运行的主要是无状态应用和轻量数据库。容器应用对存储的需求,基本与虚拟机的需求差不多。由于一些应用没法完全做到无状态,因此,容器应用往往需要共享存储,通常通过NAS来提供共享能力。
3、数据库应用的IO特性及对存储的需求
数据库系统一直处于金融业务系统的核心位置,几乎所有的应用系统都离不开数据库,数据库系统的性能问题常常是应用系统性能问题的关键。存储系统又在数据库中起着决定性作用。数据库按其处理业务的类型可分为OLTP(On-line Transaction Processing)、OLAP(On-Line Analytical Processing)和混合型。
OLTP主要处理的是前面所述的交易类系统,这类数据库系统对存储的IO时延极为敏感,并且都是随机读写,通常对存储的IO时延要求在2ms以内,应用系统的并发量越大,对存储性能的要求越高。高IOPS(Input/Output Operations Per Second)、低时延是OLTP数据库对存储的共性要求。近年来像Redis等数据库缓存的使用,隔离了应用对数据库的直接高并发访问,从某种程度上降低了数据库对存储的要求。
OLAP主要处理的是前面所述的分析类的应用,这类数据库对存储的吞吐量要求高、IOPS要求高,对IO时延也要求高,通常对存储的IO时延要求在数ms之内,由于OLAP可以容忍数据库的单个SQL响应时间略长,但对应用任务整体处理时间还是有一定要求,因此IO时延也不能太长。
还有一类是OLTP与OLAP混合的数据库,对于混合型数据库,对存储的要求是高的,既要求IO时延短,又要求存储数据的吞吐量大。但是在高并发的应用系统设计中,通常会将应用拆分,尽量避免使用此类混合型数据库。
4、文件共享类应用的IO特性及对存储的需求
有些应用系统的服务器节点之间,需要共享数据库,常见的是文件共享。这类系统对存储的要求是IO时延在几个ms左右,并且随着文件数量的增加,时延不能增加。
5、非结构化数据和归档数据的IO特性及对存储的需求
非计划数据和归档数据的特点是文件数量大,文件数量通常在数亿及以上;对存储的时延要求不高,要求在几十ms左右,但是要求存储在容量增加时,性能不能降低。
6、融合结构
上面讲的是存储和计算分离的情况。计算与存储的融合结构,比如超融合结构,也是较常见的一种方式。物理机(裸金属服务器)使用本地磁盘也是常见的一种融合结构。这里均不做详细讨论。
7、运维智能化对存储的需求
基于多设备、甚至是多设备多厂家管理的复杂情形下,金融企业数据中心需要有新型的管理方案,能够按需分配存储资源服务,自动化数据运维管理,支持开放架构、多云链接和融合,支持未来金融业务走向全场景智能、多云融合。
8、容灾要求
在移动互联网已普及、用户对业务实时性需求越来越高的今天,保障业务连续性是重中之重,做好完备的灾备方案规划和实施,实现业务不中断、数据不丢失、操作无感知是每个企业都应该思考的。在全闪数据中心中,完整的数据保护的过程应该是一个数据加热的过程,热数据应该全部做容灾保障7x24H的业务连续;对温数据来说则需要做热备份,这样当故障发生时,备份数据就能够快速转变成我们需要的生产数据;对于冷数据或是归档数据,当它们转变为温归档数据则能够快速地被调用发挥价值。所以我们说,“热数据全容灾,温数据热备份,冷数据温归档”,这样整个数据的访问效率也会得到大幅度提升。
三、金融行业存储曾经的选择
1、分布式与集中式之争
集中式存储是金融业常见的存储设备,不管是SAN(Storage Area Network)存储还是NAS(Network Attached Storage)存储,在金融行业都已使用了二十年。很多银行构建了庞大的SAN存储网络或NAS网络,并且运行稳定。近些年随着云计算技术的发展,互联网企业开始大规模使用分布式存储,分布式存储给银行传统的集中存储带来了冲击。很多金融企业面临分布式和集中式存储的选择难题。
对于这个问题,其实不用纠结,不管是集中存储还是分布式存储都有其各自的特点和使用范畴。
集中存储功能完善,稳定性好,运维简单,监控、运维体系健全,技术成熟,可选择的范围也很广,从中低端到高端产品齐全。不足是:单体容量有限,可扩展性较差,一次性投入大。
分布式存储,通常使用多台PC服务器,构造一个软件定义的存储,其特点是1)IO吞吐量大;2)扩容方便;3)可以组成大规模的存储池;4)采购成本可分批次、分阶段投入,设备可以分批次折旧。但是由于分布式存储的成熟度不足,以及分布式存储本身网络连接的条件不如集中式,导致稳定的性能表现不足,运维相对复杂,配套的监控、运维体系不足。
在选择上,如果系统对延时要求高,对性能的稳定性要求高,那么好的选择是集中式存储。如果系统对IO吞吐量的要求高,而对性能要求没那么高,分布式存储是较高的选择。对于大容量的对象存储的选择,基本上分布式存储是不二的选择。在云计算环境、虚拟化平台所用的存储,如果虚拟机本身没有承载高IO性能要求的应用(如数据库应用),那么分布式存储是较好的选择,服务器的扩容和存储的扩容可以根据实际存储的用量同步进行。个人认为,未来随着分布式技术的发展,伴随着云计算技术的发展,分布式存储也将逐步在一段时间内成为主流。
2、FC与IP之争
FC(Fiber Channel)一度因其稳定和低延迟的特性在金融行业占有绝对优势。近年来随着10G网络和25G网络的成熟,以及分布式存储技术的逐渐成熟,IP存储网络得到快速发展,很多人认为基于IP的存储网络将替代FC网络。但也有很多人认为IP网络无法替代FC网络。个人观点是,FC网络和IP网络在很长一段时期内将共存,各有其优势,从金融行业的选择上,FC主要还是用于对稳定性和IO时延都要求很高的系统;随着云计算技术的广泛使用,以及RDMA(Remote Direct Memory Access)技术与融合以太网络技术的结合,IP网络将迎来越来越多的机会,同时,IP网络由于其灵活性,将大量使用在金融企业私有云环境。后续的技术发展,IP存储网络的份额将逐渐扩大。
3、壕还是理性
金融行业的IT基础设施往往被定义为“不差钱”,其实这只是外界部分人的偏见。实际的产品选择上,金融企业在考虑风险的前提下,始终在考虑一个指标,那就是性价比。所以一个成熟的金融企业对存储的选择是非常理性的。
例如,为什么近几年全闪存储在金融行业得到广泛使用。我们都知道全闪存储的单位容量的价格比较高,但是综合考虑IO性能、重删压缩功能、机房空间、运维成本、故障率等因素,全闪存储的性价比具有更大的优势。根据某厂商资料:相同容量下,闪存硬盘介质本身能耗是传统机械硬盘的1/10,而全闪存带来机柜空间的缩减,能使数据中心空调/风冷/能源等的消耗都大幅降低,带来整体TCO的降低。数据中心IT设备的能耗占到一半以上,而存储又占到IT设备的三分之一以上。假如以一个PUE为2的数据中心来算的话,如果说整个存储系统节省一度电,那么整个数据中心就能节省两度电。
另一方面,金融行业根据应用的IO特性不同,选择的存储档次也不同,通常是中低端存储和高端存储搭配使用,集中存储和分布式存储的混合使用,最终的结果是通过架构的设计或管理要求,既要保证系统的高可用性和性能要求,又要用最低的成本采购到最适合的存储设备。
四、趋势与选择
存储的发展和几个基础的技术相关,1、存储介质由传统磁介质转向闪存,机械盘转向固态盘(SSD);2、网络带宽的提升;3、存储通信协议的发展。下面我们来详细说说。
首先,磁介质由机械盘转向SSD,给存储带来了巨大的变化。我们知道一台计算机在进行运算时,读取数据最快的是CPU上的缓存,其次是内存,最慢的是外部存储。在传统磁介质时代,CPU大量的时间都消耗在等待IO,随着SSD的快速发展,数据访问SSD比磁盘快100倍左右,吞吐量大100倍,单盘的IOPS大1000倍以上,这些变化,促使了计算机系统处理能力的大幅提升。
其次,网络带宽的提升,为存储IP网络带来了生机,也为分布式技术的发展带来了活力。目前10Gb网络已广泛使用,25Gb网络也在很多数据中心投入使用,未来40Gb、100Gb网络也将逐步广泛使用。高速网络带宽的大受益者就是分布式计算,由于有了高速带宽,节点间的数据交互变得相对容易。
再次,存储通信协议的发展,把存储介质变化的效率和网络带宽提升的作用充分发挥出来了。在磁介质时代,数据传输通常使用SCSI(Small Computer System Interface)或SATA(Serial Advanced Technology Attachment)协议,这些协议在处理磁盘IO时有其合理性,但是当SSD盘出现后,SCSI或SATA协议,SSD盘的性能和吞吐能力无法充分发挥。此时NVMe协议应运而生。NVMe全称是NonVolatile Memory Express(非易失性内存标准),是一种新的存储通信协议。NVMe利用了计算机或服务器中的PCIe高速总线,将其直接连接到计算机,从而减少了CPU的开销,简化了操作,降低了延迟,提高了IOPS和吞吐量。在NVMe协议中,其大队列数量为65535,每个队列的深度可以高达65535。而SCSI协议只有1个队列,每个队列的深度只有254。这对于降低时延,提高服务器处理并发请求的能力至关重要。另外,前面讲的RDMA协议,在处理主机通信时,IO处理下沉到网卡,减少对CPU的消耗,大幅降低了IO时延。
由于SSD的大量使用、网络带宽的大幅提升以及NVMe、RDMA协议的成熟,存储发展出现了两种新的趋势。
趋势一是服务器本地盘在大量场景下替代了存储。这需要满足3个基本条件:一、应用无需共享存储,通过应用层面可保障高可用;二、本地盘的性能可满足应用要求;三、本地盘的存储容量可满足应用要求。在服务器内部,NVMe协议已成熟,服务器使用本地SSD及NVMe协议可大幅提升性能,因此在性能上可满足大部分的应用要求;SSD的单盘容量都在数TB,所以单台服务器的存储容量可配置数十TB,可满足大部分应用要求。因此只要应用本身的机制可保障高可用,本地存储解决方案将成为最简洁的解决方案。
趋势二是端到端NVMe协议的使用,真正实现计算资源对存储的高性能要求。不管是SAN网络还是IP网络,传输环节对NVMe协议的支持是趋势,NVMe-oF(NVMe over Fabric)目前有两类解决方案,一类是基于传统FC方式,另一类是基于RoCE(RDMA over Converged Ethernet),这两类解决方案都有实际案例,性价比和稳定性决定了未来哪一种方案将占据主流。端到端的NVMe协议的使用,已成为高端全闪存储的标配,既能够释放闪存介质的性能潜力,也能实现建设更标准通用的数据中心网络。随着成本的进一步下降,NVMe+SSD的组合也必将在中低端存储中使用。
对金融企业来说,面临眼花缭乱的存储产品和解决方案,未来如何选择?这里笔者给出几点建议:
第一,存储的高安全性是第一位的。也就是说,数据不能丢失,这是存储设备选择的前提。
第二,针对不同应用类型进行存储选择。对于OLTP数据库应用,本地NVMe SSD盘或高端NVMe全闪存储是合适的选择,而OLAP数据库应用,由于容量的原因更需要端到端的NVMe全闪存储;对于云环境下虚拟化和基于容器的应用,分布式块存储或带有重删压缩功能的中高端NVMe全闪存储有更加明显的性价比优势;对于非结构化数据和归档数据的对象存储的选择,可以选择大容量的SATA机械盘存储。
第三,存储方式的选择。分布式存储和集中式存储在一段时间内将并存,金融企业可选择在私有云环境下使用分布式存储,但分布式存储一定要和云平台充分集成;如果没有海量数据需求,建议尽量采用集中存储,减少运维复杂度。对象存储可采用分布式存储。
第四,存储网络的选择。FC网络聚焦追求极端稳定与低延时的系统,新的数据中心没有必要构建大型的SAN网络。随着云计算技术在企业自有数据中心的广泛使用,IP存储网络的使用将越来越广泛,尤其是云原生应用、微服务应用的推广后,对弹性和自动化要求越来越高,IP存储网络的灵活性将发挥更加明显的优势。
面对纷繁复杂的存储形态和存储产品,金融企业一定要立足企业自身应用架构、技术架构的现状,结合未来IT基础设施发展的方向,综合考虑和选择。
五、总结
金融行业的应用特性,决定了其对存储的要求,存储设备和解决方案的选择也需遵从这些要求。存储技术的发展方向是在降低单位存储容量的价格的同时,追求更高的并发、更高的吞吐量以及更低的IO响应时延。随着SSD的成本快速下降,全闪存储已成为金融行业首选的存储,端到端NVMe全闪存储在高端存储上已大量使用,后续这些技术也将应用到中端存储上,相信金融行业的全闪存数据中心建设会越来越被同行接受。基于FC和RoCE的NVMe存储传输网络将在一定时期内并存,性价比和稳定性决定哪类方案将最终胜出。面对眼花缭乱的存储技术和产品,金融IT从业人员需要结合自身情况和对技术特性的深入了解,才能做出合适的选择。