浅谈 HTAP 混合技术和金融业应用场景
以下文章来源于公众号中国金融电脑+ ,作者中国银行软件中心
本文作者:中国银行软件中心(西安)个人业务研发部对客交易综合查询开发团队
近年来,随着大数据应用场景的快速普及与多样化发展,传统的数据处理方案已愈发难以满足海量数据实时分析的数据处理需求。针对上述挑战,混合事务/分析处理(Hybrid Transaction and Analytical Process,HTAP)架构的出现为打破事务和分析之间的“隔阂”提供了可行方案,根据 Gartner 提出的概念,HTAP 架构的目的是在单一数据上不加区分地处理事务和分析任务。从发展历程来看,相比于联机事务处理(OLTP)型数据库、联机多维分析处理(OLAP)型数据库,HTAP 具有明显的技术优势,可以有效避免频繁的数据搬运操作,减轻系统额外负担,并降低数据的重复存储成本。
HTAP 特性及架构简介
在大数据业务领域,事务(Transaction)和分析(Analysis)具有强相关性,人们为了进行海量数据的实时分析,发明了 TA 融合这一技术,而 HTAP 则是在存储、计算等方面具有极佳的线性扩展能力,能够更好地解决海量数据的容量问题。具体而言,HTAP 的典型特性如下:
- 一是支持 TP 与 AP 混合的事务处理和分析过程。
- 二是具有水平扩展能力,通过简单增加新节点即可按需实现 TiDB 的水平扩展,进而轻松满足高并发、海量数据场景需要。
- 三是支持 SQL 请求在不同节点自由调度,少量工作节点宕机并不影响业务连续性,且在不丢失大多数副本的前提下,还可以实现故障自动恢复。
- 四是支持两地多中心高可用架构部署,包括同城两机房双活及异地机房的实时切换。
- 五是支持强一致分布式事务以及标准的 ACID 事务。
- 六是可高度兼容 MySQL 协议和常用的功能及语法。
- 七是可对数据库服务集群环境和数据库各进程以及运行 SQL 进行实时监控和告警。
- 八是可根据请求 SQL 的特性,自动决定触发 TP 事务引擎还是 AP 分析引擎。
- 九是具有独立的 TP 和 AP 引擎来支撑存储和计算需求。
- 十是支持公有云、私有云和混合云,可实现自动化运维,简化部署、配置工作。
HTAP 在金融业的典型应用场景案例
聚焦金融领域,HTAP 可高效支持高并发交易拼接加工、大批量交易加工、批量文件生成和推送等众多业务场景。举例来说,联机应用程序可实时对接收的交易数据进行拼接和加工,即通过关联方式对数据进行属性补齐,在夜间将每日批量交易中需要补齐、补漏的数据批量转联再进行加工;同时,还可每日批量对大数据量的交易进行加工,以及对交易明细进行月度、年度统计分析(至少可跨越 10 年);此外,基于交易明细的实时分析查询结果,还可对交易明细按照交易类型、时间等维度进行统计并实时返回结果。TA 类型对应的金融业务应用场景见表 1,HTAP 混合特性与金融典型场景应用的映射关系见表 2。
表1 TA 类型对应的金融业务应用场景
表2 HTAP 混合特性与金融典型场景应用的映射关系
HTAP 数据库未来展望
当前,HTAP 数据库通常在 TP 和 AP 领域各有侧重,还无法做到同时支持 TP、AP 场景。对此,笔者团队建议在应用设计上可将非实时的海量、复杂、多维度数据加工场景,即重型批量处理操作放到 MPP 类、AP 类或者大数据平台实施;而对联机高并发、有实时聚合分析和轻量批量加工的场景则用 HTAP 来支撑。此外,在数据库设计和使用上尽量应用标准 SQL,以规避不完善特性带来的应用风险,并在应用侧通过分库路由策略来应对跨库数据访问,同时搭载数据同步工具来支撑数据库集群之间的数据交换。
展望未来,多元化需求场景决定了 HTAP 数据库不能是 OLTP 和 OLAP 的简单叠加,如果通过 OLTP 架构外扩实现 OLAP,显然只能算权宜之计,而基于当前对分布式数据库与大数据技术相互融合的需求,HTAP 或将成为数字化时代的一种普遍形态。同时,结合开源生态来看,HTAP 数据库未来仍需要在成百上千的业务场景中不断打磨,即将开源作为核心战略、构建高度活跃的开源社区将会是 HTAP 数据库的长远目标。最后,HTAP 数据库的发展还需能支持云原生架构,即在充分发挥云原生技术轻量化、松耦合、灵活度高等优势的同时,努力实现跨云与多云部署。
团队成员:徐雅光、陈世强、韩路、罗皓、师鹏超(总体部)、肖柯舟、王朝阳、谢倩楠、黄慧玲、刘景怡、张鹏