双剑合璧:
openGauss
的
AI4DB
与
DB4AI
AI
特性是
openGauss
的关键特性之一,在过去的版本中,
openGauss
先后开源了
AI
参
数自调优和慢
SQL
发现功能,获得了广大开发者和用户的关注。为了进一步构筑完善的
AI
能力,在
openGauss
的新版本中,我们针对
AI4DB
和
DB4AI
两大特性,增加了全新的功能。
AI4DB
特性旨在通过
AI
技术赋能
openGauss
,使用户操作和管理数据库更加简便,为
用户提供端到端的自运维和自优化套件。在新版本中,我们增加了数据库智能索引推荐和
数据库监控与异常检测两项功能。
DB4AI
特性是在数据库内提供
AI
计算能力,通过数据库
内置
AI
算法为用户提供普 惠
AI
能力 , 新 版本中增 加 了 数据库 内 机 器学习算 法 框 架
DeepSQL.
下面将依次详细介绍前述新功能。
一、
AI4DB
数据库智能索引推荐
在大型关系型数据库中,索引的设计和优化对
SQL
语句的执行效率至关重要。一直以
来,数据库管理人员往往基于以往的知识和经验,人工设计和调整索引。这样消耗了大量
的时间和人力,同时人工设计也往往不能确保索引是最优的。
openGauss
提供了智能索引推荐功能,该功能将索引设计的流程自动化、标准化,可
针对单条查询语句或工作负载推荐最优的索引,提升作业效率,减少数据库管理人员的运
维操作。
openGauss
的智能索引推荐功能可覆盖多种使用场景,它包含以下三个子特性:
1.
针对单条查询语句的索引推荐
该特性可基于查询语句的语义信息和数据库的统计信息,对用户输入的单条查询语句
生成推荐的索引。
用户可通过
openGauss
的系统函数“
gs_index_advise”
来方便地使用该功能,该功能支持
单列索引和联合索引的推荐。具体示例如下,索引的推荐结果包括相应的表名和列名:
2.
虚拟索引
该特性可模拟创建真实索引,同时避免创建真实索引所需的时间和空间开销,用户可
通过优化器评估虚拟索引对指定查询语句的影响。
本特性提供了包含虚拟索引的创建、删除、性能和存储空间开销评估在内的一系列操
作,用户可通过使用
openGauss
的系统函数灵活地操作虚拟索引。部分操作的示例如下:
1)
使用系统函数“
hypopg_create_index”
创建虚拟索引,输入参数为创建索引的
SQL
语句。
2)
通过对特定的查询语句执行
EXPLAIN
,用户可根据优化器给出的执行计划评估该
索引的性能。
创建虚拟索引前的执行计划是:
评论