System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 编码方法、响应时间预测方法及装置制造方法及图纸_技高网

编码方法、响应时间预测方法及装置制造方法及图纸

技术编号:40177501 阅读:7 留言:0更新日期:2024-01-26 23:45
本申请实施例提供编码方法、响应时间预测方法及装置,应用于数据库技术、人工智能领域。本申请实施例中,查询计划被编码为多个张量,张量中包含操作类型的编码、元数据的编码和查询谓词的编码。其中,元数据的编码包含数据库中的列的编码,列的编码与列的数据类型相关。这种编码方式可以减小列编码、表编码、原子谓词编码的复杂度,并且在数据库数据模式频繁变化的情况下可以保持预测模型的稳定性和可扩展性。

【技术实现步骤摘要】

本申请涉及数据库技术、人工智能领域,尤其涉及编码方法、响应时间预测方法及装置


技术介绍

1、数据库在查询记录时,查询优化器会将用户输入的查询语句转化为查询计划,根据查询计划得到最终的结果。同一个语句,转化为不同的查询计划,在查询时会执行不同的操作过程,最终使得不同的查询计划的响应时间存在差异。为了提高查询的效率和系统的吞吐量,人们总是希望能够找到一个最优的查询计划来完成数据查询。

2、得益于人工智能技术的成熟发展,利用训练得到的预测模型来预测查询计划的查询性能取得不错的进展。但是,由于数据库的表、列等结构复杂,且,数据库的结构通常会随着时间的维度更新,这些问题使得预测模型的预测准确度受影响,甚至导致预测模型被重新训练。

3、因此,如何提高预测查询计划的查询性能的准确性和效率是领域技术人员正在研究的热点问题。


技术实现思路

1、本申请实施例提供了一种编码方法、响应时间预测方法及装置,能够减小编码复杂度,提高模型训练的效率,提升预测查询计划响应时间的准确性。

2、第一方面,本申请实施例提供一种编码方法,包括:

3、获取查询计划对应的逻辑查询计划树,所述逻辑查询计划树包含p个计划节点,所述p个计划节点中的每个计划节点至少包含操作类型,所述p个计划节点中的第一计划节点包含所述操作类型、元数据和查询谓词,其中,所述元数据包含表和/或列,所述列的数据类型的种类数量为m,m、p为正整数;

4、以独热编码的编码方式,对逻辑查询计划树的p个计划节点进行编码,得到p个张量,p个张量中的每个张量至少包含所述操作类型的编码,所述p个张量包含第一计划节点对应的第一张量,所述第一张量包含所述操作类型的编码、所述元数据的编码和所述查询谓词的编码,其中,所述元数据的编码中的列编码包含n位的数据,所述元数据的编码中的表编码由表中的列对应的列编码得到,n为正整数且m≤n≤m+1。

5、本申请实施例对查询计划进行编码的过程中,数据库中的列的编码与列的数据类型相关。这种编码方式可以减小列编码、表编码、原子谓词编码的编码复杂度,在数据库数据模式频繁变化的情况下可以保持编码的稳定性和适用性。

6、在第一方面的一种可能的实施方式中,所述p个张量用于输入预测模型以预测所述查询计划的响应时间。

7、通过减小列编码、表编码、原子谓词编码的复杂度,能够提高模型训练的效率,并且保持预测模型的稳定性和可扩展性。另外,查询过程中,响应时间与列的数据类型更具有相关性(例如text类型的列的扫描时间通常比int类型的列的扫描时间更长),因此,本申请实施例能够提高预测准确性。

8、在第一方面的又一种可能的实施方式中,所述元数据还包含索引;n=m+1,其中,n位数据中的m位用于指示所述列的数据类型,n位数据中除所述m位之外的1位用于指示所述列是否为索引。

9、在上述实施方式中,数据库的索引在训练时无需单独编码,而是通过列编码的其中部分数据位来指示是否为索引。进一步的简化了数据库中元数据编码,在数据库数据模式频繁变化的情况下可以保持预测模型的稳定性和可扩展性。

10、在模型训练场景中,通过简化元数据的编码,可以提升模型训练效率和预测模型的预测准确性。

11、在使用模型进行响应时间预测的场景中,通过简化元数据编码,能够缩短得到响应时间的时间,提高系统的吞吐量,提高用户体验。

12、在第一方面的又一种可能的实施方式中,表的编码由表中的列编码进行归一化操作得到。其中,归一化操作可以包含求均值操作、映射操作等。

13、在第一方面的又一种可能的实施方式中,所述元数据的编码中的表编码为表中的所有列的列编码的均值。

14、可选的,该平均值为按位取均值得到的。或者可选的,该平均值为按编码的整体数值取均值得到的。

