针对金融级交易场景的严苛技术要求,如何修炼这门“必修课”?
金融交易场景分布式数据库应用起飞
随着数据库技术、微服务分布式架构等的不断发展成熟,目前,分布式数据库在交易场景的应用已经逐渐成为新趋势。
交易场景对分布式数据库要求有几个要点:
首先,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家,应用场景包括核心交易、数据中台、内容管理和实时数据服务等。未来,我们也将保持自研和创新,在分布式数据库技术和多种行业应用中,保持领先。
针对金融级交易场景的严苛技术要求,如何修炼这门“必修课”?相关推荐
- TDengine与中泰证券正式签约,打造金融量化交易场景解决方案
中泰证券股份有限公司(原名齐鲁证券有限公司)成立于 2001 年 5 月,是全国大型综合类上市券商),在全国 28 个省市自治区设有 45 家分公司.284 家证券营业部,员工 9000 多人,控股中 ...
- 软硬件一体化超低时延加速方案落地金融,交易场景效果卓著
量化投资在国内落地发展已有10余年,始终保持的迅猛的发展态势,量化投资机构数量逐年快速增长,资金管理规模指数级增长,管理规模突破100亿的量化私募已超过20家,据中信证券研究部估算,截至2021年二季 ...
- 金融量化交易场景下数据库如何改造?同花顺、弘源泰平真实案例分享
⬆️ 点击图片,与专业的解决方案架构师聊一聊 在金融量化交易场景中,每天都会产生大量的交易记录和交易信息需要存储,同时对数据也有较高要求的查询需求,整体需求概括起来就是历史数据的存储.实时数据的接收以 ...
- 腾讯潘安群:腾讯云金融级数据库TDSQL分析
SDCC 2015将于2015年11月19-21日在北京.朗丽姿西山花园酒店召开.在大会召开之际,笔者采访到了腾讯高级软件工程师潘安群,请他分享TDSQL在腾讯云金融领域的实践经验. SDCC 201 ...
- 【SDCC讲师专访】腾讯潘安群:腾讯云金融级数据库TDSQL分析
摘要:SDCC 2015将于2015年11月19-21日在北京.朗丽姿西山花园酒店召开.在大会召开之际,笔者采访到了腾讯高级软件工程师潘安群,请他分享TDSQL在腾讯云金融领域的实践经验. SDCC ...
- 腾讯金融级分布式数据库TDSQL的前世今生
TDSQL(Tencent Distributed MySQL,腾讯分布式MySQL)是由腾讯技术工程事业群计费平台部针对金融联机交易场景开发的高一致性数据库集群产品.该产品第一个版本诞生于2012年 ...
- 巨杉数据库:金融级数据库未来方向
引言 近年来,全球金融科技每年的投入已经超过500亿美元,中国的金融科技发展更是引领世界潮流.在金融科技不断发展的今天,中国金融互联网化和零售化的发展愈加激烈,使得我国金融业务与科技的有机结合应用模式 ...
- 蚂蚁金服启动分布式中间件开源计划,用于快速构建金融级云原生架构
今天,蚂蚁金服正式宣布启动分布式中间件(Scalable Open Financial Architecture,以下简称 SOFA 中间件)的开源计划! SOFA 是蚂蚁金服自主研发的金融级分布式中 ...
- 阿里云刘伟光:2万字解读金融级云原生
文 | 刘伟光 刘伟光,阿里云智能新金融&互联网行业总裁.中国金融四十人论坛常务理事,毕业于清华大学电子工程系 前言 2015年云原生理念提出的时候,彼时全球金融百年发展形成的信息化到数字化的 ...
最新文章
- php imagevue,Imagevue 2.1.4 正式注册版(PHP Flash相册源代码下载)
- 李航-统计学习方法-笔记-1:概论
- wald检验_笔记:分位数回归斜率相等性检验(Wald检验)
- Asp.Net Core获取请求信息/获取请求地址
- 08-图7 公路村村通 (30 分
- java 读 jar外文件_读取Jar包外面的配置文件
- MapReduce多用户任务调度器——容量调度器(Capacity Scheduler)原理和源码研究
- jira如何创建看板筛选器_创建看板
- Python案例:求满足条件的人数
- 【CSP考前复习】关于考试时的注意事项
- easyui 扩展验证
- linux下三三维建模软件,SolidWorks是基于()原创的三维实体建模软件。A.UNIXB.WindowsC.LinuxD.Dos...
- 深度学习:Image Object Detection方法
- 计算机网络安全中的破译定义,计算机网络安全
- Windows下SQLMAP的安装图解
- Scrapy 框架爬取豆瓣电影的信息(包括图片)和电影评论-2
- Allegro中的NET到NET之间的间距设置-网络之间的间距
- 利用维基百科挖掘概念之间的先决条件关系(初探)
- OpenJDK源码赏析之二:java虚拟机启动流程到首函数调用全流程
- 电脑技巧:原版Windows系统与Ghost系统的区别
热门文章
- JAVA判断数组最大值
- sklearn训练模型、保存模型文件(文本、pkl)、模型文件转换(pkl2onnx)以及模型可视化
- Sqoop增量抽取Oracle数据,最近8个小时的数据未被抽取
- Azure Data Science Virtual Machine Linux的初步体验
- Sublime Text4添加配色主题
- 命令行 编译 android6,Android: m, mm以及mmm编译命令以及make snod的使用
- 力扣—— 36. 有效的数独/37. 解数独
- yolov1-v5学习笔记及源码解读
- android textview动态居中,android 设置textview文字居中或者控件居中
- rust笔记5结构体