针对金融级交易场景的严苛技术要求,如何修炼这门“必修课”?

金融交易场景分布式数据库应用起飞

随着数据库技术、微服务分布式架构等的不断发展成熟,目前,分布式数据库在交易场景的应用已经逐渐成为新趋势。

交易场景对分布式数据库要求有几个要点:

  • 首先,ACID的支持是必须的。从数据库来看,尽管很多人在鼓吹说什么CAP不可兼得之类的因此要牺牲一致性,但我们认为这是不可取的。对于大部分公司来说,数据都是核心生命线,绝对不能为了上分布式牺牲数据的一致性和安全性,需要对用户的财产和信息负责。因此,新型面向联机交易的分布式数据库必须对传统ACID有完美的支持,与传统Oracle DB2的数据安全性一致性保持兼容。

  • 第二,SQL完整性。这个主要是从对传统应用的兼容与开发人员能力重用的角度看。一般来说,SQL语法兼容的完整性,以及对已有标准的兼容,例如MySQL、Oracle、DB2、PostgreSQL这种主流协议的兼容性。

  • 三,云化与多租户。未来是私有云和微服务应用的时代,那么作为分布式数据库,我们不仅仅将其定位成过去某一个数据库的替代。分布式数据库的核心价值在于,能够从数据库的层面以服务资源池的形式,向上层被从烟囱式架构向微服务架构拆散的成百上千个小服务提供数据库访问能力的平台。

    在这个定位下,数据库资源池在保证与传统数据库100%兼容的基础上,必须满足分布式弹性扩张,当资源池里面空间和计算能力不够了,需要通过动态增加计算存储节点的方式进行扩容。

  • 四,多模数据能力。过去的数据库由于仅针对某一个特定应用,采用中间件和数据库一对一绑定的方式,因此只需要提供自身一种模式的访问就够了。但是当我们进行数据库资源池化的时候,上层应用自然面对来自不同开发商、不同业务类型、不同SLA级别的服务,大家采用的开发流程、SQL标准、以及安全策略各不相同,因此分布式数据库必须能够支持多种模式的访问接口。

  • 五,HTAP,即交易分析混合处理能力。譬如一些账务数据,可能最核心的关键应用来自于联机交易业务实时使用这些数据,但是同时一些后台的实时报表,或者安全审计机构需要进行统计分析的时候,来自不同微服务的业务可能需要对同一份数据同时以交易和分析的方式进行访问。这种情况下,我们能不能在资源池内对交易与分析业务进行物理资源隔离,及时对同一份数据同时访问也可以做到互不干扰。

  • 最后,数据安全是金融级最注重的产品基础能力,分布式数据库应用交易业务,需要具备更严格的高可用,数据安全保障。对于金融交易业务,“两地三中心”和跨数据中心的“多活”是“必修课”。

分布式交易场景性能大幅提升

在分布式交易业务,渐渐成为业界大趋势之时。SequoiaDB 巨杉数据库 3.4版本也于近期正式发布,SequoiaDB v3.4最重要的特性就是在分布式交易场景下的性能提升。对比之前版本,读写性能提升达30%,更新性能提升1倍-1.5倍;精确查询性能较v3.2.2提升达22%,较v3.2提升1.5倍。

查询性能对比示意

更新性能对比示意

针对分布式交易场景,新版本的技术点主要有以下几个:

  • Improved 2PC Algorithm

分布式事务智能仲裁算法。为分布式事务 2PC 提交增加智能仲裁算法,重点解决 2PC 算法中“In-doubt Transaction” 异常状态,实现数据库在极端场景下为多分区事务智能仲裁,确保分布式事务的强一致性。

  • Latch-less Memory Model

实现多层级内存池和无锁内存模型。数据库集群池化内存资源,内存池多级管理,会话访问实现99.99% 内存访问命中率,实现高并发 OLTP 场景下内存的无锁访问,系统CPU的使用率提升 10%;SequoiaDBv3.4同时提供在线内存监控和离线内存分析能力,自动化生成内存分析报告。

  • Improved Raft Algorithm