15、在上述实施方式中,表编码为根据列编码进行归一化操作得到,由于列编码与数据类型相关,编码复杂度降低,由列编码得到表编码的复杂度也相应降低。通过上述实施方式可以降低表编码的复杂度,并且在数据库数据模式频繁变化的情况下可以保持预测模型的稳定性和可扩展性。

16、在模型训练场景中,通过简化元数据的编码,可以提升模型训练效率和预测模型的预测准确性。

17、在使用模型进行响应时间预测的场景中,通过简化元数据编码,能够缩短得到响应时间的时间,提高系统的吞吐量,提高用户体验。

18、在第一方面的又一种可能的实施方式中,所述查询谓词为树形结构,所述查询谓词包含多个原子谓词以及连接所述原子谓词的布尔操作,每个原子谓词包含操作列、操作符和操作参数,所述查询谓词的编码包含所述多个原子谓词的编码,每个原子谓词的编码包含所述操作列的编码、所述操作符的编码和所述操作参数的编码。

19、在第一方面的又一种可能的实施方式中,操作列的编码方式与列的编码方式相同。

20、在第一方面的又一种可能的实施方式中,所述操作列的数据类型的种类数量为m,所述操作列的数据类型的种类数量为m,所述操作列的编码包含n位的数据。

21、在第一方面的又一种可能的实施方式中,操作符的符号类型的种类数量为k种,所述操作符的编码包含k位的数据,所述操作参数的编码为根据所述操作参数得到的向量。

22、在上述实施方式中,查询谓词编码的过程中,操作符的编码与操作符号的符号类型相关。由于符号类型是有限的,因此,这种编码方式可以减小操作符号编码的复杂度,从而降低查询操作的编码复杂度,并且在数据库数据模式频繁变化的情况下可以保持预测模型的稳定性和可扩展性。

23、在第一方面的又一种可能的实施方式中,如果所述操作参数的参数类型为数值类型,所述操作参数的编码为根据操作参数所在列的最大值和最小值对所述操作参数进行归一化操作得到的。

24、在上述实施方式中,操作参数的编码为根据操作参数所在列的最大值和最小值对所述操作参数进行归一化操作得到的。归一化操作能够将操作参数转化为0-1之间的一个张量,从而减小操作参数的编码复杂度,提高模型训练效率。

25、在第一方面的又一种可能的实施方式中,如果所述操作参数的参数类型为字符型,所述操作参数的编码为将所述操作参数输入词向量生成模型所得到的向量。

26、可选的,词向量生成模型包含但不限于是skip-gram model。

27、在上述实施方式中,操作参数的编码为根据词向量生成模型得到的。词向量生成模型能够将操作参数转化为向量,从而减小操作参数的编码复杂度,提高模型训练效率。

28、第二方面,本申请实施例提供一种响应时间预测方法,包括:

29、获取查询计划对应的逻辑查询计划树,所述逻辑查询计划树包含p个计划节点,所述p个计划节点中的每个计划节点至少包含操作类型,所述p个计划节点中的第一计划节点包含所述操作类型、元数据和查询谓词,其中,所述元数据包含表和/或列,列的数据类型的本文档来自技高网...

【技术保护点】

1.一种编码方法,其特征在于,包括:

2.根据权利要求1所述的方法,其特征在于,所述元数据还包含索引;N=M+1,其中,N位数据中的M位用于指示所述列的数据类型,N位数据中除所述M位之外的1位用于指示所述列是否为索引。

3.根据权利要求1或2所述的方法,其特征在于,所述元数据的编码中的表编码为表中的所有列的列编码的均值。

4.根据权利要求1-3任一项所述的方法,其特征在于,所述查询谓词为树形结构,所述查询谓词包含多个原子谓词以及连接所述原子谓词的布尔操作,每个原子谓词包含操作列、操作符和操作参数,所述操作列的数据类型的种类数量为M,操作符的符号类型的种类数量为K种;

5.根据权利要求4所述的方法,其特征在于,

6.一种响应时间预测方法,其特征在于,所述方法包括:

7.根据权利要求6所述的方法,其特征在于,所述方法还包括:

8.根据权利要求7所述的方法,其特征在于,所述方法还包括:

9.根据权利要求6-8任一项所述的方法,其特征在于,所述元数据还包含索引;N=M+1,其中,N位数据中的M位用于指示所述列的数据类型,N位数据中除所述M位之外的1位用于指示所述列是否为索引。

10.根据权利要求9所述的方法,其特征在于,所述元数据的编码中的表编码为表中的所有列的列编码的均值。

