CN115757464A - 一种基于深度强化学习的智能物化视图查询方法 - Google Patents

一种基于深度强化学习的智能物化视图查询方法 Download PDF

Info

Publication number
CN115757464A
CN115757464A CN202211448162.2A CN202211448162A CN115757464A CN 115757464 A CN115757464 A CN 115757464A CN 202211448162 A CN202211448162 A CN 202211448162A CN 115757464 A CN115757464 A CN 115757464A
Authority
CN
China
Prior art keywords
query
materialized view
tensor
sub
query statement
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202211448162.2A
Other languages
English (en)
Other versions
CN115757464B (zh
Inventor
刘雨蒙
赵怡婧
万梓航
王碧聪
张宝民
王潮
严林涛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Institute of Software of CAS
Original Assignee
Institute of Software of CAS
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Institute of Software of CAS filed Critical Institute of Software of CAS
Priority to CN202211448162.2A priority Critical patent/CN115757464B/zh
Publication of CN115757464A publication Critical patent/CN115757464A/zh
Application granted granted Critical
Publication of CN115757464B publication Critical patent/CN115757464B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种基于深度强化学习的智能物化视图查询方法。本方法为:1)特征编码模块将数据库的所选历史查询负载中每一查询语句进行标记和编码,得到包含位置标记信息的查询负载的张量表达;2)离线训练模块基于A3C算法对张量表达进行处理,得到每条查询语句中最佳物化视图位置对并将最佳物化视图位置对所对应的子查询部分进行物化视图,得到每一子查询部分对应的物化视图子查询;3)在线推荐查询模块对待处理的查询语句a,查找与该查询语句a匹配的若干物化视图子查询推荐给用户;然后根据用户选取的物化视图子查询所对应的子物化视图查询数据库,并将查询结果反馈给用户。本发明大大提高了用户的查询效率,达到优化查询的效果。

Description

