AI优化器的更新方法、装置、设备、存储介质和程序产品与流程

摘要: 本技术涉及人工智能,特别是涉及一种ai优化器的更新方法、装置、设备、存储介质和程序产品。背景技术:1、人工智能(artificialintelligence,a...
AI优化器的更新方法、装置、设备、存储介质和程序产品与流程

本技术涉及人工智能,特别是涉及一种ai优化器的更新方法、装置、设备、存储介质和程序产品。

背景技术:

1、人工智能(artificial intelligence,ai)优化器,可以使数据库通过人工智能方式来替代优化器做出最佳决策,例如最优计划生成或sql改写等业务。为了更好的应对不断更新的业务,通常会对ai优化器进行动态更新。然而,ai优化器的整个更新过程中,由于ai优化器更新涉及的模型训练,而模型训练具有资源消耗大和训练时间长的特性,因此将会显著影响业务系统的正常业务。

技术实现思路

1、基于此,有必要针对上述技术问题,提供一种ai优化器的更新方法、装置、设备、存储介质和程序产品,能够在ai优化器的更新过程中,降低甚至避免影响业务系统的正常业务。

2、第一方面,本技术提供了一种ai优化器的更新方法,所述方法包括:

3、在业务系统中选择需要进行模型训练的第一节点;

4、通过所述第一节点的网络模型,确定业务请求的执行成本预测值;

5、基于所述执行成本预测值和所述业务请求的实际执行成本值优化所述网络模型,获得模型训练结果;

6、将所述模型训练结果同步至所述业务系统的第二节点,所述模型训练结果用于更新所述第一节点的ai优化器和所述第二节点的ai优化器,以使所述第一节点或所述第二节点接收到待处理业务请求时,通过更新后的所述ai优化器从候选执行方式中选取目标执行方式执行所述待处理业务请求。

7、第二方面,本技术还提供了一种ai优化器的更新装置,所述装置包括:

8、选择模块,用于在业务系统中选择需要进行模型训练的第一节点;

9、确定模块,用于通过所述第一节点的网络模型,确定业务请求的执行成本预测值;

10、优化模块,用于基于所述执行成本预测值和所述业务请求的实际执行成本值优化所述网络模型,获得模型训练结果;

11、更新模块,用于将所述模型训练结果同步至所述业务系统的第二节点,所述模型训练结果用于更新所述第一节点的ai优化器和所述第二节点的ai优化器,以使所述第一节点或所述第二节点接收到待处理业务请求时,通过更新后的所述ai优化器从候选执行方式中选取目标执行方式执行所述待处理业务请求。

12、在其中的一个实施例中,所述选择模块,还用于确定业务系统在目标时段处理的业务;根据所述业务确定模型训练方式;在所述业务系统中,依据所述模型训练方式和所述业务选择需要进行模型训练的第一节点。

13、在其中的一个实施例中,所述选择模块,还用于在所述模型训练方式为离线训练方式、且所述业务满足第一业务条件的情况下,在所述业务系统中选择需要进行模型训练的第一节点;所述第一节点为备用节点,所述第二节点为所述业务系统中的主节点;

14、所述确定模块,还用于确定所述业务系统的资源负载信息;在所述资源负载信息满足预设负载条件的情况下,执行所述通过所述第一节点的网络模型,确定业务请求的执行成本预测值。

15、在其中的一个实施例中,所述更新模块,还用于将所述模型训练结果同步至所述主节点,以使基于所述模型训练结果对所述主节点的ai优化器进行更新,在完成更新之后,若接收到待处理业务请求,则通过更新后的所述ai优化器从候选执行方式中选取目标执行方式执行所述待处理业务请求;在所述主节点的ai优化器进行更新后,按照所述模型训练结果对所述备用节点的ai优化器进行更新。

16、在其中的一个实施例中,在对所述备用节点的网络模型进行训练的过程中,所述主节点持续提供业务服务;

17、所述更新模块,还用于将所述模型训练结果同步至所述主节点,以使所述主节点停止提供所述业务服务,基于所述模型训练结果对所述主节点的ai优化器进行更新。

18、在其中的一个实施例中,所述业务请求是在历史时间执行过的业务请求或预设的业务请求;

19、所述确定模块,还用于获取所述业务请求在执行后所得的所述实际执行成本值;或者,通过所述备用节点执行所述业务请求,获得所述实际执行成本值。

20、在其中的一个实施例中,所述选择模块,还用于在所述模型训练方式为自动训练方式、且所述业务满足第二业务条件的情况下,若所述业务系统满足预设空闲条件,则在所述业务系统中选择需要进行模型训练的第一节点;所述第一节点为主节点,所述第二节点为所述业务系统中的备用节点;

21、所述优化模块,还用于基于所述执行成本预测值和所述业务请求的实际执行成本值优化所述网络模型,直至模型收敛或达到预设时限条件时,获得模型训练结果。

22、在其中的一个实施例中,所述选择模块,还用于在所述模型训练方式为在线训练方式、且所述业务满足第三业务条件的情况下,响应于接收的训练任务开启指令,在所述业务系统中选择需要进行模型训练的第一节点;所述第一节点为主节点,所述第二节点为所述业务系统中的备用节点。

23、在其中的一个实施例中,所述更新模块,还用于将所述模型训练结果同步至所述备用节点,以使基于所述模型训练结果对所述备用节点的ai优化器进行更新;在所述备用节点的ai优化器进行更新后,按照所述模型训练结果对所述主节点的ai优化器进行更新,以使在完成更新之后,若接收到待处理业务请求,则通过更新后的所述ai优化器从候选执行方式中选取目标执行方式执行所述待处理业务请求。

24、在其中的一个实施例中,所述业务请求是在历史时间执行过的业务请求或预设的业务请求;

25、所述确定模块,还用于获取所述业务请求在执行后所得的所述实际执行成本值;或者,通过所述主节点重新执行所述业务请求,获得所述实际执行成本值。

26、在其中的一个实施例中,所述选择模块,还用于在所述模型训练方式为准实时训练方式、且所述业务满足第四业务条件的情况下,在所述业务系统中选择需要进行模型训练的第一节点;所述第一节点为主节点,所述第二节点为所述业务系统中的备用节点;

27、所述确定模块,用于获取基于离线训练方式、自动训练方式或在线训练方式训练所得的原始网络模型,将所述原始网络模型作为所述主节点的网络模型,确定业务请求的执行成本预测。

28、在其中的一个实施例中,所述更新模块,还用于将所述模型训练结果同步至所述备用节点,以使基于所述模型训练结果对所述备用节点的ai优化器进行更新;在所述备用节点的ai优化器进行更新后,按照所述模型训练结果对所述主节点的ai优化器进行更新,以使在完成更新之后,若接收到待处理业务请求,则通过更新后的所述ai优化器从候选执行方式中选取目标执行方式执行所述待处理业务请求。

29、在其中的一个实施例中,所述确定模块,还用于若所述业务系统的资源负载信息和资源占用信息满足预设训练条件,则按照目标概率选取所述业务系统接收的业务请求进行执行,获得所述业务请求的实际执行成本值。

30、在其中的一个实施例中,所述第一节点为主节点,所述第二节点为多个备用节点,各所述备用节点的ai优化器更新是在接收到更新通知时开始更新的;

31、所述更新模块,还用于将所述模型训练结果同步至各所述备用节点;向各所述备用节点广播所述模型训练结果的校验信息;在接收到所述备用节点响应于所述校验信息反馈的校验通过消息时,向各所述备用节点发送所述更新通知。

32、在其中的一个实施例中,所述第一节点为多个备用节点中的目标备用节点,所述第二节点为主节点;所述主节点的ai优化器更新和所述多个备用节点中的其它备用节点的ai优化器更新,是在接收到更新通知时开始更新的;

33、所述更新模块,还用于将所述模型训练结果同步至所述主节点和所述其它备用节点;向所述主节点和所述其它备用节点广播所述模型训练结果的校验信息;在接收到所述主节点和所述其它备用节点响应于所述校验信息反馈的校验通过消息时,向所述主节点和所述其它备用节点发送所述更新通知。

34、在其中的一个实施例中,所述装置还包括:

35、故障处理模块,用于在对所述第一节点的网络模型进行训练过程中,若检测到所述第一节点发生故障,则暂停所述网络模型的训练过程,在所述第一节点恢复正常时,恢复对所述网络模型的训练过程;或者,

36、过载处理模块,用于在对所述第一节点的网络模型进行训练过程中,若检测到节点发生资源争抢,则动态调节训练过程中各节点的资源使用;或者,在对所述第一节点的网络模型进行训练过程中,若检测到所述业务系统压力过载,则增加新的备用节点,并将所述网络模型的训练任务划分成子训练任务,将所得的子训练任务分发至各所述备用节点进行分布式训练。

37、在其中的一个实施例中,所述装置还包括:

38、熔断降级模块,用于当所述业务系统接收的业务流量超出预设阈值时,降低所述网络模型训练时的资源消耗量,或暂停所述网络模型的训练过程;

39、容灾处理模块,用于定时将所述网络模型在训练过程中的中间训练结果进行存储,以使在出现中断后恢复正常的情况下,基于存储的所述中间训练结果恢复所述网络模型在训练过程。

40、第三方面,本技术还提供了一种计算机设备,所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现所述ai优化器的更新方法的步骤。

41、第四方面,本技术还提供了一种计算机可读存储介质,所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现所述ai优化器的更新方法的步骤。

42、第五方面,本技术还提供了一种计算机程序产品,所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现所述ai优化器的更新方法的步骤。

43、上述ai优化器的更新方法、装置、设备、存储介质和程序产品,在业务系统设置不同的节点,在需要进行模型训练时,在业务系统中选择需要进行模型训练的其中一种第一节点,通过第一节点的网络模型确定业务请求的执行成本预测值,基于执行成本预测值和业务请求的实际执行成本值优化网络模型,而业务系统中的第二节点并不参与模型训练,因此可以有效避免模型训练过程对业务系统的正常业务的影响;此外,将所得的模型训练结果同步至业务系统的第二节点,模型训练结果用于更新第一节点的ai优化器和第二节点的ai优化器,从而不仅可以确保第一节点和第二节点之间的ai优化器的一致性,有利于业务系统的高可用性和业务处理的准确性,而且由于更新耗时短,可以降低更新时对业务系统的影响;最后,在完成ai优化器的整个更新过程后,第一节点或第二节点接收到待处理业务请求时,通过更新后的ai优化器从候选执行方式中选取目标执行方式执行待处理业务请求,可以有效提高业务的准确性。