《云环境下交易类数据存储架构设计.docx》由会员分享,可在线阅读,更多相关《云环境下交易类数据存储架构设计.docx(11页珍藏版)》请在第一文库网上搜索。
1、云环境下交易类数据存储架构设计伴随着金融企业数字化转型,联机交易也已走在上云路上。但是此类业务在事务性、稳定性、高可用等方面的高要求必然导致上云困惑,需以技术精准匹配和管理云化为原则来重新分析存储架构的设计。云环境下,交易类数据如何设计存储架构?社区专家主张议题主编赵海某金融系统高级主管:本议题由某金融科技公司资深集成工程师孙伟光、技术专家洪烽分别针对议题下的相关关键点进行主张,两位专家的观点在经过我本人、江苏农信存储工程师康建国、某股份制银行系统架构师老谷的复议后,最终形成一定的共识供同行参考。交易类数据产生于业务运营过程中的交易记录,数据会根据实际业务场景,经历不同的生命周期;在云环境下对
2、交易类数据设计存储架构有一定的方法论可以参考。以业务和应用需求为导向的存储架构规划,通过科学合理的存储架构设计来满足未来多样复杂的应用需求。一、交易类数据特征与IO特点交易数据一般指的是各个行业在业务运营过程中内部或外部事件的交易记录,多以事务数据(Transactiona1Data)为主,例如:销售订单、转账交易流水、通话记录等数据。有的业务同时还会产生一部分如影像票据之类的非结构化数据,这类非结构化数据来自业务流程中产生的扫描票据、保单等业务凭证,随着业务的发展,其数据量迅速增长。这类非结构化数据具有和交易数据(结构化数据)所不同的文件小、数量大、空间占用多等特点。结构化数据存储架构一般采
3、用共享集群架构,全共享式数据集中的紧耦合集群架构是一种既有Sca1eOUt横向扩展能力也有SCa1eUP纵向扩展能力的系统架构。既支持紧耦合的联机交易处理,也能保证实时信息的真实可靠性,同时无需通过应用层跨系统的措施来保证数据和交易的一致性,而且在应用时不需要考虑跨数据源的完整性、恢复性等。因此对于应用的开发人员来说,节省了许多集成层面和管理层面的烦恼。如表1所示。表1:交易类数据架构对比二、交易类数据生命周期特点日常生活中我们每个人都是数据的生产者,每天通过参与各种业务产生海量的交易业务数据,但并非所有的数据都会完整地经历整个生命周期,数据产生、传输、存储、处理、删除所经历的生命周期是由实际
4、的业务场景所决定的。图1:交易类数据生命周期图如图1所示,交易产生的数据随着业务流程进入到云平台存储池的不同存储区域(例如高速闪存存储池、分布式存储池、对象存储池等),随后根据业务和管理需求,部分数据又被重新利用进入到其他存储区域,有的用来备份归档、有的用来参与大数据分析和报表、有的则用作开发测试数据,最终直至数据被删除消失。生产数据通常被定义为三种类型: 在线数据:业务系统需要随时调用、频繁读写的热点数据。 近线数据:业务系统访问频率较低,但要求具备能够随时提供访问能力的数据。 离线数据:业务系统几乎不访问,法规要求长期保存的数据。为实现存储数据生命周期管理,分级存储通常会分为在线存储、近线
5、存储和离线存储3种模式,并从物理承载方式上分为以下三个级别:1)在线存储:一般采用高端SAN架构闪存磁盘系统(高IOPS,主要是SSD固态硬盘或高速SAS盘),承载需要频繁读取、快速访问的数据及关键应用的核心生产业务数据。2)近线存储:一般采用中低速大容量磁盘(SATA/低速SAS盘),承载访问频度较低但仍会被随机读写的数据。近线存储模式的要求是寻址迅速、传输率高,因此其对读写性能要求较低,但由于数据体量一般较大,其对容量要求较3)离线存储:一般选用物理磁带,承载近线存储环境中达到一定保存时限需要进行归档的长期历史数据,以防范可能发生的数据灾难。三、存储架构选型依据和方法论云环境下来自于IT基
6、础架构和业务方面诉求已经是当下构建存储架构以及存储选型的重要依据。当前,IT技术层面存在一些典型且突出的问题:例如,存储设备繁多孤立、资源利用率不高、多厂商存储设备共存、日常运维管理难度大、存储日常维护管理复杂等,管理存储往往需要通过多个控制台去管理存储,经常需要对数据或者存储进行迁移扩容。由于各个业务系统使用的都是单一存储,因此存储性能和容量也很难做出整体可靠有效的评估。而在云环境下,业务的诉求主要体现在以下几个方面:一是存储系统难以支撑业务快速变化的要求,应对存储容量的快速增长;二是存储系统需要灵活的资源调配和资源扩展;三是存储性能需要进一步优化,以缩短业务交易处理时间;四是业务系统需要对
7、数据进行再利用,用多重保护技术来保证业务数据可回溯性。根据当前面临的问题和业务诉求,笔者整理了一些通用的存储选型方法论,希望给同行带来参考:图2:存储选型方法论如图2所示的存储选型方法论可以作为云平台存储架构选型上的参考依据,而对于交易数据存储,在云平台存储架构选型中,到底是选择分布式存储还是SAN/NAS存储,要依据存储数据服务的种类来做出判断,需要考虑以下几个问题:1)是块存储还是文件存储?2)对性能要求比较高的应用如O1TP,以及对存储空间有着高要求的互联网应用应该如何从应用角度去评估性能和容量?3)通过何种技术手段来实现99.999%的高可用性,是可靠的硬件还是有效的系统管理手段?4)
8、如何在保障交易数据数据安全情况下实现在云环境上数据安全性、数据加密等等四、构建云环境下交易类数据设计最佳实践云数据中心建设目标要满足业务连续性总体要求,结构化数据一般采用高端SAN全闪存储架构。对于非结构化数据的存储架构,一般采用自建或者商业化分布式存储或NAS存储。云计算存储资源池在架构设计上要充分考虑结构化数据(数据库)和非结构化数据(影像文件)的存储需求。在分布式存储的架构下,如果业务需求ACID,则需要从应用层面满足。应用的复杂度或带来业务处理流程的复杂度。分级存储是优化存储资源利用率和性价比的重要技术手段。分级存储策略是提高存储资源利用率以达到性价比最大化、集约化管理的有效手段。根据
9、数据的实时性、访问频度、存储时长等因素,从管理策略、存储介质性能两个角度出发,实现多层次、跨越不同数据生命周期的数据存储及管理,通过将访问频度较低的数据自动迁移至存储层次中较低配置的层次,释放出较高成本的高速存储空间给更频繁访问的数据,从而获得更高的性价比。分级存储策略的实现除考虑选配不同类别(SSD/SAS/SATA)磁盘的选取,还分为设备级分级存储部署及磁盘级分级存储部署。图3:不同业务应用场景对存储架构需求特征分析按照应用需求、数据类型原则分成若干个资源池,分别为高端SAN存储资源池、NAS存储资源池、分布式存储资源池及对象存储池。根据应用对IO的负载需求,可以将应用分成不同的类型。轻量
10、级、可分布式的应用可整体部署在分布式存储池中,重量级、紧耦合的应用需考虑整体部署在高端SAN存储池中。对于大部分应用来说,可以将应用进行层次拆解,从不同层次来分析应用的入池需求。图4:云平台存储资源池架构图云平台存储资源池的架构如图4所示: 高端SAN闪存池存储主要用来存放所有生产业务系统结构化数据 中端存储池主要用来X86服务器虚拟化的云平台共享数据 分布式存储用来存储所有业务系统的非结构化性数据 NAS或者对象存储池用来存放相关的备份归档数据以业务和应用需求为导向的存储架构规划,需考虑的要点是存储需要有很好的兼容性、高性能、数据高可用、功能丰富、管理方便等的特点。考虑到后端存储架构整体IO
11、性能、稳定性、组网复杂度、TCO等因素,在架构设计中O1TP应用建议选取SAN存储技术,NAS架构作为SAN的有益补充,可以实现面向文件系统级别的数据共享及传输,采用NFS/CIFS数据传输协议,适用于共享文件访问及大量并发访问非结构化数据(影像、文档等)的相关系统(保单系统、OA档案系统等),对于互联网平台大量海量非结构数据建议采用对象存储架构,通过科学合理的应用存储架构来满足未来多样复杂的实际应用需求。洪炸技术专家:在联机交易系统中,云平台存储的块存储、对象存储、文件存储都可以对应不同的数据类型与应用场景实现很好的覆盖,并且充分满足了高性能、高可用性、易于管理等多方位的诉求,也能够提供iS
12、CSI、PoSIX、S3与SWift接口,来满足应用开发过程中的不同需求。同时云平台存储也能很好满足冷热数据的不同读写与成本的需求,整体降低企业的投入成本。一、背景近几年随着基础软件的技术发展,应用的载体逐步从物理机发展到虚拟化再到云化、容器化。而各个厂商的大力推动,也让公有云、私有云、混合云等多种形态的云架构逐步向传统行业落地,各个行业也都涌现了众多先行者。在实践过程中,大量联机交易系统已经走在上云的路上,但联机交易系统有着实时、高效的诉求,尤其在存储层面,对一致性、高可用有着高要求,因此在上云过程中也出现了一定的困难。联机交易类系统是为企业处理实时交易,例如订单、记账等的系统,期间主要会产
13、生结构化数据、中间结果文件以及本地日志文件。在传统的架构下,通常是通过本地盘,SAN存储、NAS存储等不同类型的存储设备解决联机交易系统的存储需求。但在云平台上的架构,需要进行架构的重新设计,改为通过云服务的方式满足存储需求。二、云平台存储适用场景云上的存储服务可以简单划分为块存储、对象存储、文件存储三大类,其中块存储中又包含了云盘和本地盘,文件存储又分为NAS和并行文件系统。图5:联机交易系统云服务架构图块存储在联机交易系统中(如图5),应该可以覆盖最多的场景。对于高可用级别比较高的联机交易系统来说,在传统HA架构中其实本地盘应用的较少,通常是将日志文件、程序代码、数据库都存放在SAN存储中
14、,并通过HA软件实现存储的自动挂载。在云平台存储架构中,可以通过云盘存储应用日志文件和程序代码等对时延相对不太敏感的文件,并通过云盘底层三副本写入保证存储的高可用。需要存储在数据库中的结构化数据,也可以通过RDS挂载云盘的方式进行存储,但对响应时间要求较高的应用系统,还是建议采用本地盘存储,但需要依赖数据库本身的高可用能力(例如数据库多副本写入)。不论云盘还是本地盘,在使用上与传统架构中SAN存储挂载磁盘的方式是一致的,同时通过云底层的基础能力,实现多副本高可用以及快照、Web管理,动态伸缩,备份恢复等更加方便的运维模式,从而整体降低运营成本。文件存储的使用场景主要是存放一些节点间共享文件、数
15、据处理过程中产生的中间结果文件或者与外系统交互共享的文件,对于时延要求较高的场景推荐使用NAS,对于更注重吞吐量的场景,建议采用并行文件系统方式。对于备份文件,可以通过存储到对象存储中代替传统架构下的虚拟带库的使用场景。此外,对象存储在某些厂商的解决方案中,也可以与云原生数据库进行有效结合,来解决计算存储分离以及读写扩展的问题。三、总结综合来看,在联机交易系统中,云环境下不同的存储服务对于所有使用场景都可以做到很好的覆盖,充分满足了高性能、高可用性、易于管理等多方位的诉求,也能够提供iSCSI、PoSIX、S3与SWift接口,来满足应用开发过程中的不同需求。同时块存储、文件存储、对象存储也能很好满足冷热数据的不同读写与成本的需求,整体降低企业的投入成本。结束语综上所述,云环境下不同的存储服务对于金融联机业务还是可以做到很好的覆盖,充分满足了高性能、高可用性、易于管理等多方位的诉求,整体降低企业的投入成本。-全文完一