《openGauss金融应用关键能力研究报告 2024.docx》由会员分享,可在线阅读,更多相关《openGauss金融应用关键能力研究报告 2024.docx(43页珍藏版)》请在课桌文档上搜索。
1、目录一、发展情况及现状1(一)研究背景1(二)金融行业数据库应用情况1(三)数据库金融应用关键要求2(四)OpenGaUSS技术特点3二、安全研究4(一)安全架构5(一)全栈国密5(三)全密态数据库7三、多模多态分布式研究9(一)多存储模式9(二)多部署形态10(三)关键能力14四、内核可观测研究23(一)观测维度24(一)观测接口25五、A1.能力研究28(一)AI4DB:智能运维能力28(二)DB4AI:数据库原生A1.计算31六、异构数据库工具研究34(一)语法兼容34(二)数据迁移35七、典型案例(邮储银行核心系统)3840八、总结与展望一、发展情况及现状(一)研究背景数字基础设施键核
2、心技术的深化应用,推动了我国数据库产业的进步发展,数据库产品不断涌现,开源软件生态建设也日趋完善。OPenGaUSS是一种基于开源技术的关系型数据库管理系统,它采用开源模式,支持大数据处理,具有较为完善的安全机制,并与OraC1.e数据库语法兼容。研究其关键能力,对金融行业已有的应用和数据迁移具有一定价值。截至2023年11月底,OPenGaUSS社区理事会包含了华为、超聚变、交通银行、邮储银行、招商银行、民生银行、兴业银行等多家技术和金融领域头部企业,在技术资源、技术氛围和场景多样等方面具备定优势。本报告对照金融行业数据库需求对。PenGaUSS进行关键能力的分析,为金融业务创新中使用该技术
3、提供支撑。(二)金融行业数据库应用情况集中式数据库在我国金融行业的使用时间很久,得到了广泛的应用。整体来说集中式数据库的应用比例高达89%,其中银行业应用比例接近80%,证券和保险行业的比例超过了90%o分布式数据库近年来在我国金融业不同领域也已逐步开展应用,现已涵盖不同类型的业务系统,总体占比达到7%,其中银行业超过了17%,证券业和保险业分别为3.74%和1.92%o2023年,国内金融行业数据库加速发展,金融信息化研究所发布的金融业数据库供应链安全发展报告(2022)指出,超过40%的金融机构在办公和一般系统中使用了国内数据库产品,银行业、证券业和保险业核心系统的应用进展如图1所示。6a
4、oo%49.02%5(100%40XK1%,025%25%27.2797.27%20.00%7*%区18%10.00%0.0(%fi,*证券业IHft业U办公刎tHRAtt图1不同领域金融机构使用国内数据库产品示意图OpenGauss系数据库目前在金融行业有较多的实用案例。邮政储蓄银行通过鲸鹏、自主创新操作系统、OPenGaUSS打造的IT基础设施,支持邮政储蓄银行全国6.5亿用户,日均20亿的交易,全天联机平均耗时降低30%,系统负载峰值TPS提升319%。兴业银行基于OPenGaUSS开源数据库,对现有业务进行优化,己在报表系统、支付系统等系统投产使用,共计应用超过30套系统。四川银行构建
5、的新一代反洗钱系统,单个处理任务涉及6条上亿级大表的多表关联查询,运行耗时从单次12个小时降低至1-1.5小时。另外,OpenGauss在保险行业和证券行业,如中华保险、上海期货交易所等企业单位,都得到了应用。(三)数据库金融应用关键要求数字化的浪潮给金融行业带来了业务创新,也使金融行业数据库面临着新挑战与新需求。安全要求。金融行业的数据库在数字化时代面临着愈加严峻的数据安全挑战。金融行业是数据密集型、高安全标准和强监管的行业,数字化时代新技术的发展,也使数据库面临新的威胁手段,需要采用更加先进的技术手段保障数据安全。高性能、高可用、可扩展与高稳定要求。金融行业传统中心化数据库架构在高频处理海
6、量数据时面临着时延较高、扩展性能不足、一致性无法保证等问题。同时,金融行业核心业务涉及大量资金流动、客户信息、交易数据等敏感信息,高业务连续性以及数据监管合规要求也必须充分保证。此外,7*24小时服务不间断也对金融数据库提出高稳定性要求。易运维要求。金融行业数据库需具备业务线上化、便捷化的能力,支持在线变更,包括在线DD1.变更、在线配置变更、在线数据变更、在线扩容与缩容,以及在线版本升级等,同时也需降低服务运维复杂度并提供问题诊断。智能化要求。金融应用需要处理海量的结构化和非结构化数据,涉及复杂的计算和分析。金融行业数据库对利用A1.技术实现数据库的自动优化、自动索引,提高数据处理效率和质量
7、,降低运维成本和风险等有强烈需求。(四)OPenGaUSS技术特点OpcnGauss总体技术架构,如图2所示:图2:OpenGauss总体技术架构OPenGaUSS金融版本在安全、高可靠、性能优化、智能运维方面具备如下能力:安全:提供全密态计算、国密算法认证和加密、动态数据脱敏。可靠:日志并行回放实现RTo10s,PaXOS架构,两地三中心流式容灾。性能优化:NUma-AWare改造,指令集优化,对应鳗鹏系列tpmc进行了调优。智能化:数据库管理系统(AI4DB)提供智能索引推荐、慢SQ1.诊断等,数据库内机器学习(DB4AI)支持主流机渊学习场景资源池化:存储池化、内存池化和计算池化三层池化
8、架构,支持应用横向扩展二、安全研究本章根据金融行业数据库数据安全要求,从数据安全架构、全栈国密、全密态数据三方面展开OPenGaUSS研究。(一)安全架构金融领域数据库的核心任务是帮助用户安全的存储和管理数据,保证复杂环境卜.数据不丢失、隐私不泄露、数据不被篡改以及服务不中断。OpenGauss数据库在安全审计、用户数据保护、用户识别和认证、安全管理、TSF自保护、ToE访问功能满足CCEA1.4+安全认证的要求,其安全架构的主要模块和采用的技术包括:安全感知框架:包括数据库防火墙的入侵防御、基于A1.的攻击识别及智能防御。安全认证:数据库服务端的强认证机制。访问控制:具备权限管理模型、对象访
9、问控制及校验机制。数据脱敏与加密:对关键数据采用数据加密存储机制或数据静态脱敏及动态脱敏机制保护。数据防篡改:采用多副本备份和区块链技术对数据进行一致性保护。数据库审计:通过系统内部细粒度审计机制,记录用户操作行为。第三方安全测试:引入第三方安全测试和认证,加速完善数据库安全能力的构建。(二)全栈国密中华人民共和国密码法要求关键信息基础设施应当使用商用密码进行保护,并开展商用密码应用安全性评估(密评)。中国人民银行发布金融行业信息系统商用密码应用基本要求及配套测评规范,推动相关测评机构开展金融信息系统密评工作。OPCnGaUSS已通过国密局数据库国密认证,全栈国密如图3所示:图3OPenGaU
10、SS全栈国密叩CnGaUSS支持使用国密算法SM3进行用户登录认证,支持使用国密算法SM4进行数据加密。在鳏鹏920上,通过使用内置的KAE引擎实现SM4加密算法加速4.6x、SM3哈希算法加速12.6x,如图4所示。OPenGaUSS支持国密T1.CP协议,增加支持的国密加密套件,包括ECDHE-SM4-SM3、ECDHE-SM4GCM-SM3、ECC-SM4-SM3、ECC-SM4-GCM-SM3。其中,T1.CP是指符合GB/T386362020信息安全技术传输层密码协议(T1.CP)的安全通信协议,其特点是采用加密证书/私钥和签名证书/私钥相分离的方式。图4鲤鹏920KAE加速引擎(三
11、)全密态数据库密态数据库是专门处理密文数据的数据库系统,数据以加密形态存储在数据库服务器中,数据库支持对密文数据的检索与计算,而与查询任务相关的词法解析、语法解析、执行计划生成、事务ACID、数据存储都继承原有数据库能力。在密态数据库机制下,业务数据流图如卜.图5所示。假定数据列C1.已以密文形态存放在数据库服务端,用户发起查询任务指令。用户发起的查询任务无需进行特殊化改造,对于查询中涉及的与敏感数据CI相关联的参数,在客户端按照与数据相同的加密策略(加密算法,加密密钥等)完成加密,如图5中关联参数“123”被加密成“0xfb31da05。参数加密完成后整个查询任务被变更成一个加密的查询任务并
12、通过安全传输通道发到数据库服务端,由数据库服务端完成基于密文的查询检索。检索得到的结果仍然为密文,并最终返回客户端进行解密。&图5密态数据库核心业务数据流密态数据库的核心思想是:由用户持有数据加解密密钥且数据加解密过程仅在客户侧完成,数据以密文形态存在于数据库服务侧的整个生命周期过程中,并在数据库服务端完成查询运算。OpenGauss全密态数据库支持密码学软件模式和基jTEE(TrustedExecutionEnVirOnment)的硬件模式。在硬件模式下,OpenGaUSS支持鲤鹏ARMTrustZone较高级别隔离,并且通过多层密钥管理体系、可信传输通道、会话级密钥管理机制等密钥安全保障机
13、制实现硬件环境中的数据及密钥安全,降低因硬件安全问题而导致的用户数据及密钥泄露风险。在软件模式下,OpenGauss支持密态查询,通过密态杳询引擎,实现数据等值查询、范围查询、保序查询、表达式计算等。并通过引入确定性加密机制,实现数据的增删改查、表字段关联、等值检索等操作。基于GS-OPE算法的密文索引技术,实现数据密态保序查询、表达式大小比较等。通过Range-Identify算法,实现数据密态范围查询。三、多模多态分布式研究本章针对金融行业数据库高性能、高可用、可扩展与高稳定需求,研究了。PenGaUSS的分存储模式、部署形态、分布式能力。(一)多存储模式OpenGauss系统支持以下三种
14、存储引擎:行存储引擎、列存储引擎、MOT内存引擎。1 .行存引擎行存储引擎的特点是支持高并发读写,时延小,适合O1.TP交易类业务场景。OPenGaUSS行存储引擎采用原位更新(in-p1.aceupdate)设计,支持MVCC(Mu1.ti-VersionConcurrencyContro1.多版本并发控制),同时支持本地存储和存算分离的部署方式,支持存储层异步回放日志等。行存储引擎Ustore将最新版本的“有效数据”和历史版本的垃圾数据”分离存储。将最新版本的“有效数据存储在数据页面上,并单独开辟一段UNDO空间,用于统一管理历史版本的“垃圾数据”,因此数据空间不会由了频繁更新而膨胀,“垃
15、圾数据”集中回收效率更高。2 .列存引擎传统行存储数据压缩率低,必须按行读取,即使读取一列也必须读取整行。在数据库遇到针对大量表的复杂查询,而这种复杂查询中仅涉及个较宽(表列数较多)的表中个别列时,行存储以行作为操作单位,会引入与业务目标数据无关的数据列的读取与缓存,造成了大量IO的浪费,性能较差。因此OPenGaUSS提供了列存储引擎的相关功能。创建表的时候,可以指定行存储还是列存储。OpenGauss行列混合存储是指将表按行存储到硬盘分区上,列存储是指将表按列存储到硬盘分区上。行、列存储模型各有优劣,建议根据实际情况选择。其通常用于O1.TP(联机事务处理)场景的数据库,默认使用行存储,仅
16、对执行复杂查询且数据量大的O1.AP(联机分析处理)场景时,才使用列存储。默认情况下,创建的表为行存储。3 .内存引擎内存引擎MoT作为在OPenGaUSS中与传统基广磁盘的行存储、列存储并存的种高性能存储引擎,提供了高实时数据处理分析能力及低事务处理时延。内存引擎基于内存而非磁盘进行事务处理,包括且不限数据及索引结构、数据管控、基于NUMA架构的内存管控、数据处理算法优化及事务管理机制完善。全内存态存储并不代表着内存引擎中的处理数据会因为系统故障而丢失。内存引擎具有与OpenGauss的原有机制相兼容的并行持久化、检查点能力,使得内存引擎有着与其他存储引擎相同的容灾能力和高可靠能力。(二)多
17、部署形态多部署形态分为主备式部署形态、分布式部署形态,如图6所示。图6主备部署形态与分布式部署形态1 .主备部署主备模式相当于两个数据副本,主机和备机各一个数据副本,备机接受日志、执行日志同放。主备式部署形态支持一主多备模式。在一主多备模式下,所有的备机都需要重做日志,都可以升主。一主多备提供更高的容灾能力,更加适合于大批量事务处理的O1.TP系统。主备之间可进行角色切换,主机故障后可对备机进行升主。主备模式提供了抵御实例级故障的能力,适用于不要求机房级别容灾。OpenGauss的主备部署形态可基于资源池化架构,该架构由三层池化、一个平台和一个标准组成,如图7所示:图7OpenGauss资源池
18、化架构OPenGaUSS提供关系型O1.TPSQ1.语法、O1.APSQ1.语法、A1.推理等接口,并基于X86、鳏鹏等算力,为应用提供TP行存加速、AP列存加速、A1.训练推理、向量数据库等全方位的数据服务。可使用引擎满足不同业务处理诉求,实现计算池化。通过同步事务信息和数据库缓存,实现多节点下的多版本快照一致性读。结合ROCE和SCM等硬件,实现Commit力口速和大容量内存访问,实现内存的池化。支持分布式存储、企业存储、对象存储等,通过高效裸设备访问,元数据共享,实现存储池化。2 .分布式部署OPenGaUSS社区版目前只支持主备部署形态。基于OpcnGauss内核的GaussDB和GB
19、ase8c支持分布式部署形态,分布式部署形态采用全组件的高可用冗余,即所有节点都支持分布式高可用部署。GaUSSDB的分布式架构和组件,如图8所示:图8GaussDB的分布式架构和组件CM集群管理模块(C1.USterManager):管理和监控分布式系统中各个功能单元和物理资源的运行情况。GTM全局事务控制器(G1.oba1.TranSaCtionManager):提供全局事务控制所需的信息,采用多版本并发控制MVeC机制。W1.M工作负载管理器(WorkIOadManager):控制系统资源的分配,防止过量业务负载,对系统的冲击导致业务拥塞和系统崩溃。CN(CoordinatorNode)
20、:整个系统的业务入口和结果返回;接收来自业务应用的访问请求,分解任务并调度任务分片的并行执行。DN(DataNode):执行查询任务分片的逻辑实体。ETCD(Editab1.eTextConfigurationDaemon):分布式键值存储系统用于共享配置和服务发现(服务注册和查找)。GBase8c的分布式架构和组件如图9所示:图9GBase8c的分布式架构和组件CN:协调节点,采用完全对等的部署方式。对外提供接口,负责进行SQ1.解析和优化、生成执行计划,并协调数据节点进行数据查询和写入。在功能上CN上只存储系统的全局元数据,并不存储实际的业务数据。DN:数据节点,采用主备的高可用架构,主备
21、之间可以配置同步或异步方式。用于处理存储本节点相关的元数据,每个节点还存储它所在的业务数据的分片。在功能上,DN节点负贵完成执行协调器节点分发的执行请求,完成数据存储和本地数据查询和写入;GTM:全局事务管理器,采用主备的高可用架构,主备之间可以配置同步或异步方式。主要是做分布式事务,负责生成并维护全局时间戳,保证集群数据致性。在部署上,GTM的与数据节点的部署类似,也是一主多从的备份方式,节点间可以采用同步的备份方式也可以采用异步的备份方式。HACenter:集群状态管理器,采用Raft的复制协议。存储各个节点的高可用状态,负责在故障情况卜判断集群各个节点状态。GHAServer:集群管理器
22、,采用主备的高可用架构,主备之间可以配置同步或异步方式。用以管理整个集群各个节点的高可用状态(主备、死活等)。(三)关键能力1 .分布式查询能力分布式架构需要最大化利用架构下的整体资源,进行分布式查询的性能提升与优化,且随着节点规模的扩大,线性增长整体性能。具体来说,主要采用以卜.几种方式提高性能。分布式路径搜索:OpenGaUSS优化引擎生成分布式路径,14将同一个表的数据分布到不同的数据节点上。创建表时可选择将数据在每个表上做哈希分布或随机分布。为了正确执行两表连接操作,可能需要将两个表的数据重新分布,因此OpenGauss的分布式执行计划中增加了对数据进行重分布的Redistribute
23、和Broadcast两个算子。Redistribute算子将一个表的数据按照执行的哈希值在所有的数据节点上做重分布,Broadcast算子通过广播的方式重新分布,个表的数据,保证广播之后每个数据节点上都有这个表的数据副本。分布式路径生成时,会考虑两表及连接条件上的数据是否处于同一个数据节点,如果不是,会添加相应的数据分发算子。根据分发算子需处理的数据量以及网络通信消耗,可计算路径代价,优化引擎根据代价选出最优路径。分布式执行计划:OPenGaUSS为提高分布式架构下资源利用率,提供四种执行计划,分别为1.ightProXy(CN轻量化)计划、FQS(FastQueryShipping)计划、S
24、Iream计划以及Remote-Qucry计划,其中FQS和Stream是可下推计划。也就是说,集群中的所有数据节点都参与SQ1.执行,如图10。=.图10:分布式执行计划FQS计划是协调节点直接将原语句下发到各个或者部分数据节点上,各节点单独执行,相互之间不进行数据交互,而Stream计划是原语句在协调节点上生成执行计划,然后协调节点将执行计划卜.发到各个数据节点上,各数据节点在执行过程中使用Stream算子进行数据交互。分布式数据存储与管理:OPenGaUS采用Hash、RePIiCa1.e等分片策略把数据尽可.能均匀分布到各数据节点,实现不同查询场景的性能优势或采用复制表实现更快速的本地
25、连接查询,如图11所示。08jrr11-ifIm1ReP1.iCate分布ir*8Fi.*v.一I图11:分布式数据存储与管理2 .组件高可用能力OpenGauss组件高可用部署方式包括:同城灾备方式:抵御硬件级别、机房级别灾难,两机房之间距离小50千米;异地灾备、两地三中心方式:抵御硬件级别、机房级别、城市级别灾难,两地之间距离可以大于100o千米。异地多活方式:支持多集群部署,集群间数据双向同步。组件高可用同机房/同城部署方案:同机房部署,顾名思义就是将整个集群全部部署在同一个机房内,如图所示就是一个同机房的典型部署,集群内3个数据节点分别部署在三个数据中心里;2个协调节点高可用组,每组一
26、主两备,分别部署在3个数据中心里;GTM一主一备,部署在任意2个数据中心;HACenter是负责记录各个节点高可用状态和必要时候的主备倒换的节点,它是采用Raft的复制协议,分别部署在3个数据中心,如图12所示。图12全组件高可用同机房/同城部署方案集群的每个组件数量和部署方式可根据具体情况进行调整,以保证任意数据中心宕机时,其他两个数据中心组成的集群仍可对外提供服务。在同机房的部署方式下,集群可抵御硬件级别的故障,不能抵御城市级别和机房级别的灾难。组件高可用单一集群异地灾备部署方案:该部署方式可支持单一集群异地灾备,适用于对时延要求不太高但是对异地高可用级别要求比较高的系统,其架构方案如图1
27、3所示。JUtdiar图13:组件高可用单-集群异地灾备部署方案图中部署方式可在天津配置读写,在南京做只读的业务。天津部署两个数据中心,协调节点和GTM节点主备之间采用同步备份方式;南京部署第三个数据中心,协调节点和GTM节点与位于天津的主节点之间采用异步备份方式。此类情况要保证异地每个集群组件最少有一个节点或备机,整个集群可抵御硬件级别故障和机房级别以及城市级别的灾难,两地间距离可大于I(XX)千米。组件高可用两个集群异地多活部署方案:此方案可支持通过集群间的数据同步配合业务层面进行异地多活,方案架构如图14所示。图中方式下,交易按照分区调度,比方说天津和南京两地,天津处理某种交易,南京处理
28、另一种交易,这个分类可以是地理上的,也可以是业务上的。然后两地之间再进行数据同步。这种方式可支持多集群部署,集群间数据双向同步,数据以某一维度进行分区调度,可抵御硬件级别故障和机房级别、城市级别灾难,两地之间距离可以大于100o千米。图14组件高可用两个集群异地多活部署方案组件高可用两地三中心部署方案:此方案需要异地数据中心3的DN高可用组数量和配置与本地集群的DN高可用组的数量和配置完全相同。例如:本地集群DN共4分片,每个分片1主4备。要求异地集群DN共4分片,每个分片1主4备,方案架构如图15所示。在图中server5服务器上部署的ETCD为仲裁节点,保证在数据中心1或数据中心2任意中心
29、单独下线情况下,进行多数派仲裁,自动切换至剩余的数据中心继续对外服务,同时防止脑裂。建议同城市单独部署。节点对服务器配置要求低,可与其他应用/产品部署在同一服务器,仅做节点状态仲裁,不涉及业务。异地容灾建议配置手工切换,防止异地数据中心3因网络原因导致自动拉起的情况。组件高可用两地三中心部署方案中的数据同步以及数据一致性的保障图15组件高可用两地三中心部署方案集群管理CM(C1.usterManager)机制支持VIP(Virtua1.IP)管理。业务通过配置VIP连接数据库,当主机故障发生主备切换时,业务连接可自动重连到新的主机(亳秒级别):当数据库出现双主时,通过VIP连接数据库可确保连接
30、唯的主机,降低双主丢数据的风险。集群管理CM也支持两节点部署,通过引入第三方网关IP.有效解决CM集群两节点部署模式下自仲裁问题,支持CMS和DN;同时支持动态配置CM集群故障切换策略和数据库集群脑裂故障恢复策略,从而能够尽可能确保集群数据的完整性和一致性。集群管理模块的磁盘只读检测能力增强,实现只读状态从数据库获取,保证准确性;只读仲裁只仲裁当前超过阈值的实例,其他节点不受影响;主机只读保护后自动主备切换,选可用备机升主保证集群能正常提供工作。集群管理机制支持按事件调用用户自定义脚本,支持CM组件单独升级,增强数据库集群可靠性;CM可以根据配置信息,支持用户自定义组件的监控和管理。集群管理机
31、制实现DCF(DistributedConsensusFramework,分布式共识框架,基于Paxos算法实现数据同步强一致)支持策略化多数派能力,以多数派为前提,同时根据用户配置的AZ,保证AZ内至少有一个节点同步复制日志。从而实现两地三中心部署方案中集群节点的数据同步以及集群所有节点的数据一致性。3 .HTAP能力基于资源池化架构,OPCnGaUSS具备对O1.TP和O1.AP及其他数据模型混合负载能力,包括SMP并行杳询、RSMP多机并行、NDP近数处理、分布式O1.TP中间件、分布式O1.AP中间件等。SMP:OpenGauss的SMP是一种利用多核CPU架构实现多线程并行计算以提高
32、查询性能的技术。思路是对能够并行的查询算子,将数据分片,启动若干个工作线程分别计算,最后将结果汇总,返回前端。在复杂杳询场景中,SMP比较低并发度的单个查询能够减少查询执行时间,提升查询性能及资源利用率。多机并行:OPenGaUSS资源池化架构下,当一个节点发起SQ1.杳询请求,且通过代价判断应启动多机杳询,则生成分布式计划,再根据设定的Node-Group,将此查询在Node-Group内所有节点多机并行执行,执行后结果从发起的节点返回。近数处理:在OpenGauss资源池化架构下,近数处理指把某些算子卸载到存储节点上运行,以减少数据网络的传输,提升查询的性能。近数处理的总体方案架构如图16
33、所示。J,并计算SQ1.执行时间。这有助于评估数据库系统的响应性能和吞吐量。SQ1.执行计划:捕获SQ1.查询执行计划,并提供一系列指标和统计信息,如访问路径、扫描方式、索引使用等,以便进行性能分析和调优。索引和表扫描:监控SQ1.查询使用的索引和表扫描方式,检测和量化索引的效率和簧询优化的效果,有助于解决慢行询和高CPU占用问题。缓存命中率:跟踪SQ1.食询的缓存命中率和缓存大小,以评估缓存使用效果和可用性,提高查询的效率和性能。查询分布和监控:收集和分析SQ1.查询的分布情况和趋势,检测和诊断慢查询的原因和来源,辅助调优数据库的设计和配置。(二)观测接口OPCnGaUSS提供DBE-PER
34、F内视图、WDR、ASP等接口支持数据库内核的观测。1.DBE_PERF内视图DBE_PERFSchema内视图提供主要的资源管理、性能监控方面的相关视图,支持实时ToPSQ1.、历史ToPSQ1.、内存、操作系统运行等性能监控数据,用来诊断性能问题。如表1所示,OPenGaUSS提供query级别和算子级别的资源监控实时视图来查询实时TOPSQ1.。表1实时TOPSQ1.接口-视图级别表视图级别QUery级别OPCraIOr级别查询视图DBEPERF.STATEMENTCOMP1.EXRUNTIMEDBE_PERF.OPERATOR_RUNTIME资源监控实时视图记录了查询作业运行时的资源使
35、用情况(包括内存、CPU时间、IO等)以及性能告警信息。如表2所示,OPenGaUSS提供query级别和算子级别的资源监控历史视图来查询历史ToPSQ1.。表2历史ToPSQ1.接口-视图级别表查询视图视图级别QUery级别DBEPERF.STATEMENTCOMP1.EXHISTORYOPeraIOr级别DBE_PERF.OPERAT()R_HISTORY资源监控历史视图记录了查询作业运行结束时的资源使用情况(包括内存、下盘、CPU时间、IO等)、运行状态信息(包括报错、终止、异常等)以及性能告警信息。但对于FATA1.PANIC错误导致的查询异常结束,状态信息列只显示aborted,无法
36、记录详细异常信息。DBE_PERF.ST/XTEMENT_COMP1.EX_HIST()RY视图显示在数据库主节点上执行作业结束后的负载管理记录。STATEMENT_COMP1.EX_HISTORY_TAB1.E视图显示数据库主节点执行作业结束后的负载管理记录,所显示数据为内核中归档转储到系统表中的数据。2 .WDR报告OPenGaUSS提供WDR(WorkIoadDiagnosisRCPort)负载诊断报告,记录整个数据库在运行期间的现状或者说真实状态,常用于判断长期性能问题。WDR报告在打开参数enab1.e_wdr_sn叩ShOt后生成,其相关参数如表3所示。表3WDR报告参数表参数参数
37、说明enab1.eWdjSndpSho1.是否开启数据库雅控快照功能WdJSrmPShos后,系统年隔WdjSnaPShOtinterVa1.时间间隔,清理snap_shoi_id最小的快照数据3 .ASPOPenGaUSS的ASP(ActiveSessionProfi1.e)类似于Orac1.e的ASH用于监控和分析数据库中的活跃会话。OpenGauss的ASP支持三种持久化模式:数据表保存是将数据定期持久化到GS_ASP表中;文件保存是将内存中的ASP数据输出到磁盘文件中;还有表+文件保存模式。4 .内核eBPFeBPF(ExtendedBerke1.eyPacketFi1.ter)是一种
38、内核级的性能监控工具。eBPF可收集各种系统信息,如CPU使用率、内存使用情况、网络流量等。通过执行eBPF程序,开发者可以实现对系统的深度监控和数据分析。五、A1.能力研究AI与数据库结合是近些年的行业研究热点,OpenGauss较早地参与了该领域的探索,并取得了阶段性的成果本章从AI4DB和DB4AI两个方面研究金融行业数据库智能化需求下,OpenGauss数据库A1.能力。(一)AI4DB:智能运维能力AI4DB是指用人工智能技术优化数据库的性能,也可以通过人工智能实现自治、免运维等。AI4DB主要包括自调优、自诊断、自安全、自运维、自愈等。OpcnGaiiss的AI4DB特性子模块DB
39、Mind系统架构如图18所示:图18DBMind系统架构DBMind的数据采集层负责采集必要的数据供上层调用;数据计算层包含大量模型和故障规则库等,为自治服务层提供算法支撑;自治服务层负责实现例如故障诊断、索引推荐、慢SQ1.诊断等具体功能;监控层在自治服务层的基础上提供优化建议、输出预警信息等。DBMind主要包含四个模块:数据库指标采集和预测与异常监控、慢SQ1.发现与根因分析、智能索引推荐、智能调优与诊断。数据库指标采集、预测与异常监控:DBMind提供openGauss-exporter(采集数据库指标)和reprocessingexporter(采集到的指标进行二次加工)与Proni
40、ethcus对接,对采集到的指标进行预测分析,如通过预测内存使用率发现内存泄漏、预测磁盘使用情况、预测合适扩容时机等。AI异常检测算法可根据指标走势,帮助用户及时发现问题。用户也可通过修改配置文件来指定需要进行预测的关键系统指标(KPD,及时进行运维操作。慢SQ1.发现与分析:SQ1.diag是一个SQ1.语句执行时间预测工具,通过模板化方法,实现在不获取SQ1.语句执行计划的前提卜.,依据语句逻辑相似度与历史执行记录,预测SQ1.语句的执行时间。慢SQ1.发现分为两个主要过程。在训练阶段,通过历史SQ1.数据对自编码模型,聚类模型及执行时间序列模型进行AI模型训练,训练后的模型用于后续慢SQ
41、1.发现的推理过程。推理阶段,用户输入待预测负载,系统根据训练阶段生成的自编码模型对待预测负载进行编码,根据训练阶段生成的聚类模型进行分类,进而根据每类的历史信息预测SQ1.语句的执行时长,并判断和发现执行效率低、性能不佳的SQ1.语句。OPenGaUSSS慢SQ1.分析工具结合OPenGaUSS自身特点,融合DBA慢SQ1.诊断经验,能同时按照可能性大小输出多个根因并提供针对性的建议,简化运维人员的工作,智能索引推荐:。PenGaUSS智能索引推荐,可对单Quei7查询或包含多条DM1.语句的WOrkIoad级别查询,通过AI算法自动学习与智能推荐索引优化方案。虚拟索引功能可通过优化器建立模
42、拟索引,用以评估该索引对指定行询语句的代价影响,为用户提供优化、可靠的索引建议。智能参数调优与诊断:OpenGauss集成基AI的参数调优与诊断工具,通过深度强化学习和全局搜索算法等A1.技术,自动智能的提供最佳数据库参数配置方案。该工具可以在多场景下,快速给出当前负载的参数配置,减少DBA工作量,提升运维效果。参数调优与诊断工具包含三种运行模式:ReeOmmend模式、Train模式、TUne模式。ReCommeI1.d模式,用户在数据库系统中直接获取当前正在运行的work1.oad特征信息,根据上述特征信息生成参数推荐报告:提示当前数据库中不合理的参数配置和潜在风险、输出根据当前正在运行的WOrk1.Oad行为和特征、输出推荐的参数配置。Train模式,通过用户提供的benchmark信息,不断地进行参数校正和benchmark执行。通过反复的迭代训练强化学习模型,以便用户后期通过IIme模式加载该模型进行调优。TUne模式,使用优化