一种基于深度强化学习的智能物化视图查询方法
技术领域
本申请属于数据库查询领域,具体涉及一种基于深度强化学习的智能物化视图查询方法。
背景技术
近年来,大数据对传统数据库和数据库管理系统产生冲击,简单查询负载对大容量数据的查询不能满足用户的分析需求。用户的决策分析需要对关系数据库进行大量的查询计算才能获得结果,因此面对复杂查询负载的查询效能问题亟待解决。对于大规模数据的数据库,如分析型数据库OLAP:输入查询负载时,某些查询结果具有多次重复的可能性,形成大量的查询计算冗余;同时,数据库的反馈结果对用户的输入查询负载动态响应能力差,缺乏根据历史查询进行查询优化并为用户进行可视化反馈的能力。
针对批量查询负载的优化方法很多,其中一种是利用物化视图的技术降低查询负载中的冗余代价。视图是数据库中的一个虚拟表,其内容由查询定义,和真实表相同,视图包含一系列带有名称的行数据和列数据,但是视图不在数据库中以存储的数据值集形式存在。视图的作用类似于筛选,定义视图的筛选可以来自当前或其它数据库的一个或多个表或其它视图。
马尔可夫决策过程是序贯决策的数学模型,用于在状态系统具有马尔可夫性质的环境中模拟智能体可实现的随机性策略与回报。在马尔可夫决策过程的模拟中,智能体会感知当前的系统状态,按策略对环境实施动作,从而改变状态并得到奖励,奖励随时间的累积称为回报。将决策查询负载中最佳物化视图位置的问题建模为马尔可夫决策过程,以此获得最佳位置进行物化视图。
演员-评论员AC算法是一种结合策略梯度和时序差分学习的强化学习方法。其中演员是指策略函数,即学习一个策略以得到尽可能高的回报,策略函数用策略梯度算法实现,输入的是当前状态,输出的是一个动作;评论员是指价值函数(也称为值函数),用于对演员策略函数输出的动作进行估计,价值函数用时序差分学习算法实现,指导演员的下一步行为;AC算法的训练目标是最大化累计回报的期望。基于价值函数,演员-评论员可以进行单步参数更新,不需要等到回合结束。优势演员-评论员A2C算法中使用优势函数作为值函数,其可以衡量选取动作值和所有动作平均值好坏的指标。异步优势演员-评论员A3C算法分为全局网络和若干工作网络,若干工作网络同时训练,可以大幅提升训练效率。每个工作网络从全局网络中获取参数,并与环境进行交互,利用每个工作网络训练出的梯度,对全局网络的参数进行更新,每个工作网络都是一个上述的优势演员-评论员A2C算法。
发明内容
针对现有技术中存在的问题,本发明的目的在于提供一种基于深度强化学习的智能物化视图查询方法,能够选择查询负载的每条查询语句中最优物化视图位置并进行物化视图,并在用户查询时推荐子物化视图替代对应的物化视图子查询。
本发明应用深度学习模型和深度强化学习方法到数据库物化视图和查询负载中,其中查询负载由海量查询语句组成:深度学习模型可以对查询负载进行特征提取和张量编码;深度强化学习算法可以选择查询语句中最优物化视图位置对并将该位置对中间的部分进行物化视图。在查询中使用物化视图可以极大提高查询效率,去除冗余查询计算,降低不必要的的查询代价;同时在用户输入查询语句中部分语句时,推荐相关的物化视图子查询,并调取存储中的子物化视图,提高用户的查询效率,达到优化查询的效果。
本申请采用的技术方案是:
一种基于深度强化学习的智能物化视图查询方法,其步骤包括:
1)特征编码模块将数据库的所选历史查询负载中每一查询语句分别分割、标记,得到具有位置标记的查询语句,将查询负载中任意两个不重复的位置标记作为一个位置标记对,判断每一位置标记对之间的内容是否可生成视图,如果可生成视图则保留对应的位置标记对,否则删除对应的位置标记对;然后对带位置标记的查询负载中每条查询语句进行特征提取,得到词嵌入张量、位置编码张量和位置标记张量;将所得词嵌入张量、位置张量和位置标记张量拼接后输入深度学习模型进行编码,得到包含位置标记信息的查询负载的张量表达;
2)离线训练模块基于深度强化学习算法中的异步优势演员-评论员A3C算法对包含位置标记信息的查询负载的张量表达进行处理,得到每条查询语句中最佳物化视图位置对并将最佳物化视图位置对所对应的子查询部分进行物化视图,得到每一子查询部分对应的物化视图子查询;将每条查询语句对应的一个或多个物化视图子查询以物化视图的形式进行存储;
3)在线推荐查询模块对待处理的查询语句a,查找与该查询语句a匹配的若干物化视图子查询推荐给用户;然后根据用户选取的物化视图子查询所对应的子物化视图查询数据库,并将查询结果反馈给用户。
进一步的,所述特征编码模块对查询语句根据谓词、表名、列名、行名进行分割,并在其间隔进行标号,作为查询语句的位置标记;将分割的各部分转换成固定维度的向量作为所述词嵌入张量;所述位置编码张量用于标记查询负载分割后在不同位置时语义不同的部分;所述位置标记张量用于表示查询负载中可以生成视图的位置对。
进一步的,所述深度学习模型为transformer模型并对transformer模型的编码部分进行并行复用,得到具有多个并行编码部分的transformer模型;所述特征编码模块将词嵌入张量、位置张量和位置标记张量拼接后输入transformer模型的各编码部分进行查询负载的编码,得到包含位置标记信息的查询负载的张量表达。
进一步的,所述离线训练模块得到每一子查询部分对应的物化视图子查询的方法为:
21)建立全局网络和若干工作网络,每个工作网络采用优势演员-评论员A2C算法,所述优势演员-评论员A2C算法由策略网络和价值网络两部分构成;所述策略网络的参数根据公式
Figure BDA0003950256360000031
进行更新;其中,θa表示策略网络参数,
Figure BDA0003950256360000032
表示对网络参数求偏导,πθ(s,a)表示在状态s下执行动作a的策略,A(s,a)表示在状态s下执行动作a的优势函数;A(s,a)≈γt+εV(st+1)-V(st);价值网络参数根据公式
Figure BDA0003950256360000033
进行更新;其中,θv表示价值网络参数,rt表示即时奖励,ε为[0,1]间的参数,V(st)表示在状态st下的值函数,V(st+1)表示状态st+1的值函数;查询语句Q中第s种创建物化视图Vs情况下的总效能
Figure BDA0003950256360000034
其中,为
Figure BDA0003950256360000035
为使用物化视图的收益,
Figure BDA0003950256360000036
为在查询负载上建立第s种物化视图情况的总代价;
22)每个工作网络完成步训练后将参数更新传入全局网络,对全局网络的参数进行更新,工作网络再从全局网络中获取参数;
23)循环步骤22),直到达到预设的强化学习迭代次数n,得到查询负载中每条查询语句里的最佳子物化视图以及对应的物化视图子查询。
进一步的,所述策略网络用于决策选择查询负载中每条查询语句进行物化视图的位置对,策略网络的架构包括输入层、中间层以及输出层,输入层为全连接层,输入层的输入状态值包括:带有位置标记的查询负载{Q},带有位置标记的查询负载的矢量化表达
Figure BDA0003950256360000037
每条查询语句对应位置是否可被物化视图的集合{Φ},其中
Figure BDA0003950256360000038
Figure BDA0003950256360000039
表示查询语句第i种情况下位置对执行物化视图的置信度,查询负载中每条查询语句上建立物化视图情况的总代价集合O,一条查询语句上建立物化视图情况的代价集合
Figure BDA00039502563600000310
查询负载中每条查询语句在不同物化视图情况下的收益集合G,一条查询语句在不同物化视图情况下的收益集合
Figure BDA00039502563600000311
中间层为全连接层;输出层为激活函数softmax层,输出为在查询负载中每一查询语句的位置对上建立物化视图的概率。
进一步的,所述价值网络用于产生选择每条查询语句进行物化视图的位置对的决策值函数,网络结构包括输入层、中间层和输出层,其中输入层为全连接层,输入层的输入状态值包括:带有位置标记的查询负载{Q},带有位置标记的查询负载的矢量化表达
Figure BDA00039502563600000312
每条查询语句对应位置是否被物化视图的集合{Φ},其中
Figure BDA00039502563600000313
查询负载中每条查询语句上建立物化视图情况的总代价集合O,一条查询语句上建立物化视图情况的代价集合
Figure BDA00039502563600000314
查询负载中每条查询语句在不同物化视图情况下的收益集合G,一条查询语句在不同物化视图情况下的收益集合
Figure BDA0003950256360000041
中间层为全连接层;输出层为线性层,输出值是每条查询语句当前状态下价值函数的评估值。
一种服务器,其特征在于,包括存储器和处理器,所述存储器存储计算机程序,所述计算机程序被配置为由所述处理器执行,所述计算机程序包括用于执行上述方法中各步骤的指令。
一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现上述方法的步骤。
本发明的有益效果是:
本发明将查询负载中海量查询语句针对位置标记的矢量化编码表达后,在大幅降低查询冗余的同时,在整条查询语句中决策最佳物化视图的位置,而不通过最佳物化视图最小子查询后拼接出查询语句的最大覆盖法进行优化。这样方法可以解决最小子查询不是查询语句中最佳物化视图位置,提高在查询语句中决策选择生成子物化视图的精准度。
附图说明
图1为本发明技术方案主体流程图。
图2为本发明特征编码模块具体流程示意图。
图3为查询语句位置标记示意图。
图4为位置标记张量生成示意图。
图5为A3C算法流程示意图。
图6为本发明子网络中算法流程示意图。
具体实施方式
下面结合附图对本发明进行进一步详细描述,所举实例只用于解释本发明,并非用于限定本发明的范围。
本发明技术方案主体流程图如图1所示:
步骤一:基于位置标记信息的查询负载建模及特征提取和编码模块
步骤一的具体流程如图2所示,输入的查询负载经过选择器,其中选择器的作用有两个:查询语句位置标记示意图如图3所示,包括:将查询语句输入根据谓词、表名、列名、行名等进行分割,并在其间隔进行标号,称作该条查询语句的位置标记,查询负载中每条查询语句都进行上述操作;位置标记对表示查询负载中任意两个不重复的位置标记,对所有位置标记对进行枚举筛选,判断是否可以生成视图,保留可以将其中间部分生成视图的查询语句的位置标记对,此部分子查询形成的视图称作该条查询语句的物化视图子查询,经过选择器的查询负载称作带有位置标记的查询负载。
对带有标记的查询负载中每条查询语句进行特征提取,提取结果分别为词嵌入张量Tt、位置编码张量Tp和位置标记张量Tm。词嵌入张量Tt将分割的查询语句中各个部分转换成固定维度的向量,一般维度为768,其中包括谓词、表名、列名等,并将特殊词嵌入:开头[CLS]和结尾[SEP],插入到分割好的词嵌入张量Tt中,其中[CLS]标志放在第一个查询语句的句首,[SEP]标志用于分开两个输入的查询语句;位置编码张量Tp是给模型传递查询语句中分割后每部分输入顺序的信息,添加其在语句中的位置信息,标记查询语句分割后一些在不同位置时语义不同的部分,如语义不同,则进行区分;位置标记张量Tm表示查询负载中可以生成视图的位置对,如图4所示,开始每一处标记前插入特殊词嵌入[ANRX]表示开始新的一处位置,X代表每一处位置以区分不同位置,之后插入可和该位置形成视图的对应位置标记,如5或9,结果为12×768维的张量,根据词表每个词被转化为768维的向量。将查询负载的词嵌入张量Tt、位置张量Tp和位置标记张量Tm拼接作为张量输入,使用多个transformer模型的编码部分进行查询负载的编码,词嵌入张量中的[CLS]和[SEP]可对输入的查询语句进行标记和分辨。本发明对transformer模型的编码部分进行并行复用,得到具有多个并行编码部分的transformer模型,从而对查询负载进行更合理的上下文关联的矢量化编码,带有更多需要的特征提取结果,如词嵌入、位置标记等。其中,多头注意力机制是transformer模型中的重要部分,其通过每个头关注不同的部分,捕捉不同的特征信息,进而利用多个头的信息进行求和计算,有助于神经网络捕捉到更丰富的特征信息。transformer模型输出为包含位置标记信息的查询负载的张量表达。
步骤二:基于异步优势演员-评论员的最佳子物化视图离线训练模块
离线训练是基于深度强化学习中的异步优势演员-评论员A3C算法,A3C算法流程如图5所示,对特征编码标记得到的矢量化表达进行训练,寻找查询负载中每条查询语句对应的最佳物化视图子查询。在一个复杂的查询语句中,最优解对应的物化视图位置对状态需要大量查询验证。每条查询语句中未被物化视图的部分和物化视图部分的数量会改变当前系统的存储占用和已物化视图的状态,基于数据库存储的实际情况,该决策过程在数学上可建模为马尔可夫决策过程。采用深度强化学习中的异步优势演员-评论员A3C算法对物化视图位置对进行自适应决策训练,该算法相比较于深度Q网络DQN算法,在提升性能的同时加快了计算的速度。将异步优势演员-评论员A3C算法训练得到的查询负载对应的最优物化视图位置对进行物化视图,并将其存入存储,当用户在线查询时可替换用户的输入查询负载。
根据CPU和内存的消耗来决策物化视图的位置对以及物化视图与否。在查询中,数据库系统通过对不同表进行检索和创建视图时,会存在CPU以及内存的消耗。物化视图后对应查询会被视图进行替换,减少选择表、连接表或者表中检索等操作,查询时间和系统损耗也会相应减少。
不考虑查询语句中无法生成物化视图的部分,对于一条查询语句Q,创建视图Vs,Vs表示查询语句Q中第s种创建物化视图的情况,qs表示Vs创建视图情况下对应的子查询集合,
Figure BDA0003950256360000061
表示Vs情况下的第i个子查询,
Figure BDA0003950256360000062
在创建视图Vs的情况下不使用物化视图的查询过程中,在CPU和内存中查询qs的代价分别用Cu(qs)和Cm(qs)来表示,Cu(qs)表示查询不使用物化视图时qs在CPU中的代价,Cm(qs)表示查询不使用物化视图时qs在内存中的代价,Cu,m(qs)表示查询不使用物化视图时qs在CPU和内存中的总代价。视图Vs中的第i个子物化视图为
Figure BDA0003950256360000063
其中子物化视图是对应物化视图子查询的物化形式,如果物化视图Vs中存在N个子物化视图,则i=1~N;如果当前物化视图Vs不存在子物化视图,则N=0。
假设物理机存储1比特消耗的代价为μ,一个子物化视图的大小是
Figure BDA0003950256360000064
那么一条查询语句中第s种物化视图情况的存储总代价是
Figure BDA0003950256360000065
在查询语句上建立第s种物化视图情况的总代价由该情况下物化视图的存储总代价和使用查询找到该物化视图对应的子查询集合qs的代价组成
Figure BDA0003950256360000066
使用物化视图来查询的优势是,通过子物化视图直接获取查询语句中物化视图子查询的查询结果,在下一次的查询任务中避免重新执行该物化视图子查询的查询。所以使用物化视图的收益可以计算为物化视图每种情况中生成子物化视图与否的差值。对于查询负载Q和第s种情况下的视图Vs,不使用物化视图的代价是Cu,m(qs),使用物化视图的代价是Cu,m(qs|Vs),其中Vs是查询中物化视图的一种情况,因使用视图替换查询会直接调用视图中的结果,所以使用视图的查询代价会小于直接查询的代价,使用物化视图的收益为
Figure BDA0003950256360000067
在给定查询负载的情况下,目标是使用强化学习方法自主决策出查询负载中每条查询语句的最佳物化视图位置对进行物化视图,物化视图部分对应的子查询为最佳物化视图子查询,并在之后的查询任务中可以直接使用该物化视图替换对应的物化视图子查询,使得查询语句达到最佳效能。因此,将上述问题建模为物化视图替换查询语句中子查询后,查询语句总效能最大化的优化问题。对于查询负载中每条查询语句物化视图位置对的决策选择问题可建模为马尔可夫决策过程,并将其定义为一个四元组的表示(S,A,Pa,Ra,γ);S表示状态,A表示动作,Pa表示状态转移概率,Ra表示奖励,γ表示折扣因子。状态空间定义为
Figure BDA0003950256360000071
M(ZM)),其中vi表示查询语句第i种情况下位置对是否被物化视图,用布尔值表示;
Figure BDA0003950256360000072
表示查询语句第i种情况下位置对执行物化视图的置信度;M(ZM)表示该条查询语句中位置对的物化视图置信度的矩阵表示。动作空间定义为
Figure BDA0003950256360000073
其中(D,v)表示“状态D-选择物化视图位置对v”对,i表示第i种情况下,c表示第c时刻,v表示在查询语句中选择物化视图的有效位置对,va表示查询中物化视图有效位置对的集合。回报函数定义为
Figure BDA0003950256360000074
即查询语句总效能的变化值。
采用异步优势演员-评论员A3C算法进行带有位置标记的查询负载中每条查询语句可建立物化视图的最佳位置对选择决策,建立全局网络和若干工作网络,输入迭代次数n。
如图6所示,每个工作网络采用优势函数的演员-评论员算法,所述工作网络由策略网络和价值网络两部分构成:
策略网络用于决策选择每条查询语句进行物化视图的位置对,策略网络的架构包括输入层、中间层以及输出层,输入层为全连接层,输入层的输入状态值包括:查询语句的集合,即带有位置标记的查询负载{Q},带有位置标记的查询负载的矢量化表达
Figure BDA0003950256360000075
每条查询语句对应位置是否可被物化视图的集合{Φ},其中
Figure BDA0003950256360000076
每条查询语句上建立物化视图情况的总代价集合O,其中一条查询语句上建立物化视图情况的代价集合
Figure BDA0003950256360000077
每条查询语句在不同物化视图情况下的收益集合G,其中一条查询语句在不同物化视图情况下的收益集合
Figure BDA0003950256360000078
中间层为全连接层;输出层为激活函数softmax层,输出为查询负载中每条语句的位置对上建立物化视图的概率。
价值网络用于产生选择每条查询语句进行物化视图的位置对的决策值函数,网络结构包括输入层、中间层和输出层,其中输入层为全连接层,输入层的输入状态值包括:查询语句的集合,即带有位置标记的查询负载{Q},带有位置标记的查询负载的矢量化表达
Figure BDA0003950256360000079
每条查询语句对应位置是否被物化视图的集合{Φ},其中
Figure BDA00039502563600000710
每条查询语句上建立物化视图情况的总代价集合O,其中一条查询语句上建立物化视图情况的代价集合
Figure BDA00039502563600000711
每条查询语句在不同物化视图情况下的收益集合G,其中一条查询语句在不同物化视图情况下的收益集合
Figure BDA00039502563600000712
中间层为全连接层;输出层为线性层,输出值是每条查询语句当前状态下价值函数的评估值。
策略网络的参数根据如下公式进行更新:
Figure BDA0003950256360000081
其中,θa表示策略网络参数,
Figure BDA0003950256360000082
表示对网络参数求偏导,πθ(s,a)表示在状态s下执行动作a的策略,A(s,a)表示在状态s下执行动作a的优势函数。
优势函数根据如下公式近似得到:
A(s,a)≈γt+εV(st+1)-V(st)
其中,γt表示即时奖励,由决策评估模块反馈得到,ε为[0,1]间的参数,V(st)表示在状态st下的值函数,V(st+1)表示状态st+1的值函数,由价值网络的输出产生。
价值网络参数根据如下公式进行更新:
Figure BDA0003950256360000083
其中,θv表示价值网络参数,rt表示即时奖励,ε为[0,1]间的参数,V(st)表示在状态st下的值函数,V(st+1)表示状态st+1的值函数。
从查询语句总效能的角度定义决策评估指标;
具体查询语句Q中第s种创建物化视图Vs情况下的总效能的计算方法如下:
Figure BDA0003950256360000084
其中,为
Figure BDA0003950256360000085
为使用物化视图的收益,
Figure BDA0003950256360000086
为在查询负载上建立第s种物化视图情况的总代价。
每个工作网络完成步训练后将参数更新传入全局网络,对全局网络的参数进行更新,工作网络再从全局网络中获取参数,循环上述参数更新过程,直到达到预设的强化学习迭代次数n。结束训练后,将查询负载中每条查询语句里概率最大的位置的中间中间部分进行物化视图,即最佳子物化视图,将最佳子物化视图以及对应的物化视图子查询存入存储中。
步骤三、基于存储中物化视图的在线推荐查询模块
在查询推荐中,将离线训练模块中存储的最优子物化视图应用到用户的在线查询中。用户输入查询负载中一条查询语句时,在输入了的一部分查询语句相关联物化视图子查询时,系统将推荐这些物化视图子查询。当用户选择使用推荐的一条物化视图子查询时,物理机将调取CPU或内存中该物化视图子查询对应的子物化视图,供用户使用。
在实际应用中,例如用户输入一个简单的查询语句“select*from(selectstudent from occupation where age>20)”,经过离线训练模块效能最佳的物化视图位置对被物化视图,结果存储到物理机,结果为“select student from occupation where age>20”,进而用T代表“select student from occupation where age>20”。因此,上述输入查询负载可以被改写成“select*from(T)”。至此,本发明的三个模块介绍完毕。
尽管为说明目的公开了本发明的具体实施例,其目的在于帮助理解本发明的内容并据以实施,本领域的技术人员可以理解:在不脱离本发明及所附的权利要求的精神和范围内,各种替换、变化和修改都是可能的。因此,本发明不应局限于最佳实施例所公开的内容,本发明要求保护的范围以权利要求书界定的范围为准。

