您的浏览器禁用了JavaScript(一种计算机语言,用以实现您与网页的交互),请解除该禁用,或者联系我们。[腾讯]:分布式数据库TDSQL金融应用指南 - 发现报告
当前位置:首页/其他报告/报告详情/

分布式数据库TDSQL金融应用指南

2024-09-04腾讯f***
分布式数据库TDSQL金融应用指南

分布式数据库TDSQL金融应用指南 2024年 ©2018-2024腾讯云版权所有 版权声明 本文档著作权归腾讯云单独所有,未经腾讯云事先书面许可,任何主体不得以任何形式复制、修改、抄袭、传播全部或部分本文档内容。 商标声明 及其它腾讯云服务相关的商标均为腾讯云计算(北京)有限责任公司及其关联公司所有。本文档涉及的第三方主体的商标,依法由权利人所有。 服务声明 本文档中的信息,腾讯云不作明示、默示的保证。本文档基于现状编写,在本文档中的信息和意见,均可能会改变,恕不另行通知。 本文件未授予您任何腾讯产品的任何知识产权的法律权利。 注:按名称拼音首字字母为序排列 典型实践金融机构(部分) 目CO录NTENTS 01架构选型 概述01 逻辑架构02 部署架构04 02资源评估 资源评估方法10 配置建议11 03开发规范 模型设计13 SQL编写规范68 数据安全71 04运维及优化 运维监控 性能调优 77 118 05设计与使用 设计指南 使用指南 127 127 06实践案例 银行业典型应用实践案例129 证券业典型应用实践案例134 保险业典型应用实践案例136 泛金融典型应用实践案例137 架0构选1型 (一)概述 1.TDSQL特点 腾讯云分布式数据库TDSQL管理系统(以下简称TDSQL)是腾讯打造的一款企业级数据库产品,其定位是基于互联网分布式架构的金融级数据库。TDSQL全面兼容MySQL、PostgreSQL语法,高度兼容Oracle语法,兼容SQL2016标准,支持JSON、空间等数据类型;兼容常用的数据库客户端、中间件;可部署在国产硬件和操作系统,且TDSQL的分布式数据库集群可分配集中式数据库实例;支持完整的DDL/DML/DCL数据库定义、操作、控制语言,支持视图、存储过程等数据库高级特性;支持强一致分布式事务,分布式联合查询,数据强一致能力。TDSQL具备TDStore敏态扩展、HTAP混合负载能力、领先的分布式架构,支持自动水平拆分、不停机弹性扩展、强同步复制、超高性能等特性。TDSQL可提供公有云和专有云部署形态,支持企业级的数据安全能力,支持专有云集群扩展能力。同时,TDSQL提供智能DBA、自动化运营、监控告警等配套设施,为用户提供完整的分布式数据库解决方案。TDSQL已广泛服务腾讯集团内部,以及金融、政务、社交、电商、交通、游戏等行业的50多万家用户。 2.应用场景 (1)银行业应用场景 国内商业银行常见的业务系统主要包括:渠道类系统、交易类系统和管理类系统。其中,渠道类和交易类系统多具有以下特点:一是业务数据规模巨大,核心交易数据更新极为频繁,交易热点集中;二是业务并发量大,除了传统的ATM和柜面交易,还有线上的网上银行、手机银行,以及各类三方支付等系统带动的交易;三是数据重要性高,安全等级要求高;四是业务可用性和可靠性要求高,相关建设成本高。 所以,银行业对分布式数据库的需求可大致概括如下:首先支持业务系统安全稳定的运行是重中之重;其次是可承载多类型的海量数据,同时还可处理高并发的事务,可支持弹性扩容;再次是开发和运维成本要相对可控等。 (2)证券业应用场景 证券业务系统的特性主要包括如下几个方面:一是高并发,证券业务系统需要处理大量的交易请求,因此需要具备高并发处理能力。二是实时性,证券交易是实时的,系统需要能够快速响应并处理交易请求。三是安全性,证券业务涉及到大量的资金交易,因此系统的安全性是非常重要的。四是稳定性,证券业务系统需要保证交易时段不间断运行,不能出现任何故障。 对于分布式数据库的需求,证券业主要有以下几点:一是高可用,分布式数据库需要保证在任何情况下都能提供服务,不能因为单点故障而影响整个系统的运行。二是高性能,分布式数据库需要能够快速处理大量的数据请求,满足证券业务的实时性需求。三是数据一致性,分布式数据库需要保证数据的一致性,确保所有的交易数据都是准确的。四是易扩展,随着业务的发展,分布式数据库需要能够方便的进行扩展,满足业务的发展需求。 (3)保险业应用场景 保险业务系统具有如下特点:一是业务系统相对集中,但是业务逻辑中心分散,按省或按区域具有差异性。二是互联网渠道保险占比逐年上升,小额且频次高,数据库负载呈现爆发式增长。三是活跃数据存储周期长,如寿险、健康险通常是按若干年为周期计算,对于数据一致性、数据可靠性、历史数据校验的需求极高。四是渠道系统、周边支持系统与核心系统数据交互较多,保险公司往往存在复杂的数据同步逻辑。 保险业对分布式数据库的需求包括:扩展性要求高、数据实时性需求强、满足多业务隔离等。 (4)泛金融业应用场景 泛金融业包含丰富多样的金融业态,例如消费金融、支付、财务公司等等。其中财务公司的业务系统以加强企业集团资金集中管理和提高企业集团资金使用效率为目的,需要进行资金异常监督预警、资金数据穿透分析,对成员单位的资金情况实时掌握,及时防控风险。 财务公司对分布式数据库的需求包括:国产自主可控、高性能数据存储与管理、实时数据处理与查询、灵活扩展、便捷运维等。 分布式数据库TDSQL金融应用指南01 (二)逻辑架构 1.系统架构设计 TDSQL系统架构设计的核心思路是:标准化、模块化。例如TDSQL的模块设计是充分解耦的,彼此之间通过接口衔接,用户可以自行组装或用自己现有模块替换;又比如在设计部署架构时,用户可在成本(自身数据中心建设情况)、业务数据安全可靠性、业务可用性三者之间做不同的平衡选择,可以做到N地N中心的部署,如金融行业常见的同城双中心、同城三中心、两地三中心、两地四中心等高可用容灾部署架构,数据副本亦可做到一主N备(N≥0);甚至在设计读写分离机制时,只读账户可根据主备延迟状态,选择是从备机读取,还是从主机读取,还是直接返回错误;类似这样的设计贯穿TDSQL的整个研发过程,给予用户足够的灵活性和选择权。 TDSQL基础系统架构图如下: 图1TDSQL基础系统架构图 负载均衡支持F5 APP 赤兔管理台 运维用户 SQL引擎 SQL引擎 SQL引擎 ZKMetaCluster ScheduleManager OSS NAS Set1 主Agent+DBServer 从1 从N Set2 主Agent+DBServer 从1 从N 数据节点:数据库模块,实际数据存储节点,主备方式部署。 计算节点:Proxy,也叫sql引擎,位于接入层,承接应用数据请求,主要负责账号鉴权、管理连接、SQL解析、路由转发、分布式事务支持、数据聚合、读写分离等功能。本身无状态,没有主备之分,一般采用多节点部署分担请求压力。 旁路模块:Agent为无状态部署,负责监控DB的存活状态,执行切换、备份、分布式事务容灾等任务。 决策集群:Zookeeper高可用和一致性集群,提供配置维护、选举决策、路由同步等功能,并能支撑数据库节点组的创建、删除、替换等工作。 调度模块:Manager/Scheduler可调度集群系统帮助用户自动调度和运行各种类型的作业。如数据库备份、收集监控、生成各种报表、主备切换、扩缩容、资源管理或者执行业务流程等。 接口模块:OSS负责接收用户的请求,使用HTTP的POST协议,主要实现端口监听,解析POSTbody,根据用户请求调用对应的流程,封装获取的结果,返回给用户。接口作为TDSQL后台和web前台的桥梁,通过可视化管理台操纵TDSQL。 赤兔管理台:TDSQL可视化运营管理平台,从管理员视角,提供TDSQL的全部运维功能,可管理TDSQL集群的物理资源、调度决策系统、备份与恢复系统、可用区管理、实例管理、智能性能分析与监控告警等。 赤兔通过调用OSS接口进行任务下发到ZK组件进行任务节点创建,由Scheduler组件进行监听,当监听到相关任务节点后,调用Manager组件进行具体任务执行,并更新ZK任务节点,赤兔运维平台通过OSS查看任务进度状态。 SET机制:TDSQL所有的高可用机制均是在SET之内实现,每个SET之内多个数据节点(1主N备),主备之间可以是强同步复制机制,也可以是异步复制机制。在主机出现故障的情况下,在调度模块的协助下,基于数据一致性原则和同机房优先等主备切换策略,将最符合要求的备机按照规定流程提升为主机,快速恢复业务,确保数据零丢失,全程无需人工干预。 水平扩容机制:分布式实例对外呈现为一个完整的逻辑实例,后端数据实际分布在若干SET分片上(独立的物理节点)组成。逻辑实例屏蔽了物理层实际存储规则,业务无需关心数据层如何存储,也无需在业务代码中集成拆分方案或再购买中间件,只需要像使用集中式(单机)数据库一样使用即可。同时支持实时在线扩容,扩容过程对业务完全透明,无需业务停机,扩容时仅部分Set分片存在秒级只读(只读是在做数据校验),整个集群不会受影响。 2.产品架构 赤兔-运营管理平台 SQL引擎 监控平台 扁鹊-智能DBA平台 高可用分析 性能分析 锁的分析 SQL优化 健康诊断 服务模块 图2TDSQL产品架构图 数据迁移 审计服务 资源池 虚拟机 物理机 备份系统 ·物理备份 ·逻辑备份 ·数据恢复 存储节点 分布式集群 集中式集群 调度系统 ·故障迁移 ·资源调度 ·容量调度 计算节点 分布式事务关联查询并行计算流式引擎 SQL改写 读写分离 数据校验 产品架构图如下: 数据同步SQL防火墙数据治理注入检测 (1)系统可靠性 各种异常灾难情况下,例如主机故障、网络故障、数据中心故障等,都能确保系统安全可靠。 (2)数据一致性 基于数据多副本主备之间的强同步方式,系统保证在各种异常灾难情况下的数据零丢失、数据节点之间自动切换,并可根据用户不同的数据可靠性级别,快速恢复可用,把不可用时长降至最低。 (3)高性能 对MySQL深度优化发展而来的TXSQL内核,使得在主备网络延迟3ms的情况下,能做到跨IDC强同步性能相较于异步同步零损耗。 (4)水平扩展性 提供AutoSharding机制,可实现实时在线无缝扩容,确保集群性能和容量呈线性增长;同时提供健壮的分布式事务机制,在性能损耗极低(损耗15%)的情况下,大大降低了传统业务迁移分布式架构的难度。 (5)自动化运营 提供完善的运营体系,自动化运营发布平台,机器资源自动管理,智能监控平台及展示,数据库智能诊断等。 (6)配套设施 TDSQL还提供DBbridge数据库同步工具、DBBrain数据库智能管家等配套系统,供用户选择。 (三)部署架构 1.部署架构 基于成本因素考虑,用户可根据自身业务数据的容灾要求,以及数据中心分布情况,选择不同的部署方案。TDSQL可以针对用户不同的数据中心架构,在数据可靠性与可用性上做出权衡,做到灵活部署。 图3两地四中心异地容灾部署架构 (1)异地容灾部署:两地四中心 数据库节点配置: 1)数据库生产部署:TDSQL实例,一主五从(2+2+2,三个中心分别2副本),同中心异步跨中心强同步,可退化模式(RTO优先)。 2)数据库容灾部署:TDSQL实例,一主一从,强同步可退化(容灾数据库通过DCN和生产数据库同步)。管理节点配置: 1)数据库生产部署:ZK三中心,5个节点(2+2+1)配置部署,其他组件三中心各1个节点配置部署。 2)数据库容灾部署:ZK一中心,3个节点配置部署;其他组件一中心,2个节点配置部署。 图4两地三中心异地容灾部署架构 (2)异地容灾部署:两地三中心 数据库节点配置: 1)数据库生产部署:TDSQL实例,一主三从(2+2,两个中心分别2副本),同中心异步跨中心强同步,可退化模式(RTO优先)。 2)数据库容灾部署:TDSQL实例,一主一从,强同步可退化(容灾数据库通过DCN和生产数据库同步)。管理节点配置: 1)数据库生产部署:ZK三中心,5个节点(2+2+1)配置部署,其他组件两中心各1个节点配置部署。 2)

你可能感兴趣

hot

2023分布式数据库金融应用发展报告

信息技术
北京金融科技产业联盟2023-03-29
hot

分布式数据库单元业务应用研究报告

信息技术
北京金融科技产业联盟2022-12-15
hot

分布式数据库在金融系统的应用

中国数据智能管理峰会2023-04-15