暂无图片
暂无图片
1
暂无图片
暂无图片
暂无图片

国产金融级分布式数据库在金融核心场景的探索实践

腾讯云数据库 2024-07-03
201


贾瓅园,腾讯云数据库行业架构专家

15 年金融银行 IT 工作经验,先后经历和主导国内多家银行核心系统架构设计与建设,长期从事核心业务系统、分布式技术架构、云原生、信创相关技术工作,现为腾讯云数据库团队行业架构专家,从事金融领域数据库赋能、行业架构设计相关工作。



近年来,国产金融级分布式数据库开始在金融行业核心场景发挥作用。由于国产分布式数据库起步较晚,金融企业在应用国产数据库时积累的经验也相对较少,很多企业希望看到更多这一领域的探索实践成果来获得参考。腾讯云数据库行业架构专家贾瓅园带来了主题为《国产金融级分布式数据库在金融核心场景的探索实践》的分享,给企业带来了上述问题的答案。

建设分析与架构设计


金融系统分类及设计等级是按照垂直领域划分的,如图所示。这样的分级要求数据库设计必须有高可靠保障、具备双中心容灾能力。与此同时,数据库整体的性能维度也要满足银行的要求。数据安全性是最重要的,保障等级要求最高。

从金融数据库实施角度,工作评估维度包含的重点有批量业务场景、数据迁移需求、未来 5 年的数据库容量、TPS/QPS 需求、数据高可用性、数据库容灾需求、数据备份需求、分布式数据库网络需求、应用接入需求等。从银行角度来说,在选择数据库技术路线时上述要点是考虑的重中之重。


金融业务系统面对的场景各有不同,不存在“通吃”的数据库方案,应该按照不同类型的系统维度、兼容性维度来选择合适的方案。这里要重点关注语法兼容性,还要考虑系统分类兼容性。选型过程中的早期验证、评估难点,系统分析,工具化的分析与转化,都要契合各家银行的特点,在统一监管要求之下尽量满足银行自身的需求。

金融业务数据库的场景维度分为日间联机业务场景和日终批处理业务场景。前者包括客户信息查询、存贷款业务、支付对外响应能力、待缴费批量处理能力等,时效性、一致性要求很高,属于小事务大并发,这就需要高并发、高性能。第二个维度包括总分核对、会计科目记账、借贷平衡检查等,时效性要求低,属于大事务大并发。


数据库规划层面,具体的分库分表机制与业务场景有着强关联性。这里还有一个需要注意的维度是网络设计。相对中心化架构,分布式数据库的网络流量、内部组件都是离散状态,这就对硬件服务器提出了更高要求。服务器网卡本身是有瓶颈的,一个硬件服务器上可以组成多组网卡,每一组网卡都有相应的功能。所以从全局负载、负载均衡、数据库接入协议等维度,我们都要考察。我们要匹配银行的网络设计来进行数据库的架构设计。

适配与优化实践

聚焦到数据库使用场景的优化实践上,主要包括六个维度:SQL 语句、设置/语法、索引优化、函数/关键字、数据类型转换和分片/分区优化。

SQL 语句和设置/语法方面,我们会有一套语法分析工具来做优化工作。通过分析发现匹配的改造策略,从而实现优化提升。

下一个维度是索引。索引方式包含了很多种,索引可以理解为是一个链表结构,不一定建越多效率就越高。还有一些情况无法使用索引,也要特别注意。

函数关键字这个维度,建议特别偏门的函数还是要把逻辑计算处理尽量放到业务层,不要将所有东西都放在数据库层。因为数据库层有可能牵扯到索引,也可能牵扯到很复杂的计算,换数据库的时候一些通用语法就会受限,很多东西不可用,甚至影响效率,这些是需要关注的。


数据类型从计算机原理角度来看都是雷同的,只是命名名称、命名空间有差异。


分片和分区方法很多,哪些适用不适用,需要聚焦到具体的业务场景考虑。

数据迁移实践

数据迁移在实践中面临两个维度,第一个维度是业务逻辑不变,只换数据库的场景。这对数据库的语法适应性要求较高,前期的选择、语法分析要做的通透一些,验证更多一些。这种情况下是同构业务系统的迁移,数据是没有变化的,变化的可能是数据类型,我们要依靠数据库工具来进行迁移处理。

第二个维度是与业务有关联,一个业务系统从老的系统变到新的系统,业务系统需要重建。业务变迁伴随着业务清洗、数据清洗。所以这些数据场景就需要有业务清洗的程序来处理。

更宏观的维度是同步维度。业务核心场景之下,两个数据库之间具有数据的实时同步或者准实时同步状态,或者日间定时同步、日终一次同步。按照这样的维度就分为两类迁移方式,一类是静态迁移,就是新旧业务转化的时候一次迁移,特点是最终具备应急方案,场景是新旧系统的切换。动态迁移则聚焦到业务场景之下,与业务场景关联。这个维度下很多分布式数据库都提供了追溯工具、保障一致性的工具。

因此,腾讯云 TDSQL 的迁移方案主要关注平台化、高可用和可扩展三大主题。我们会提供完整的方案,在数据工具、数据分析统计等维度都提供了可视化迁移工具。我们支持数据同步自身的高可用,平台可用性可达 99.95%。可扩展方面,我们的数据同步任务可以跨机器自动调度,可横向动态扩展任务节点,增加整体吞吐量。我们的迁移方案可以满足未来云原生数据库的发展需求。

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论