商业银行信息科技系统架构转型思考
2022-02-28刘宜政
刘宜政
当前信息科技发展日新月异,数字技术已广泛应用于商业银行经营各领域,几乎所有业务服务和日常运营等都依赖于信息科技系统来开展,这也促使商业银行对信息科技系统的安全性、准确性、不可丢失性等提出更高的要求。为适应新时期发展变化,探索提升系统性能并有效把控信息科技风险就显得必要且十分迫切。
新形势下银行信息科技系统需转型升级
长期以来,商业银行的发展与信息科技系统建设密不可分,信息科技系统对商业银行的组织架构、客户服务模式、业务运营模式等均发挥巨大作用,支撑着商业银行的智能化、综合化、体系化发展。面对当前信息科技快速更新迭代和客户多元化需求发展变化,商业银行亟须打造适应新形势的信息科技系统架构。
新形势对银行信息科技系统架构提出新要求。从国家信息安全层面看,当前银行业基础架构长期为个别外国信息技术公司(以“IOE”为主)的垄断,国家明确鼓励银行业推进信息化创新。从银行业监管层面看,央行明确提出要稳妥推进银行信息系统建设向数据分布存储、多节点并行运行、动态负载均衡的分布式架构转型,逐步减少或摆脱对单一技术产品的依赖。从银行自身经营发展层面看,为保障民生和金融秩序稳定以及银行自身声誉不受损害,需要全年7×24小时安全稳定运营服务,避免出现系统故障;银行利润增长受利率市场化及互联网金融等冲击影响,急需系统软硬件购置和运维成本的自主可控;随着物联网、大数据、线上购物节等技术和消费场景的涌现,银行业务交易量呈指数增加,对银行信息科技系统处理高并发、海量交易和数据的能力也提出了更高的要求。
当前银行集中式系统架构面临的问题。我国银行业从20世纪70年代开始尝试运用电子计算机处理业务,到计算机联网布局,再到分散化系统运营,大部分商业银行采用集中式系统架构,但随着新形势的不断发展变化,传统集中式架构难以满足未来的发展需要。在风险控制方面,由于集中式架构采用单体应用设计,软件开发和运营管理的最小单元是应用,管理颗粒度粗,如果系统软件设计存在缺陷或应
用逻辑极端异常,会导致业务连续性风险事件发生,对银行本身的业务产生极大影响,甚至直接危及其他银行乃至整个金融系统的稳定。在成本控制方面,由于集中式系统技术体系封闭,软硬件采购及运维等高度依赖于国外厂商且费用高昂,尤其是核心系统使用的传统商业套件版权费用昂贵,一定程度上限制了业务的发展。在业务处理能力方面,随着瞬时爆发的海量交易以及更广泛的业务场景,单纯依靠传统集中式架构下有限数量的服务器已难以为继,传统集中式架构下的渠道、支付、数据、运维、安全等方面也已暴露出诸多问题,需要通过系统架构转型来逐步摆脱当前束缚。
分布式系统架构更适应当前发展形势。分布式系统架构是由多台计算机通过互连通信网络连接组成的单一逻辑系统,其架构特性更加符合当前新发展形势。一是符合我国银行业安全可控的現实需要。以高可用、开源为特征的分布式系统架构技术体系,有利于我国信息产业和银行业信息科技自主可控,从而改变我国银行业长期以来基础软硬件等核心技术完全依赖国外厂商的状况,符合国家对银行业信息科技安全防控的要求。二是顺应新兴技术与传统金融相融合的发展趋势。近年来,金融科技融合范围更广、方式更加多元、科技逐步渗透到银行各业务领域,金融科技的加速发展推动传统金融与大数据、云计算、分布式计算、存储和应用技术等一系列新技术融合发展,分布式新兴技术在商业银行的应用是金融科技的重要内容。三是满足银行自身生存发展的迫切需要。开源、开放的分布式技术成本更低、用户体验更好、开发和测试方法更为敏捷,不仅能实现海量数据场景下的高效性、高扩展性需求,还可满足银行交易型数据库强一致性、高可用性等要求。
银行分布式系统架构的主要优势与不足
数字经济时代,海量交易数据与服务请求对银行信息科技系统可扩展性、可用性、安全性、高并发性提出更高要求,分布式系统架构可较好地实现上述要求,成为系统架构转型发展的重要方向。分布式系统架构核心理念是去中心化,主要通过纵向拆分与横向扩展,使每个节点独立运行,充分利用各节点的计算能力,彼此协调、共同完成一项或多项业务功能的技术架构。其主要优势体现在以下几点:一是充分保障银行信息科技系统的安全稳定运行。通过分布式系统架构集群化、多节点与多副本的运用,有效解决了单个节点可靠性不高的问题,实现单节点即使失效也不会影响银行系统整体运行,充分提升保障了系统整体的高可用性和安全稳定性。二是满足银行突发性、大规模并发的业务需求。分布式架构的优势之一是具有优越的弹性扩展能力,银行信息技术资源可按需灵活动态扩展,在业务高峰期可采取“错峰调剂”的方式,快速调用资源满足计算处理能力的要求,较大幅度提升信息技术资源使用效率。三是实现银行内部科技自主可控与特色化经营。依托开放标准和开源技术,可更换通用性、低成本的软硬件设备,结合银行自身经营业务特点与发展战略目标,着重调整架构配置并合理分配信息科技资源,将功能模块按需采用横切、纵切等方式灵活划分组件与服务,推动银行差异化、特色化经营。
商业银行在进行分布式架构探索实践过程中也存在一些问题和挑战。一是银行在应用分布式的理念意识方面偏于谨慎。新形势下,商业银行面临的环境更加复杂,尤其是银行所提供的业务已成为关系国计民生的重要基础。从某种程度上说,银行在向分布式系统架构转型方面没有试错机会,必须在安全稳定、风险可控的前提下转型升级。因此,当前银行在分布式系统架构的应用上态度偏谨慎。二是银行对分布式系统架构规划设计和实施策略把控力有待加强。由于缺少“开箱即用”、体系化的解决方案,在分布式系统很多领域,银行仍需依托开源产品自行定制开发,需结合系统现有布局、改造成本、业务系统升级规划等综合因素确定适合的转型策略和实施计划,对架构和技术的把控力将直接影响分布式系统架构转型能否成功。三是对风险的防范能力及底层技术的掌握水平需要提升。开源技术往往缺少具备强大技术实力的商业化软件供应商的背书与支持,银行在风险防范能力和应急处理能力等方面需要经受考验。分布式架构对于银行系统架构设计、研发、运维、测试等人员的知识结构有着新的要求,架构转型需要与人员知识结构转型相配套。分布式技术本身以及人员相关技能都要有一个逐步完善和成熟的过程,相关工作的快速推进会对银行的稳定运行带来一定挑战。
商业银行分布式架构实施策略
基于分布式架构应用较为成熟的互联网厂商经验和部分商业银行近年来的探索实践,一些具体实施策略可借鉴参考。
分布式架构构建策略。一种策略是基于业界成熟的、经过实践检验的外部机构提供的解决方案,打造一套标准化分布式系统架构。此策略的优点是高效、便捷,缺点是安全性难以有效把控。另一种策略是商业银行自主投入大量研发力量进行系统底层及通用中间件层面的专项研发,打造一套自主研发、自主运维、内部可控的分布式系统架构。此策略的优点是安全性、自主性可有效把控,缺点是耗费时间与资源较多。当前,由于业务快速发展的需要及国家对信息技术自主可控的整体要求,银行倾向于选择更为高效稳妥的第三种策略,即“引入成熟技术体系+部分自主集成”系统建设模式。通过引入具备我国自主知识产权的分布式技术体系,采用消化吸收、自主研发、自主运维等手段,形成自主可控、符合全行IT发展规划的分布式系统技术体系,以满足银行业务发展需要。
分布式架构部署策略。一些具备互联网属性的银行,如网商银行、微众银行、百信银行等,在建设之初就采用了基于分布式架构的开源平台作为核心信息科技系统的建设方案。一些国有大型银行和股份制银行,如工商银行、农业银行、邮储银行、招商银行等近年来积极开展信息系统架构转型,主要策略有:对于业务新颖、创新较快、交易并发量大或对信息系统部署有特殊监管要求的业务系统,逐步采用分布式架构;对功能相对稳定、与客户资金安全紧密相关,并且无明显性能容量压力的系统,一段时间内仍采用传统集中式架构;对于业务产品迁移,往往以一类产品为试点,后续根据试点情况,逐步迁移渠道类、数据服务类等产品。
分布式架构拆分策略。从分布式拆分方式看,有垂直拆分和水平拆分两类。按照业务或场景对数据表进行分类时,采用垂直拆分的方式;按照用户主体或某个字段的某种规则对表进行分类时,采用水平拆分的方式;在较为复杂的系统中则通常采用二者结合的拆分策略。具体看拆分策略,有读写分离、分库分表、业务分库、用户分库等。读写分离策略即分布式系统架构数据库拆分的最基本方式,即将数据库拆分为“写库”和“读库”,把业务中数据“写操作”路由到“写库”,数据“读操作”路由到“读库”。分库分表策略主要解决单表数据量过大问题,主要通过唯一值的“哈希算法”来实现,把数据路由分散到不同的库、不同的表中。业务分库策略是基于业务特点拆分数据库,数据关联性较强的业务放在一个库,便于与其他业务数据隔离开,使用更加便捷高效。用户分库策略即根據客户流水大小提供相应的服务和数据库,例如,大客户可提供独立服务与独立库,诸多小客户可提供共享服务与共享库。
分布式架构安全防护策略。无论是水平拆分还是垂直拆分,旨在增大系统容量,提升运行效率,有效解决特定场景下的特定问题,但拆分后的系统将面临一致性问题。一致性有强一致性(ACID)和最终一致性(BASE)之分:强一致性是最强的一致性模型,要求任何读取操作都能读取到最新的值,即要求任何写入操作立即同步给所有进程;最终一致性即系统会保证在一定时间内,能够达到一个数据一致的状态。金融核心业务一般要求强一致性,须优先保证数据的正确性。在分布式系统遇到问题时,有熔断、限流以及降级等策略,熔断是系统响应端自我保护机制,即在不堪重负时断开与外部的联系,有断开和半开的策略。但须注意,当响应端熔断时,应第一时间通知请求端,停止重试。限流是通过对并发访问进行限速,让服务端能响应更多的请求,限流策略有计数器方式、列队算法、漏斗算法、令牌桶算法等。降级是在系统应对突发情况时降低损失的策略,一方面停止访问不重要的功能,从而释放出更多的资源;另一方面把一些功能简化掉,如简化业务流程,或是不再返回全量数据,只返回部分数据等。
商业银行分布式架构转型发展思路
形成全行意识层面的共识。分布式发展模式不仅是银行信息科技部门进行技术层面的攻关,也需要业务部门在应用改造过程中的需求梳理和业务验证,需要财务、人力部门的资源保障与鼎力支持,需要风险、安全、研发部门的指导和帮助,需要法律合规部门的关注和支撑(如开源软件的使用等)。商业银行应充分考虑自身业务特点,高度关注信息科技发展的风险特点,从全行战略的高度,明确目标,统一思想,制定IT架构蓝图,明确分布式发展的整体规划与细节分工。
专注底层技术层面的把控。对于新技术,从认识到熟悉再到掌控,其中有事物发展的客观规律。通过成立专门的技术研发中心或创新实验室,从新技术研究到应用逐步展开探索,从新技术的实现原理到应用场景的原型开发等多方面进行研究,从应用试点再到全面推广,采取成熟一点、试点一点、由点及面分级推进的方式,防范因对新技术认知不足而带来的未知风险,尽最大可能减少试错成本,逐步实践适合新技术引入的工作流程。
持续提升运营管理服务能力。分布式架构转型本身承载的不仅是技术层面的转型,同时肩负着支撑未来商业银行数字化转型的重要使命。其重要的价值之一就是充分发挥信息科技的力量,高度重视数据的积累与沉淀,最终实现智能化、人性化的银行运营管理服务能力输出。因此,在分布式系统架构的基础上,银行需高度重视数据的沉淀,重视生产、运行和运营过程中的潜在诉求,结合分布式系统架构中先进的分布式数据访问、分布式事务、分布式存储、大数据技术等模块功能,不断提升银行对客户的理解、场景的认识,更好提升运营能力和服务能力,打造真正意义上的“端到端、人性化”的客户服务能力。
(作者单位:青岛银行研究发展部)
责任编辑:杨生恒