Claims (8)

1.一种基于深度强化学习的智能物化视图查询方法,其步骤包括:
1)特征编码模块将数据库的所选历史查询负载中每一查询语句分别分割、标记,得到具有位置标记的查询语句,将查询负载中任意两个不重复的位置标记作为一个位置标记对,判断每一位置标记对之间的内容是否可生成视图,如果可生成视图则保留对应的位置标记对,否则删除对应的位置标记对;然后对带位置标记的查询负载中每条查询语句进行特征提取,得到词嵌入张量、位置编码张量和位置标记张量;将所得词嵌入张量、位置张量和位置标记张量拼接后输入深度学习模型进行编码,得到包含位置标记信息的查询负载的张量表达;
2)离线训练模块基于深度强化学习算法中的异步优势演员-评论员A3C算法对包含位置标记信息的查询负载的张量表达进行处理,得到每条查询语句中最佳物化视图位置对并将最佳物化视图位置对所对应的子查询部分进行物化视图,得到每一子查询部分对应的物化视图子查询;将每条查询语句对应的一个或多个物化视图子查询以物化视图的形式进行存储;
3)在线推荐查询模块对待处理的查询语句a,查找与该查询语句a匹配的若干物化视图子查询推荐给用户;然后根据用户选取的物化视图子查询所对应的子物化视图查询数据库,并将查询结果反馈给用户。
2.根据权利要求1所述的方法,其特征在于,所述特征编码模块对查询语句根据谓词、表名、列名、行名进行分割,并在其间隔进行标号,作为查询语句的位置标记;将分割的各部分转换成固定维度的向量作为所述词嵌入张量;所述位置编码张量用于标记查询负载分割后在不同位置时语义不同的部分;所述位置标记张量用于表示查询负载中可以生成视图的位置对。
3.根据权利要求2所述的方法,其特征在于,所述深度学习模型为transformer模型并对transformer模型的编码部分进行并行复用,得到具有多个并行编码部分的transformer模型;所述特征编码模块将词嵌入张量、位置张量和位置标记张量拼接后输入transformer模型的各编码部分进行查询负载的编码,得到包含位置标记信息的查询负载的张量表达。
4.根据权利要求1或2或3所述的方法,其特征在于,所述离线训练模块得到每一子查询部分对应的物化视图子查询的方法为:
21)建立全局网络和若干工作网络,每个工作网络采用优势演员-评论员A2C算法,所述优势演员-评论员A2C算法由策略网络和价值网络两部分构成;所述策略网络的参数根据公式
Figure FDA0003950256350000011
进行更新;其中,θa表示策略网络参数,
Figure FDA0003950256350000012
表示对网络参数求偏导,πθ(s,a)表示在状态s下执行动作a的策略,A(s,a)表示在状态s下执行动作a的优势函数;A(s,a)≈γt+εV(st+1)-V(st);价值网络参数根据公式
Figure FDA0003950256350000013
进行更新;其中,θv表示价值网络参数,rt表示即时奖励,ε为[0,1]间的参数,V(st)表示在状态st下的值函数,V(st+1)表示状态st+1的值函数;查询语句Q中第s种创建物化视图Vs情况下的总效能
Figure FDA0003950256350000021
其中,为
Figure FDA0003950256350000022
为使用物化视图的收益,
Figure FDA0003950256350000023
为在查询负载上建立第s种物化视图情况的总代价;
22)每个工作网络完成步训练后将参数更新传入全局网络,对全局网络的参数进行更新,工作网络再从全局网络中获取参数;
23)循环步骤22),直到达到预设的强化学习迭代次数n,得到查询负载中每条查询语句里的最佳子物化视图以及对应的物化视图子查询。
5.根据权利要求4所述的方法,其特征在于,所述策略网络用于决策选择查询负载中每条查询语句进行物化视图的位置对,策略网络的架构包括输入层、中间层以及输出层,输入层为全连接层,输入层的输入状态值包括:带有位置标记的查询负载{Q},带有位置标记的查询负载的矢量化表达
Figure FDA0003950256350000024
每条查询语句对应位置是否可被物化视图的集合{Φ},其中
Figure FDA0003950256350000025
Figure FDA0003950256350000026
表示查询语句第i种情况下位置对执行物化视图的置信度,查询负载中每条查询语句上建立物化视图情况的总代价集合O,一条查询语句上建立物化视图情况的代价集合
Figure FDA0003950256350000027
查询负载中每条查询语句在不同物化视图情况下的收益集合G,一条查询语句在不同物化视图情况下的收益集合
Figure FDA0003950256350000028
中间层为全连接层;输出层为激活函数softmax层,输出为在查询负载中每一查询语句的位置对上建立物化视图的概率。
6.根据权利要求5所述的方法,其特征在于,所述价值网络用于产生选择每条查询语句进行物化视图的位置对的决策值函数,网络结构包括输入层、中间层和输出层,其中输入层为全连接层,输入层的输入状态值包括:带有位置标记的查询负载{Q},带有位置标记的查询负载的矢量化表达
Figure FDA0003950256350000029
每条查询语句对应位置是否被物化视图的集合{Φ},其中
Figure FDA00039502563500000210
查询负载中每条查询语句上建立物化视图情况的总代价集合O,一条查询语句上建立物化视图情况的代价集合
Figure FDA00039502563500000211
查询负载中每条查询语句在不同物化视图情况下的收益集合G,一条查询语句在不同物化视图情况下的收益集合
Figure FDA00039502563500000212
中间层为全连接层;输出层为线性层,输出值是每条查询语句当前状态下价值函数的评估值。
7.一种服务器,其特征在于,包括存储器和处理器,所述存储器存储计算机程序,所述计算机程序被配置为由所述处理器执行,所述计算机程序包括用于执行权利要求1至6任一所述方法中各步骤的指令。
8.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6任一所述方法的步骤。
CN202211448162.2A 2022-11-18 2022-11-18 一种基于深度强化学习的智能物化视图查询方法 Active CN115757464B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211448162.2A CN115757464B (zh) 2022-11-18 2022-11-18 一种基于深度强化学习的智能物化视图查询方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211448162.2A CN115757464B (zh) 2022-11-18 2022-11-18 一种基于深度强化学习的智能物化视图查询方法