突破Raft 算法极限,实现全并发同步。SequoiaDB v3.4引入冲突仲裁机制,突破Raft 算法中存在唯一键约束时只能串行同步困境,实现副本间全记录级并发同步,副本同步效率大幅提升。

  • Improved Full-text Search Algorithm

全文索引性能大幅提升。优化全文索引连接模型,降低连接时间和内存使用率,对命中全文索引的count操作,直接通过索引计算结果,大幅提升count 数据读性能。

目前,巨杉数据库针对金融交易场景,巨杉数据库已经规模应用在银行客户的核心交易、核心下移、关系型数据库替换等场景中,应用业务包括信用卡、网银、贷款等,在金融交易场景的应用,领先业界新一代分布式数据库。

SequoiaDB v3.4 功能更新

这次新版本全面提升金融级交易场景功能与性能,在分布式事务、数据一致性,并发CURD性能以及SQL兼容能力方面都做了深度优化。另外,为了满足金融级交易场景对稳定性严苛的技术要求,SequoiaDB还升级了混沌测试框架,集群稳定性得到极大提升。

SequoiaDB v3.4主要技术创新点如下:

存储引擎

  • 事务Auto-commit下推优化,将事务二阶段提交简化为一阶段提交,提升事务性能

  • 事务一致性确认机制

  • 实现多层级内存池和无锁内存模型

  • 全并发同步,提升副本数据同步性能

  • 提供增量数据归档、同步能力

  • 通过开启日志的全量模式和时间模式,可以实现按天,或指定时间对增量数据进行抽取,转换和归档,并将增量数据导入到其它ODS系统。

  • 全文索引支持数组类型

  • 全文索引支持 $or 和$not 操作

  • 全文索引性能大幅提升

  • 访问计划增加自动过期清理,并实现对 $in 操作的参数化缓存能力

  • 插入数据支持重复键替代

  • 索引支持 not null 约束

  • 优化事务监控性能,实现无锁事务监控机制,减少事务监控管理对外部业务的性能影响

SQL引擎

  • 优化高可用能力,实现SQL引擎横向扩容

  • 算子下推存储节点,精确计算,提升网络带宽利用率

  • 事务Auto-commit下推存储引擎,简化事务二阶段提交为一阶段提交,提升事务性能

  • 支持NO TRANSACTION模式,提升初始化数据场景性能

  • 优化DDL操作,包括rename table,modify field,add primary key、index等操作

  • 全面兼容 MariaDB 语法

大对象引擎

  • 提供S3兼容的对象存储接口

  • 大对象存储支持按时间序进行自动分区,提升对大对象的存取和管理能力,可以快速按时间进行归档和清理

  • 大对象过滤支持过滤条件和精准匹配

易用性

  • 支持指定节点的重新选举能力

  • 提供 SQL 语法查询数据库当前状态与监控信息

  • 提供性能监控和慢查询分析能力 

易用性进一步提高,巨杉工具矩阵正式推出

伴随SequoiaDB v3.4的发布,巨杉数据库也于近期推出了,新一代的巨杉数据库工具矩阵,并计划在近期发布 SequoiaPerf 性能诊断工具。

SequoiaDB 工具矩阵示意图

SequoiaPerf性能工具即将发布

丰富的运维管理工具,是用户实使用数据库最直观的友好感受,巨杉数据库也将持续保持创新,聆听社区用户的声音,将面向用户的开发、运维、性能调优工具和最佳实践做到最好。

目前,巨杉数据库大型银行客户已经突破50家,应用场景包括核心交易、数据中台、内容管理和实时数据服务等。未来,我们也将保持自研和创新,在分布式数据库技术和多种行业应用中,保持领先。

点击『 阅读原文 』前往官网,下载使用最新版本!
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值