当前位置:网站首页>openGauss AI能力升级,打造全新的AI-Native数据库
openGauss AI能力升级,打造全新的AI-Native数据库
2022-06-11 15:36:00 【Gauss松鼠会】
数据库与AI结合起来会迸发出什么样的火花?不同的数据库厂商、开源社区、高校师生们的理解也都不尽相同。虽然在精确的概念上难以形成统一的标准,但是在总体的演进思路上却是一致的。对于openGauss来说,自从在社区开源第一个版本开始,openGauss便不断地在该领域演进并贡献代码,对于此次开源的openGauss 3.0.0 版本来说也不例外。
在3.0.0版本中,openGauss的AI领域将在多个方向演进:
1. 整合现有AI4DB功能,开源openGauss数据库自治平台;
2. 重构现有AI4DB能力,实现插件化、支持服务式的运行模式;
3. 支持Prometheus 生态;
4. 新增慢SQL根因分析、时序预测等新特性,优化现有的AI能力;
5. DB4AI功能支持更多算法。
DB4AI原生引擎进一步升级
在openGauss 3.0.0中,DB4AI原生引擎支持更多机器学习算法,例如支持SVM的非线性核函数,支持XGBoost等等。同时,openGauss还提供了Explain接口,可以观察到模型的信息。
AI4DB支持服务化、插件化
原有的openGauss AI4DB 能力是离线工具形态,不能在后台对数据库进行完整的监控,也不能定期地对数据库进行问题发现。最新版本,openGauss实现了后台监控服务,并在后台定期地检查数据库系统的状态,从而形成了自治数据库平台DBMind。通过离线计算的形式,将诊断结果保存,用户可以通过Grafana等软件进行可视化,从而第一时间发现问题并获知问题的根因。
由于需要在后台定期监控openGauss数据库系统的运行状态,因此,需要对接监控平台以便采集数据库监控指标并进行离线计算。故而,在3.0.0版本中,openGauss实现了两款exporter用于与Prometheus平台进行对接,其架构形态为:

其中,openGauss-exporter 用于获取数据库系统的监控指标(metric),reprocessing-exporter用于对存储在Prometheus中的数据进行二次加工。上述两个exporter的数据,可以通过Prometheus定期采集获取。DBMind系统定期从Prometheus中获取时序数据,并在DBMind部署机上进行并行计算。待计算完成后,将计算结果存储在元数据库(meta-database)中。之后,用户可以从元数据库中获取诊断结果,更进一步地,可以通过配置Grafana等进行可视化。

如上图所示,是一种基于元数据库中的数据,采用Grafana进行可视化的示例。
与此同时,openGauss还全面整合了现有的AI能力,并重新设计了一种插件化的模式。例如,用户希望调用参数调优功能,基于强化学习来调试数据库的参数,可以通过下述命令来实现:
gs_dbmind component xtuner tune …通过上述gs_dbmind 命令,可以调用所有的AI功能,通过component 子命令,可以调用具体的AI功能。用户可以通过下述命令来查看帮助详情:
gs_dbmind component --help通过上述设计,openGauss社区开发者如果希望贡献某种数据库AI功能,则只需要保证接口能被gs_dbmind获取到即可。同时,开发的插件还可以调用DBMind提供的全部API,例如从Prometheus 中获取数据的dai (data access interface)接口,向元数据库(meta database)中插入数据的 dao (database access object)接口等。
AI4DB 现有AI能力全面提升
在此次发布的3.0.0版本中,openGauss 对现有的索引推荐、时序预测等功能也进行了全面升级。补充了以往版本中的疏漏场景。同时,提供慢SQL根因分析与推荐功能,帮助DBA迅速识别出慢SQL,并依据监控到的数据库运行指标,通过AI特征库识别算法创新地给出慢SQL产生的原因和置信度,同时还给出优化建议。
为下一步开发全面的数据库AI自治平台打下基础
如上文所述,在openGauss 3.0.0版本中,创新性地完成了对历史AI能力的整合,丢弃历史研发过程中遗留下的包袱,轻装上阵,创新性地实现了可服务化、可离线式、插件式、自由组装的DBMind平台,并跟随数据库安装包一同发布。对于诊断后的结果,用户可以自行采用Grafana等工具进行自定义地可视化(当然,我们也会提供Grafana示例)。
这为我们未来更进一步地将DBMind平台升级打下基础,预计本年度openGauss会将更多AI功能丰富到该平台中,同时将该平台从现有代码仓库中独立出来,并提供原生的Web前后端展示平台,同时支持自修复功能,让用户真正体会到一键式、开箱即用的数据库自动驾驶。
- END -
边栏推荐
- 07 _ Functions and disadvantages of row lock: how to reduce the impact of row lock on performance?
- uniapp滚动条置顶实现
- 从0到1稳稳掌握大厂主流技术,年后涨薪不是必须的吗?
- Social software soul withdraws its IPO application: Tencent is a major shareholder
- MySQL用户权限总结【用户授权必会】
- Introduction and use of etcd
- 【创建型模式】抽象工厂模式
- openGauss数据库性能调优概述及实例分析
- Design and implementation of data analysis system
- The most egregious error set of tone codes
猜你喜欢

Lick the dog till the last one has nothing (linear DP)

Qcustomplot 1.0.1 learning (3) - plotting quadratic functions

leetcode 120. Triangle minimum path sum

河北 黄金寨景区新增“AED自动除颤器”保障游客生命安全!

File is in use and cannot be renamed solution

Everything about JS functions

JVM基础概念入门
![[system safety] XLII PowerShell malicious code detection series (4) paper summary and abstract syntax tree (AST) extraction](/img/d9/67ad40ba63de8006b67e51b0c82a84.png)
[system safety] XLII PowerShell malicious code detection series (4) paper summary and abstract syntax tree (AST) extraction

【Azure 应用服务】NodeJS Express + MSAL 实现API应用Token认证(AAD OAuth2 idToken)的认证实验 -- passport.authenticate()

LoveLive! Published an AI paper: generating models to write music scores automatically
随机推荐
leetcode 120. Triangle minimum path sum
Cf662b graph coloring problem solution
[mysql_11] addition, deletion and modification of data processing
Daily blog - wechat service permission 12 matters
uniapp开发微信小程序,从构建到上线
一文教会你数据库系统调优
openGauss数据库闪回功能验证
Talk about the principle of QR code scanning login
Arthas practice documentation
NVIDIA R & D director: how does AI improve chip design?
Google Earth engine (GEE) - create a simple panel demo to display the map
Qcustomplot 1.0.1 learning (3) - plotting quadratic functions
【创建型模式】工厂方法模式
从内核代码了解SQL如何解析
Iclr2022| small sample fine tuning method of language model based on differentiable hints
2022 Tibet's latest junior firefighter simulation test question bank and answers
Failed to create pod sandbox: rpc error: code = Unknown desc = [failed to set up sandbox container..
See from the minute, carve on the details: Exploration of SVG generated vector format website icon (favicon)
[0006] titre, mots clés et description de la page
Uniapp développe des applets Wechat, de la construction à la mise en ligne