Publications (2)

Publication Number Publication Date
CN115757464A true CN115757464A (zh) 2023-03-07
CN115757464B CN115757464B (zh) 2023-07-25

Family

ID=85373465

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211448162.2A Active CN115757464B (zh) 2022-11-18 2022-11-18 一种基于深度强化学习的智能物化视图查询方法

Country Status (1)

Country Link
CN (1) CN115757464B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116701429A (zh) * 2023-05-19 2023-09-05 杭州云之重器科技有限公司 一种基于批量历史任务模糊化的公共查询方法

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111581454A (zh) * 2020-04-27 2020-08-25 清华大学 基于深度图压缩算法的并行查询表现预测系统及方法
CN111597209A (zh) * 2020-04-30 2020-08-28 清华大学 一种数据库物化视图构建系统、方法以及系统创建方法
CN111782870A (zh) * 2020-06-18 2020-10-16 湖南大学 基于强化学习的对抗性视频时刻检索方法、装置、计算机设备和存储介质
CN113515951A (zh) * 2021-07-19 2021-10-19 同济大学 基于知识增强注意力网络和组级语义的故事描述生成方法
CN113986933A (zh) * 2021-09-03 2022-01-28 北京火山引擎科技有限公司 物化视图的创建方法、装置、存储介质及电子设备
US20220067008A1 (en) * 2019-05-14 2022-03-03 Huawei Technologies Co., Ltd. Method and apparatus for determining configuration knob of database
CN115114318A (zh) * 2022-04-08 2022-09-27 腾讯科技(深圳)有限公司 一种生成数据库查询语句的方法和相关装置

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220067008A1 (en) * 2019-05-14 2022-03-03 Huawei Technologies Co., Ltd. Method and apparatus for determining configuration knob of database
CN111581454A (zh) * 2020-04-27 2020-08-25 清华大学 基于深度图压缩算法的并行查询表现预测系统及方法
CN111597209A (zh) * 2020-04-30 2020-08-28 清华大学 一种数据库物化视图构建系统、方法以及系统创建方法
CN111782870A (zh) * 2020-06-18 2020-10-16 湖南大学 基于强化学习的对抗性视频时刻检索方法、装置、计算机设备和存储介质
CN113515951A (zh) * 2021-07-19 2021-10-19 同济大学 基于知识增强注意力网络和组级语义的故事描述生成方法
CN113986933A (zh) * 2021-09-03 2022-01-28 北京火山引擎科技有限公司 物化视图的创建方法、装置、存储介质及电子设备
CN115114318A (zh) * 2022-04-08 2022-09-27 腾讯科技(深圳)有限公司 一种生成数据库查询语句的方法和相关装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
崔跃生;张勇;曾春;冯建华;邢春晓;: "数据库物理结构优化技术", 软件学报, no. 04, pages 103 - 122 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116701429A (zh) * 2023-05-19 2023-09-05 杭州云之重器科技有限公司 一种基于批量历史任务模糊化的公共查询方法
CN116701429B (zh) * 2023-05-19 2023-12-29 杭州云之重器科技有限公司 一种基于批量历史任务模糊化的公共查询方法

