好消息,DBbrain发布全链路分析版,为金融客户量身定制,满足金融行业在数据库层面提出的实时计算、数据分析、高效运维等严苛要求。高阶功能支持正反向SQL解析、集群SQL聚合分析、业务SQL聚合统计分析、集群事务分析、全链路性能视图,透视全链路各环节,帮助客户第一时间发现、定位、分析、解决问题,为金融行业客户保驾护航,提供更高可靠的服务保障。

金融客户之痛

实时分析难:一般金融场景,客户的数据库通常数据体量巨大,数据分析、运算实时性保证等,难度增加。

业务定位难:用户为了溯源交易或业务,通常会有前缀编码的设计,比如某个用户去某省市银行,某街道的分行进行一笔存款,或在某个坐标的ATM机上进行一次取款操作,都需要用到组合的业务编码对其位置、行为进行标记,但由于客户体量大,并发交易多,应用在国产化分布式集群上,虽然减轻数据库单片处理、数据量、性能等压力问题,但同时也加大了金融业务统计汇总及溯源的难度。这是因为将SQL送入分布式集群后,可能被打散到不同的分片中。业务的SQL与数据库真正执行的SQL已经被转义或拆分处理。

事务分析难:为保证数据原子性一致性,金融行业数据库的事务较多。集中式数据库运维中,事务的分析就比单SQL分析困难,相信各位业务开发及数据库运维者对这点是深有体会,更不用说分布式的事务分析了。事务的状态、性能、事务内部每一条的SQL,都需要有紧密的关联分析和聚合,才能得到有效、准确的产出结果。单靠人力分析,几乎无法实现。举个例子,比如一种交易,平时都很快,突然有一笔就很慢,这种情况下,通常只能后续慢慢查找,层层溯源,很难快速定位,相当痛苦。

DBA运维难:金融数据库用户对数据和运行质量要求更高,但在分布式集群中,DBA花精力从DB层也不一定能定位到问题,因为异常可能出现在proxy层,或proxy到db中间的传输过程。也就是说,即使DBA花时间定位到了异常,可向上追溯寻找业务也很困难,况且这里还需要DBA精通业务模型。

全链路分析重点技术

我们用一个例子来说明在集中式架构下DBbrain如何实现快速性能分析。

当数据库CPU利用率升高或产生波动,可能是某类SQL占用了过多的CPU,也可能是数据库实例规格太小。

DBbrain 在公有云上可以将DB层SQL模板化处理,根据CPU利用率的变化,有效提取在当前时段内的耗时或性能异常的SQL模板。

什么是SQL模版化?

SQL模板化是指将SQL去真值,进行归类运算,因为同种类的SQL访问的表、走的索引都是相同的,那么该种类SQL带来的性能影响也很类似。

SQL模版化处理的优势在于,即使在同一时间段,数据库有大量并发的SQL,也能很快找出哪个种类的SQL模板存在性能问题,存在什么样的问题。

然而目前的SQL统计,如果应用在分布式集群中,只能作用在单片上。DB一层的分析聚合效果过于渺小,根本无法解决金融客户的诸多痛点。

结合目前集中式高阶分析的方案作用在分布式上的情况,总结来看有以下实现难点:

1.经过权重或轮询策略,业务SQL或事务,会发送到不同的proxy节点上。

2.经过proxy会将原业务SQL进行转义,拆分到不同的DB分片中去执行。

3.随着业务水平扩展,随时可能产生64片或更多分片情况。

4.不仅要拥有DB单层原能力,还需要掌握proxy层,以及(SQL或事务)在网络传输层的成本。

5.需要支持业务维度的统计和分析,能深入到业务中。

6.需要在集群数据融合的情况下,将同类型的SQL、事务,进行全局模板化处理,快速知晓时段内是哪种类型的SQL或事务造成的影响。

根据以上关键信息,DBbrain全链路分析采用了抽象逻辑四层聚合 (层层聚合与关联)的方式。

除此以外,还可以模板化事务,完成事务异常诊断及性能快速定位。

精细事务异常种类:

1.  单条sql响应时间长

2.  sql执行间隔过大

3.  执行时间过长的事务

4.  事务长时间未提交

5.  报错

6.  非预期结束

7.  未恢复自动提交

全链路分析重点功能

SQL透视追踪

正向解析:从业务SQL到DB SQL,解析过程一目了然,可根据不同条件查找业务SQL,并查看SQL在数据库及集群中的解析过程,以及每一步的性能损耗情况。

反向解析:DB SQL到业务SQL的透视过程,通过数据库当前SQL执行情况,找到性能有损SQL,并可反向定位业务实际来源,解析过程清澈可见。每一步性能消耗可查。

SQL聚合分析