11.根据权利要求6-10任一项所述的方法,其特征在于,所述查询谓词为树形结构,所述查询谓词包含多个原子谓词以及连接所述多个谓词的布尔操作,每个原子谓词包含操作列、操作符和操作参数,所述操作列的数据类型的种类数量为M,操作符的符号类型的种类数量为K种;

12.根据权利要求6-11任一项所述的方法,其特征在于,所述多个表示模型中的每个表示模型包含长短记忆神经网络,所述根据所述P个张量对所述多个表示模型进行递归训练,得到全局表示向量,包括:

13.根据权利要求12所述的方法,其特征在于,所述根据所述P个张量得到P个嵌入向量,还包括:

14.根据权利要求13所述的方法,其特征在于,所述根据所述第一张量中的查询谓词编码,得到目标线性值,包括:

15.一种编码装置,其特征在于,包括:

16.根据权利要求15所述的装置,其特征在于,所述元数据还包含索引;N=M+1,其中,N位数据中的M位用于指示所述列的数据类型,N位数据中除所述M位之外的1位用于指示所述列是否为索引。

17.根据权利要求15或16所述的装置,其特征在于,所述元数据的编码中的表编码为表中的所有列的列编码的均值。

18.根据权利要求15-17任一项所述的装置,其特征在于,所述查询谓词为树形结构,所述查询谓词包含多个原子谓词以及连接所述原子谓词的布尔操作,每个原子谓词包含操作列、操作符和操作参数,所述操作列的数据类型的种类数量为M,操作符的符号类型的种类数量为K种;

19.一种响应时间预测装置,其特征在于,包括:

20.根据权利要求19所述的装置,其特征在于,所述处理单元,还用于:

21.根据权利要求19所述的装置,其特征在于,所述处理单元,还用于:

22.根据权利要求19-21任一项所述的装置,其特征在于,所述元数据还包含索引;N=M+1,其中,N位数据中的M位用于指示所述列的数据类型,N位数据中除所述M位之外的1位用于指示所述列是否为索引;

23.根据权利要求19-22任一项所述的装置,其特征在于,所述多个表示模型中的每个表示模型包含长短记忆神经网络;所述处理单元,还用于:

24.根据权利要求23所述的装置,其特征在于,所述处理单元,还用于:

25.根据权利要求24所述的装置,其特征在于,所述处理单元,还用于:

26.一种计算设备,其特征在于,所述计算设备包括处理器和存储器;

27.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机指令,所述计算机指令用于实现权利要求1-14任一项所述的方法。

...

【技术特征摘要】

1.一种编码方法,其特征在于,包括:

2.根据权利要求1所述的方法,其特征在于,所述元数据还包含索引;n=m+1,其中,n位数据中的m位用于指示所述列的数据类型,n位数据中除所述m位之外的1位用于指示所述列是否为索引。

3.根据权利要求1或2所述的方法,其特征在于,所述元数据的编码中的表编码为表中的所有列的列编码的均值。

4.根据权利要求1-3任一项所述的方法,其特征在于,所述查询谓词为树形结构,所述查询谓词包含多个原子谓词以及连接所述原子谓词的布尔操作,每个原子谓词包含操作列、操作符和操作参数,所述操作列的数据类型的种类数量为m,操作符的符号类型的种类数量为k种;

5.根据权利要求4所述的方法,其特征在于,

6.一种响应时间预测方法,其特征在于,所述方法包括:

7.根据权利要求6所述的方法,其特征在于,所述方法还包括:

8.根据权利要求7所述的方法,其特征在于,所述方法还包括:

9.根据权利要求6-8任一项所述的方法,其特征在于,所述元数据还包含索引;n=m+1,其中,n位数据中的m位用于指示所述列的数据类型,n位数据中除所述m位之外的1位用于指示所述列是否为索引。

10.根据权利要求9所述的方法,其特征在于,所述元数据的编码中的表编码为表中的所有列的列编码的均值。

11.根据权利要求6-10任一项所述的方法,其特征在于,所述查询谓词为树形结构,所述查询谓词包含多个原子谓词以及连接所述多个谓词的布尔操作,每个原子谓词包含操作列、操作符和操作参数,所述操作列的数据类型的种类数量为m,操作符的符号类型的种类数量为k种;

12.根据权利要求6-11任一项所述的方法,其特征在于,所述多个表示模型中的每个表示模型包含长短记忆神经网络,所述根据所述p个张量对所述多个表示模型进行递归训练,得到全局表示向量,包括:

13.根据权利要求12所述的方法,其特征在于,所述根据所述p个张量得到p个嵌入向...

【专利技术属性】
技术研发人员:刘洪浩江欢彭煜玮章哲彭智勇
申请(专利权)人:华为云计算技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1