Also Published As

Publication number Publication date
CN115757464B (zh) 2023-07-25

Similar Documents

Publication Publication Date Title
CN111310438B (zh) 基于多粒度融合模型的中文句子语义智能匹配方法及装置
CN112380325B (zh) 基于联合知识嵌入模型和事实记忆网络的知识图谱问答系统
CN108717433A (zh) 一种面向程序设计领域问答系统的知识库构建方法及装置
CN113515539B (zh) 一种数据库中数据的查询方法
CN107992611B (zh) 基于柯西分布哈希方法的高维数据检索方法与系统
CN112000772A (zh) 面向智能问答基于语义特征立方体的句子对语义匹配方法
CN113128233B (zh) 一种心理疾病知识图谱的构建方法及系统
CN110175235A (zh) 基于神经网络的智能商品税分类编码方法及系统
CN112000770A (zh) 面向智能问答的基于语义特征图的句子对语义匹配方法
CN112015902A (zh) 基于度量的元学习框架下的少次文本分类方法
CN117290462B (zh) 一种数据大模型的智能决策系统及方法
CN116127084A (zh) 基于知识图谱的微电网调度策略智能检索系统及方法
CN115062070A (zh) 一种基于问答的文本表格数据查询方法
CN116244333A (zh) 一种基于代价因子校准的数据库查询性能预测方法及系统
Hamdani et al. Distributed genetic algorithm with bi-coded chromosomes and a new evaluation function for features selection
CN115757464B (zh) 一种基于深度强化学习的智能物化视图查询方法
CN115952277A (zh) 基于知识关系检索增强方法、模型、设备及存储介质
CN108932350A (zh) 基于多策略的水稻病虫害智能问答方法
CN116342167B (zh) 基于序列标注命名实体识别的智能成本度量方法和装置
CN115422369B (zh) 基于改进TextRank的知识图谱补全方法和装置
CN116483337A (zh) 一种基于提示学习和数据增强的api补全方法
CN116226404A (zh) 一种针对肠-脑轴的知识图谱构建方法及知识图谱系统
CN115238705A (zh) 语义解析结果重排序方法及系统
CN114969087A (zh) 基于多视角特征解耦的nl2sql方法和装置
CN114218580A (zh) 一种基于多任务学习的智能合约漏洞检测方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant