技术新讯 > 计算推算,计数设备的制造及其应用技术 > 索引更新的方法、装置、电子设备及存储介质与流程  >  正文

索引更新的方法、装置、电子设备及存储介质与流程

  • 国知局
  • 2024-07-31 23:25:54

本技术涉及人工智能,具体涉及一种索引更新的方法、装置、电子设备及存储介质。

背景技术:

1、在数据查询场景中,通常可以在数据库同一分区对应的多个副本并行查询,以快速获得数据查询结果。其中,数据库中通常包含多个分区,同一分区对应的多个副本存储有相同数据。

2、现有技术下,通常将针对每一分区的待查询语句拆分为多个子查询语句,并基于各副本相同的索引,在各副本中执行不同的子查询语句,获得数据查询结果。其中,各副本的索引通常是相同的。

3、但是,由于各副本的数据分布通常是不同的,因此,不同副本的索引配置需求通常是不同的,各副本相同的索引配置通常无法满足数据库的性能需求。

技术实现思路

1、本技术实施例的目的在于提供一种索引更新的方法、装置、电子设备以及存储介质,用以对同一分区各副本的索引进行差异化地自适应调整,以提高数据库的性能。

2、一方面,本技术实施方式提供了一种索引更新的方法,包括:

3、将待查询语句,拆分为多个子查询语句;

4、将各子查询语句,分别分配至待查询分区的不同副本;待查询分区为待查询语句待查询的分区;

5、通过各副本分别对应的索引推荐模型,根据相应的子查询语句和当前索引配置,分别确定每一副本对应的目标索引配置信息;

6、根据各副本分别对应的目标索引配置信息,对各副本进行索引更新。

7、一种实施方式中,将各子查询语句,分别分配至不同的副本,包括:

8、根据各子查询语句以及各副本的当前索引配置,确定各子查询语句分别在每一副本的预估执行代价;

9、根据各子查询语句分别在各副本的预估执行代价,将各子查询语句分别分配至不同的副本。

10、一种实施方式中,根据各子查询语句以及各副本的当前索引配置,预估各子查询语句分别在每一副本的预估执行代价,包括:

11、分别针对每一子查询语句以及每一副本,执行以下步骤:

12、根据子查询语句以及副本的当前索引配置,对副本对应的索引集合进行筛选,获得子查询语句以及副本对应的候选索引集合;

13、根据候选索引集合以及副本的实时工作负载,预估子查询语句在副本的预估执行代价。

14、一种实施方式中,根据各子查询语句分别在各副本的预估执行代价,将各子查询语句分别分配至不同的副本,包括:

15、获得各子查询语句以及各副本组成的所有语句分配组合;每一语句分配组合中包含所有的副本和子查询语句,且语句分配组合中的不同副本分配有不同的子查询语句;

16、分别针对每一语句分配组合,执行以下步骤:根据语句分配组合中各对子查询语句和副本分别对应的预估执行代价,确定语句分配组合的总预估执行代价;

17、根据各语句分配组合分别对应的总预估执行代价,从各语句分配组合中,筛选出目标语句分配组合;

18、按照目标语句分配组合,将各子查询语句分别分配至不同的副本。

19、一种实施方式中,在根据各副本分别对应的目标索引配置信息,对各副本进行索引更新之后,方法还包括:

20、分别针对每一副本及其对应的子查询语句,执行以下步骤:

21、基于副本更新后的索引,执行副本对应的子查询语句,获得查询结果。

22、一种实施方式中,通过各副本分别对应的索引推荐模型,根据相应的子查询语句和当前索引配置,分别确定每一副本对应的目标索引配置信息,包括:

23、分别针对每一副本及其对应的子查询语句,执行以下步骤:

24、获取副本和子查询语句对应的候选索引集合;

25、通过副本对应的索引评估子模型,根据副本和子查询语句对应的候选索引集合,获得各索引配置的评分;索引推荐模型包括索引评估子模型;

26、根据各索引配置的评分,确定副本对应的目标索引配置信息。

27、一种实施方式中,每一副本对应的索引推荐模型,是采用以下步骤训练获得的:

28、获取副本的当前索引配置、子查询语句样本以及历史索引推荐数据;历史索引推荐数据是根据多个副本的子查询语句样本、候选索引集合、索引配置推荐信息以及执行代价变化值获得的;执行代价变化值为根据索引配置推荐信息执行子查询语句的当前执行代价与历史执行代价之间的差值;

29、通过副本对应的索引推荐训练模型,根据当前索引配置,子查询语句样本以及历史索引推荐数据,获得索引配置推荐信息;

30、按照索引配置推荐信息,执行子查询语句样本,获得当前执行代价;

31、根据当前执行代价,调整索引推荐训练模型的模型参数,直至当前执行代价低于代价阈值,获得副本对应的训练好的索引推荐模型。

32、一种实施方式中,根据当前执行代价,调整索引推荐训练模型的模型参数,直至当前执行代价低于代价阈值,获得副本对应的训练好的索引推荐模型,包括:

33、若当前执行代价低于代价阈值,则将索引推荐训练模型,作为训练好的索引推荐模型;

34、若当前执行代价不低于代价阈值,则循环执行以下步骤,直至确定出的当前执行代价低于代价阈值:

35、根据当前执行代价以及副本和子查询语句样本对应的历史执行代价,确定执行代价变化值;

