首页 > 其他分享 >openGauss AI 技术分享(三)

openGauss AI 技术分享(三)

时间:2024-10-23 16:21:39浏览次数:3  
标签:语句 index workload AI 推荐 索引 openGauss 分享 李然

大家好,欢迎大家收看本文

对于初学者入门的学习,一些理论不容易理解或记住,所以本节课程【创新】采用了【正、反对比联想记忆】的方法,
引入模拟场景中的肖荏盖的小故事。(模拟场景为虚构演绎,仅供教学,不要对号入座,懂不懂?明白吗?)

【数据库的功能都是正向的,模拟场景中的肖荏盖做的事情都是反向的。】

3.Index-advisor索引推荐

索引推荐,顾名思义,通俗的说,就是电脑帮你选出来一些可以创建的索引,推荐给你,至于是否要创建这些索引,还得看你。
这里就要给大家举一个模拟场景的中的反向小故事,《芸芬若只如初见》
芸芬愁砚虽然是一家技术很low的公司,但是,其内部有一个小团体,叫做“芸芬海盗团”,芸芬海盗团全部成员,会在第一章的结尾给大家介绍
这里先介绍一位响当当的人物:李然哲,您别看这名字挺文气,这可是年级轻轻,就加入芸芬海盗团的一位臭名昭著的海盗,其恶行也加速了芸芬愁砚的衰落


那么这位李然哲,他到底做了什么人神共愤的事情,会导致加速了芸芬愁砚的衰落呢?
我们不知道李然哲是通过什么手段加入的芸芬海盗团,但是,我们知道了,李然哲对于他的手下,都做了什么事情。
芸芬愁砚,一般会定期发布招聘信息,这时就会有很多人去芸芬愁砚面试。
其中有一位,是擎天柱的朋友,殷天布,是一位技术不错的小伙子。
他去芸芬愁砚,在技术上很轻松就拿捏了面试官李然哲,李然哲从来没见过技术这么好的人还愿意去他们芸芬愁砚这种公司的,不由得心里一惊。
李然哲马上犯难了,这个人要是来了,早晚压他一头,可是技术这么好的人还愿意来芸芬愁砚这种公司的,真的是百里无一,怎么拒绝掉殷天布,成了一个难题。
思来想去,想不出来,那个时候,李然哲还是有心思提升技术的,还没有变得那么坏,还没有黑化到那种程度,这个时候同为芸芬愁砚海盗团的金水纹(此人及其心黑),就给李然哲出了个主意。
是什么主意,能让李冉哲辗转一夜未眠,才对殷天布说出口的呢?
毕竟当时李然哲还是要一些脸面的奶油小生,还没有经历过海盗团的暴风雨级黑心熏陶。
但是,李然哲思来想去,为了能立足于芸芬海盗团,也不得不这么做了。
“殷天布是吧,你的技术还不错,但是要进芸芬愁砚,可是有一个不成文的规定,你明白吗?”李然哲问道。
“不明白”,殷天布一脸疑惑的电话里说道。
“你得会办事,老弟弟,你侄子下个月过生日,就在你入职第一个月时,你得来参加生日晚宴啊,但是我估计你到时候很可能项目太忙,来不了,你放心,我会打包一份给你叫闪送送过去的,但是你得明白我的意思啊”李冉哲说这话时,脸已经通红的像抹了辣椒一样。可见此时李然哲尚存良知。
“什么,还有这种说法,那我是不是得意思意思?”殷天布作为一个技术人员,双方这个话已经说得很明了。
“我给你发一个数字,你就准备一下吧,如果你觉得可以接受的话,我可以立刻推荐你入职芸芬愁砚”李冉哲说道。此时,他那火辣辣的脸庞,已经逐渐降温,逐渐恢复了正常。
“这么多,那还是算了吧,不去芸芬愁砚了”殷天布愤怒的回道,“你还是别推荐了,哼”
所以,技术好的人,都被金水纹、李然哲这种人挡在了门外,那么芸芬愁砚上市失败,甚至遭遇滑铁卢,也是罪有应得了。
所以提醒大家,不要向模拟场景中的芸芬愁砚和肖荏盖全家学习。

言归正传

3.1 索引提供指向存储在表的指定列中的数据值的指针,如同图书的目录,能够加快表的查询效率;
3.2 Index-advisor索引推荐的功能,共包含三个子功能:

3.2.1 单query索引推荐
 单query索引推荐
1> 单query索引推荐功能支持用户在数据库中直接进行操作,单query索引推荐功能基于查询语句的语义信息和数据库的统计信息,对用户输入的单条查询语句生成推荐的索引。
2> 单query索引推荐功能涉及的函数接口

函数名:gs_index_advise
参数:SQL语句字符串
功能:针对单条查询语句生成推荐索引
使用方法:select * from gs_index_advise('select a from gaiem_sfq where b=42');

3.2.2 虚拟索引
虚拟索引
虚拟索引功能支持用户在数据库中直接进行操作,虚拟索引功能将模拟真实索引的建立,避免真实索引创建所需的时间和空间开销,
用户基于虚拟索引,可通过优化器评估该索引对指定查询语句的代价影响。
是否开启虚拟索引功能,通过参数enable_hypo_index设定。

虚拟索引功能涉及的系统函数接口有:
1> hypopg_create_index;创建虚拟索引
2> hypopg_display_index;显示所有创建的虚拟索引信息
3> hypopg_drop_index;删除指定的虚拟索引
4> hypopg_reset_index;清除所有虚拟索引
5> hypopg_estimate_size;估计指定索引创建所需的空间大小

使用方法:
select * from hypopg_create_index('create index on t1(x)');
explain select y from t1 where x=10;
set enable_hypo_index=on;
explain select y from t1 where x=10;
通过对比两个执行计划,可以分析出该索引是否会降低指定查询语句的执行代价,从而考虑是否创建对应的真实索引

3.2.3 workload级别索引推荐
workload级别索引推荐
对于workload级别索引推荐,用户可通过运行数据库外的脚本使用此功能,
该功能将包含有多条DML语句的workload作为输入,最终生成一批可对整体workload的执行表现进行优化的索引。

workload级别索引推荐使用前提:
1> 数据库状态正常、客户端能够正常连接
2> 当前执行用户下安装有gsql工具,该工具路径已被加入到PATH环境变量中
3> 具备python 3.6+的环境

使用步骤
1> 准备好包含有多条DML语句的文件作为输入的workload,文件中每条语句占据一行。
2> 用户可从数据库的离线日志中获得历史的业务语句。
运行python脚本index_advisor_workload.py,命令如下:
python index_advisor_workload.py [p PORT][d DATABASE][f FILE][--h HOST]
[-U USERNAME][-W PASSWORD][--max_index_num MAX_INDEX_NUM][--multi_iter_mode]

示例
python index_advisor_workload.py 6001 posgtres GaiemSfq.txt --max_index_num 10 --multi_iter_mode
 

标签:语句,index,workload,AI,推荐,索引,openGauss,分享,李然
From: https://blog.csdn.net/openGauss0809/article/details/143161484

相关文章

  • 真心安利所有老师都去用这个AI工具!!!
    让我看看还有谁在加班写教案、教学计划、家访记录blabla一系列材料呢!看到这里你的福气就来了!AI时代,有的苦咱们真的不必吃!“笔墨写作”AI产品——真正的新质生产力。集AI写教案、教学计划、主题班会策划书、教研记录、家访记录以及海量教案课件、免费PPT/展板模板等功能于一身......
  • 生产环境中raid实际配置
    生产环境中raid实际配置如果对运维课程感兴趣,可以在b站上、csdn或微信视频号上搜索我的账号:运维实战课程,可以关注我,学习更多免费的运维实战技术视频项目1.Raid实际配置:(DELLR710)启动服务器——根据提示按ctrl+R(当dell界面过去时同时按crtl+R)进入raid配置界面,如下图:根......
  • (分享源码)计算机毕业设计必看必学 上万套实战教程手把手教学JAVA、PHP,node.js,C++、pyth
    摘 要大数据时代下,数据呈爆炸式地增长。为了迎合信息化时代的潮流和信息化安全的要求,利用互联网服务于其他行业,促进生产,已经是成为一种势不可挡的趋势。在网络小说的要求下,开发一款整体式结构的小说网站,将复杂的系统进行拆分,能够实现对需求的变化快速响应、系统稳定性的保......
  • 第七:APP自动化工具-Airtest连接ios系统实操
    一.环境搭建1.苹果电脑(mac笔记本)2.苹果手机3.ios-Tagent3.1.作用:在手机端创建webDriver服务器,可以远程ios设备,定位UI元素3.2.下载地址:[https://github.com/AirtestProject/iOS-Tagent](https://github.com/AirtestProject/iOS-Tagent)3.3.依赖运行:x-code4.x-......
  • 百度大模型算法工程师二面:我的亲身经历分享!
    百度大模型算法工程师面试题应聘岗位:百度大模型算法工程师面试轮数:第二轮整体面试感觉:偏简单面试过程回顾1.自我介绍在自我介绍环节,我清晰地阐述了个人基本信息、教育背景、工作经历和技能特长,展示了自信和沟通能力。2.Leetcode题具体题意记不清了,但是类似【2......
  • Java程序员最好的AI框架,伴随着Spring到来了
    SpringAI:简化AI集成的Java框架在过去,Java缺乏一个优秀的AI应用框架,这使得开发者在整合不同AI提供商的服务时面临诸多不便。SpringAI的出现填补了这一空白。它是一个专为AI工程设计的应用框架,旨在将Spring生态系统的设计原则(如可移植性和模块化)引入到AI领域,并提......
  • miniqmt 函数分享-2. 执行过程跟踪和记录
    2.执行过程跟踪和记录函数介绍:Python日志配置和追踪模块,名为logger.py。它使用loguru库来实现日志记录,并提供了一个上下文管理器TraceContext用于追踪函数的执行。主要部分:TraceContext类:功能:用于追踪函数执行的上下文信息。generate_trace_id方法:......
  • 一站式AI自动化剪辑 内置多种功能 永久免费
    AI影视解说自动化剪辑工具,功能非常强大,吊打所有视频解说,解放双手,从我开始【资源名称】:纳拉托艾【资源大小】:1.27【资源版本】:0.1【测试机型】:Win11.【资源介绍】:一站式AI影视解说,自动化剪辑,自动生成视频,自动进行解说,功能强大【下载链接】:https://pan.quark.cn/s/3aec2......
  • Unity Shader-GodRay,体积光(BillBoard,Volume Shadow,Raidal Blur,Ray-Marching)
    前言好久没有更新博客了,经历了不少事情,好在最近回归了一点正轨,决定继续UnityShader的学习之路。作为回归的第一篇,来玩一个比较酷炫的效果(当然废话也比较多),一般称之为GodRay(圣光),也有人叫它云隙光,还有人叫它体积光(探照灯)。这几个名字对应几种类似的效果,但是实现方式相差甚远。先来......
  • 体制内打工人高效工作指南:如何利用AI大模型提升生产力
    看到这个问题,作为体制内打工人的我,想讲一下心路历程。之前的我对待AI,是一种嗤之以鼻的态度,觉得它不是人工智能(因为帮不上忙),而是人工智障。何以得出这个极端的结论,原因无他——早前的国内大模型发展水平不高,用哪一家都差不多,充其量是个比较能归纳总结的“搜索引擎2.0版本......