业务聚合分析:提取业务SQL前缀进行解析,分别送入不同的区域,实现业务编码的快速聚合分析,以及大体量下,业务SQL的快速查找。

性能统计分析:聚合SQL模板分析,时段内集群中各项性能指标影响的SQL全局排序,并能实时获取模板内SQL明细、链路视图、SQL链路执行过程。

事务聚合分析

业务事务分析:提取第一条事务前缀送入分析,将被拆解后的业务原事务还原,根据业务前缀进行分析与查找。

性能统计分析:事务模板化处理,实现时段内集群事务 全局性能排序,并能实时获取事务模板内事务的明细,可查看事务内容。也可关联找到分片中被拆解的各个事务。

异常事务分析:分辨整个集群中,异常的事务,智能产出具体的异常原因。以及专家解决方案。

助力金融行业降本增效

业务标签管理:当集群数据量体量巨大的时候,可以自定义开启部分业务分组,即可降低集群业务维度数据的聚合量,快速出具结果。

图形化及可视化:实时获取链路耗时图、SQL转义过程及内容。各项耗时及统计视图一目了然。大幅提升工作效率。

查找及钻取:支持日志全量字段查找及业务查找、支持业务标签模式及性能模式的数据下钻。

案例分享

在国内金融行业数字化转型需求的爆发期,腾讯云数据库TDSQL在其核心系统国产化替换场景中表现抢眼。目前,腾讯云数据库TDSQL已经服务了TOP 10银行中的七家,在TOP 20银行中也服务过半,在不同金融机构核心系统中的渗透率均有显著提升。凭借着这一优势,DBbrain+TDSQL的完美组合拳已经有了诸多成功案例项目。

业内银行系统独家--头部银行联合创新项目

全链路实时分析系统,四层分析聚合,实现了业务多层、多维度的性能分析诊断,正反向追踪数据链路,透视链路。SQL、事务同类抽象聚合,多维产出SQL及事务性能风险。这是业内银行系统唯一一家实现交易及链路的全链分析及透视、完成链路关联结果的实时智能计算。

全链路分析帮助行内快速定位影响因子,确定哪项业务SQL影响数据库性能、查询速度。事务分析系统实时定位每一笔事务的执行及损耗、掌握事务风险程度。DBbrain保证服务的更高可靠,实现全链路分析及透视,帮助行方及时发现问题、预防问题。

某省市银行--事物逻辑/性能分析项目

行内部分集群事务被打散到不同的分片时,难以定位事务问题。新增业务采用分布式的集中结构,暂缓多分片部署,经常在水平扩展与事务保证中权衡决策。DBbrain提供的分布式系统部署全链路事务分析板块在行内试运行,为水平扩展系统部署DB事务分析模版,帮助行内实时掌握分布式事务的性能、执行情况,在单片模式下快速获取事务内SQL内容、事务问题、事务内部SQL耗时情况,预计事务问题排查时长缩短95%以上。

某大型金融企业运维项目

客户业务交易类模块采用Oracle数据库,非交易模块采用MySQL数据库。随着非交易类场景及功能的不断发展,公司内部MySQL实例越来越多,数量已超2000+,且单实例内部存在多个DB的情况,客户的运维工作越来越吃力。

因此,客户亟需一套智能运维系统,帮助客户每天自动巡检所有MySQL数据库,发现严重风险可立即通知客户,非严重风险的进行常规显示;同时,需要支持实时对2000+数据库进行全局排序,按照单个性能指标、健康状态排序,帮助客户快速掌握需要重点关注与优化的实例。

客户选择使用DBbrain提供的解决方案,详细如下:

  1. 配置开启实例的巡检,每天自动更新巡检数据库系列健康问题;

  2. 设置实例事件通知,针对不同的风险级别,给予不同的通知策略;

  3. 通过全局数据库健康排行,快速定位需要重点优化的实例;

  4. 通过全实例监控功能,定位具体的重点指标,进行全部实例的指标性能排行。

结语

腾讯云数据库智能管家 DBbrain 凭借优异的性能表现成功通过中国信息通信研究院第十五批“可信数据库”评估评测,是本批唯一通过数据库管理系统智能化测评的产品。

DBbrain 涵盖数据库性能优化、安全防护、流程管理等服务的数据库自治云服务。利用 AI 技术和专家经验引擎快速复制资深数据库管理员的成熟经验,将传统人工的数据库运维工作智能化,服务于云上和云下企业,提供 7*24 小时数据库性能优化、安全防护、数据库管理的自治服务,各项高阶精准的分析模型,实时图形化汇聚的呈现方式,有效保障数据库服务的安全、 稳定及高效运维。

-- 更多精彩 --

腾讯云数据库:用一张成绩单和2022说再见!

↓↓点击阅读原文,了解更多优惠

文章来源于腾讯云开发者社区,点击查看原文