36、根据执行代价变化值,调整索引推荐训练模型的模型参数;

37、根据调整后的索引推荐训练模型,确定新的索引配置推荐信息;

38、按照新的索引配置推荐信息,执行相应的子查询语句样本,获得新的当前执行代价。

39、一方面,本技术实施方式提供了一种索引更新的装置,包括:

40、拆分单元,用于将待查询语句,拆分为多个子查询语句;

41、分配单元,用于将各子查询语句,分别分配至待查询分区的不同副本;待查询分区为待查询语句待查询的分区;

42、确定单元,用于通过各副本分别对应的索引推荐模型,根据相应的子查询语句和当前索引配置,分别确定每一副本对应的目标索引配置信息;

43、更新单元,用于根据各副本分别对应的目标索引配置信息,对各副本进行索引更新。

44、一种实施方式中,分配单元用于:

45、根据各子查询语句以及各副本的当前索引配置,确定各子查询语句分别在每一副本的预估执行代价;

46、根据各子查询语句分别在各副本的预估执行代价,将各子查询语句分别分配至不同的副本。

47、一种实施方式中,分配单元用于:

48、分别针对每一子查询语句以及每一副本,执行以下步骤:

49、根据子查询语句以及副本的当前索引配置,对副本对应的索引集合进行筛选,获得子查询语句以及副本对应的候选索引集合;

50、根据候选索引集合以及副本的实时工作负载,预估子查询语句在副本的预估执行代价。

51、一种实施方式中,分配单元用于:

52、获得各子查询语句以及各副本组成的所有语句分配组合;每一语句分配组合中包含所有的副本和子查询语句,且语句分配组合中的不同副本分配有不同的子查询语句;

53、分别针对每一语句分配组合,执行以下步骤:根据语句分配组合中各对子查询语句和副本分别对应的预估执行代价,确定语句分配组合的总预估执行代价;

54、根据各语句分配组合分别对应的总预估执行代价,从各语句分配组合中,筛选出目标语句分配组合;

55、按照目标语句分配组合,将各子查询语句分别分配至不同的副本。

56、一种实施方式中,更新单元还用于:

57、分别针对每一副本及其对应的子查询语句,执行以下步骤:

58、基于副本更新后的索引,执行副本对应的子查询语句,获得查询结果。

59、一种实施方式中,确定单元用于:

60、分别针对每一副本及其对应的子查询语句,执行以下步骤:

61、获取副本和子查询语句对应的候选索引集合;

62、通过副本对应的索引评估子模型,根据副本和子查询语句对应的候选索引集合,获得各索引配置的评分;索引推荐模型包括索引评估子模型;

63、根据各索引配置的评分,确定副本对应的目标索引配置信息。

64、一种实施方式中,确定单元还用于:

65、分别针对每一副本,采用以下步骤训练获得对应的索引推荐模型:

66、获取副本的当前索引配置、子查询语句样本以及历史索引推荐数据;历史索引推荐数据是根据多个副本的子查询语句样本、候选索引集合、索引配置推荐信息以及执行代价变化值获得的;执行代价变化值为根据索引配置推荐信息执行子查询语句的当前执行代价与历史执行代价之间的差值;

67、通过副本对应的索引推荐训练模型,根据当前索引配置,子查询语句样本以及历史索引推荐数据,获得索引配置推荐信息;

68、按照索引配置推荐信息,执行子查询语句样本,获得当前执行代价;

69、根据当前执行代价,调整索引推荐训练模型的模型参数,直至当前执行代价低于代价阈值,获得副本对应的训练好的索引推荐模型。

70、一种实施方式中,确定单元还用于:

71、若当前执行代价低于代价阈值,则将索引推荐训练模型,作为训练好的索引推荐模型;

72、若当前执行代价不低于代价阈值,则循环执行以下步骤,直至确定出的当前执行代价低于代价阈值:

73、根据当前执行代价以及副本和子查询语句样本对应的历史执行代价,确定执行代价变化值;

74、根据执行代价变化值,调整索引推荐训练模型的模型参数;

75、根据调整后的索引推荐训练模型,确定新的索引配置推荐信息;

76、按照新的索引配置推荐信息,执行相应的子查询语句样本,获得新的当前执行代价。

77、一方面,本技术实施方式提供了一种电子设备,包括:

78、处理器;以及

79、存储器,存储有计算机指令,计算机指令用于使处理器执行如上述任一种索引更新的各种可选实现方式中提供的方法的步骤。

80、一方面,本技术实施方式提供了一种存储介质,存储有计算机指令,计算机指令用于使计算机执行如上述任一种索引更新的各种可选实现方式中提供的方法的步骤。

81、本技术实施例提供的索引更新的方法、装置、电子设备及存储介质中,将待查询语句,拆分为多个子查询语句;将各子查询语句,分别分配至待查询分区的不同副本;待查询分区为待查询语句待查询的分区;通过各副本分别对应的索引推荐模型,根据相应的子查询语句和当前索引配置,分别确定每一副本对应的目标索引配置信息;根据各副本分别对应的目标索引配置信息,对各副本进行索引更新。这样,分别针对每一副本对应的子查询语句,对各副本的索引进行差异化的自适应调整,进而提高了数据库的查询性能。

本文地址:https://www.jishuxx.com/zhuanli/20240730/197521.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。