数据处理方法、装置和系统与流程

专利检索2025-10-19  3


本技术涉及大数据领域,特别涉及一种数据处理方法、数据处理装置、数据处理系统、计算设备集群以及存储介质。


背景技术:

1、在线业务系统的业务量通会在一定的时间周期内会出现流量波动,例如天级流量波动、月级流量波动和由于业务系统维护带来的流量波动等,具体的:

2、(1)天级流量波动:在一个自然天内存在流量的高峰,波峰会是平均流量的数倍。常见的有互联网的用户访问量,例如购物网站可能会在一天中出现集中的访问流量。

3、(2)月级流量波动:在一个自然月内,月底会出现流量突增。常见的有订单系统、结算系统、对账系统等,这些系统会在月底进行集中的数据处理,导致处理数据量剧增,是日常流量的几十倍甚至上百倍。

4、(3)业务系统维护:由于业务系统正常运维需要,需要进行数据回放或者数据补偿操作,从而导致流量的剧增。

5、然而,现有的数据处理技术处于两级分化,在对数据处理任务的处理模式上明显分为流式(streaming)和批量(batch)。批量计算模式延时大,处理能力强,而流式计算模式处理时效高,但是处理数据量低,这两类处理模式都无法对流量波动较大的业务系统进行高效的数据处理。


技术实现思路

1、有鉴于此,本技术实施例提供了一种数据处理的方法,应用于大数据集群的主节点,所述大数据集群包括所述主节点和一个或多个从节点,所述方法包括:所述主节点接收客户端提交的作业请求,所述作业请求用于指示所述大数据集群对作业进行处理。所述主节点根据所述作业请求完成自身的配置,所述主节点用于管理所述一个或多个从节点执行所述作业;所述主节点基于第一执行模式管理所述一个或多个从节点执行所述作业,所述第一执行模式是批量处理模式和流式处理模式中任一种执行模式;当判断满足切换策略时,所述主节点将所述作业的执行模式由所述第一执行模式切换到第二执行模式,并基于所述第二执行模式继续管理所述一个或多个从节点执行所述作业;其中,如果所述第一模式为流式处理模式,则所述第二执行模式为批量处理模式,如果所述第一模式为批量处理模式,则所述第二执行模式为流式处理模式。

2、本技术实施例提供的该方法,将批量处理模式与流式处理模式的能力整合到同一个主节点上,使得该主节点可以实现不同模式间的切换,以适配波动较大的业务系统,实现更高的处理效率、提升了资源利用率。

3、一种可能的设计方式中,所述作业用于处理上游业务发送的数据,所述方法还包括:主节点监控所述上游业务发送的数据中未处理的数据量或所述上游业务发送的数据流量大小;所述切换策略为第一策略,所述第一策略包括:当所述未处理的数据量大于第一阈值时,将所述执行模式由流式处理模式切换为批量处理模式,当所述未处理的数据量小于第二阈值时,将所述执行模式由批量处理模式切换为流式处理模式;或,当所述数据流量大于第三阈值时,将所述执行模式由流式处理模式切换为批量处理模式,当所述数据流量小于第四阈值时,将所述执行模式由批量处理模式切换为流式处理模式。该方法可以使得在业务高峰期以批量处理的模式处理业务,在低峰期以流式处理模式处理业务,提升了业务处理效率,更好应对业务的波动。

4、一种可能的设计方式中,所述切换策略为第二策略,所述第二策略包括:当到达第一时刻时,将所述执行模式由流式处理模式切换为批量处理模式;当到达第二时刻时,将所述执行模式由批量处理模式切换为流式处理模式,实现了在特定时间点完成执行模式的切换。

5、一种可能的设计方式中,所述切换策略为第三策略,所述第三策略包括:当接收到客户端发送的切换指令时,将所述执行模式由流式处理模式切换为批量处理模式,或由批量处理模式切换为流式处理模式。

6、一种可能的设计方式中,所述主节点根据所述作业请求完成自身的配置,包括:获取所述作业请求中包含的关于执行模式的配置命令,所述配置命令指示将所述主节点配置为支持批量处理模式和流式处理模式两者之间的模式切换;根据所述配置命令,配置所述主节点。

7、一种可能的设计方式中,所述作业请求中还包括所述作业的应用程序,所述主节点根据所述作业请求完成自身配置,包括:获取应用程序中包含的关于执行模式的配置代码,所述配置代码用于指示将所述主节点配置为支持批量处理模式和流式处理模式之间的模式切换;根据所述配置代码,配置所述主节点。

8、一种可能的设计方式中,所述大数据集群中还包括共享状态存储模块,所述主节点将所述作业的执行模式由所述第一执行模式切换到所述第二执行模式,包括:主节点从所述状态存储模块中读取在所述第一执行模式下执行所述作业产生的状态数据,并基于所述状态数据启动第二执行模式,以对所述作业继续处理。

9、一种可能的设计方式中,所述大数据集群中还包括共享状态存储模块,所述主节点将所述作业的执行模式由所述第一执行模式切换到所述第二执行模式,包括:主节点从所述状态存储模块中读取在所述第一执行模式下执行所述作业产生的状态数据,并基于所述状态数据启动第二执行模式,以对所述作业继续处理。

10、一种可能的设计方式中,所述作业用于处理上游业务发送的数据,所述状态数据包括:已处理的数据的偏移量和中间计算结果。

11、一种可能的设计方式中,所述将所述作业的执行模式由所述第一执行模式切换到第二执行模式,还包括:将所述作业对应的计算资源,由第一执行模式的第一资源调整到第二执行模式的第二资源,其中所述计算资源包括:cpu核数、内存大小。

12、一种可能的设计方式中,所述作业请求中还包括用户配置的流式处理模式对应的第一计算资源和批量处理模式对应的第二计算资源。

13、第二方面,本技术实施例提供了一种数据处理装置,所述装置包括多个模块,该多个模块的组合可以实现第一方面或第一方面的任意一种可能的设计方式中所述的方法。

14、第三方面,本技术实施例提供了一种数据处理装置,该装置包括:接收模块,用于:接收客户端提交的作业请求,所述作业请求用于指示大数据集群对作业进行处理;配置模块,用于:根据所述作业请求完成主节点的配置,所述主节点用于管理一个或多个从节点执行所述作业;控制模块,用于:基于第一执行模式管理一个或多个从节点处理所述作业,所述第一执行模式是批量处理模式和流式处理模式中任一种模式;模式切换模块,用于:当满足切换策略时,将所述作业的执行模式由所述第一执行模式切换到第二执行模式,并基于所述第二执行模式继续管理所述一个或多个从节点执行所述作业;其中,若所述第一模式为流式处理模式,则所述第二执行模式为批量处理模式,若所述第一模式为批量处理模式,则所述第二执行模式为流式处理模式。

15、一种可能的设计方式中,所述作业用于处理上游业务发送的数据,所述装置还包括:流量监控模块,用于:监控所述上游业务发送的数据中未处理的数据量或所述上游业务发送的数据流量;所述切换策略为第一策略,所述第一策略包括:当所述未处理的数据量大于第一阈值时,将所述执行模式由流式处理模式切换为批量处理模式,当所述未处理的数据量小于第二阈值时,将所述执行模式将批量处理模式切换为流式处理模式;或当所述数据流量大于第三阈值时,将所述执行模式由流式处理模式切换为批量处理模式,当所述数据流量小于第四阈值时,将所述执行模式由批量处理模式切换为流式处理模式。

16、一种可能的设计方式中,所述切换策略为第二策略,所述第二策略包括:当到达第一时刻时,将所述执行模式由流式处理模式切换为批量处理模式;当到达第二时刻时,将所述执行模式由批量处理模式切换为流式处理模式。

17、一种可能的设计方式中,所述切换策略为第三策略,所述第三策略包括:当接收到客户端发送的切换指令时,根据所述切换指令将执行模式由流式处理模式切换为批量处理模式,或由批量处理模式切换为流式处理模式。

18、一种可能的设计方式中,所述配置模块,用于:获取所述作业请求中包含执行模式的配置命令,所述配置命令指示将所述主节点配置为支持批量处理模式和流式处理模式之间的模式切换;根据所述配置命令,配置所述主节点。

19、一种可能的设计方式中,所述作业请求中还包括所述作业的应用程序,所述配置模块还用于:获取所述应用程序中关于执行模式的配置代码,所述配置代码用于指示将所述主节点配置为支持批量处理模式和流式处理模式之间的模式切换;根据所述配置代码,配置所述主节点。

20、一种可能的设计方式中,所述装置还包括状态管理模块,用于:从所述状态存储模块中读取在所述第一执行模式下执行所述作业产生的状态数据,并基于所述状态数据启动第二执行模式,以对所述作业继续处理。

21、一种可能的设计方式中,所述作业用于处理上游业务发送的数据,所述状态数据包括:已处理的数据的偏移量和中间计算结果。

22、一种可能的设计方式中,所述切换模块,还用于:将所述作业对应的计算资源,由第一执行模式的第一资源调整到第二执行模式的第二资源,其中所述计算资源包括:cpu核数、内存大小。

23、一种可能的设计方式中,所述作业请求中还包括用户配置流式处理模式对应的第一计算资源和批量处理模式对应的第二计算资源。

24、第四方面,本技术实施例提供一种数据处理系统,所述系统包括:主节点,用于:接收客户端提交的作业请求,并根据所述作业请求完成自身配置;所述主节点,还用于:管理一个或多个从节点执行作业;从节点,用于:基于第一执行模式执行所述作业,所述第一执行模式是批量处理模式和流式处理模式中任一种执行模式;所述主节点,还用于:当满足切换策略时,将所述作业的执行模式由所述第一执行模式切换到第二执行模式,并基于所述第二执行模式继续管理所述一个或多个从节点执行所述作业;其中,若所述第一模式为流式处理模式,则所述第二执行模式为批量处理模式,若所述第一模式为批量处理模式,则所述第二执行模式为流式处理模式。

25、一种可能的设计方式中,所述作业用于处理上游业务发送的数据,所述主节点,还用于:监控所述上游业务发送的数据中未处理的数据量或所述上游业务发送的数据流量;所述切换策略为第一策略,所述第一策略包括:当所述未处理的数据量大于第一阈值时,将所述执行模式由流式处理模式切换为批量处理模式,当所述未处理的数据量小于第二阈值时,将所述执行模式将批量处理模式切换为流式处理模式;或当所述数据流量大于第三阈值时,将所述执行模式由流式处理模式切换为批量处理模式,当所述数据流量小于第四阈值时,将所述执行模式由批量处理模式切换为流式处理模式。

26、一种可能的设计方式中,所述切换策略为第二策略,所述第二策略包括:当到达第一时刻时,将执行模式由流式处理模式切换为批量处理模式;当到达第二时刻时,将执行模式由批量处理模式切换为流式处理模式。

27、一种可能的设计方式中,所述切换策略为第三策略,所述第三策略包括:当接收到客户端发送的切换指令时,所述切换指令,将执行模式由流式处理模式切换为批量处理模式,或由批量处理模式切换为流式处理模。

28、一种可能的设计方式中,所述主节点还用于:获取所述作业请求中包含执行模式的配置命令,所述配置命令指示将所述主节点配置为支持批量处理模式和流式处理模式之间的模式切换。

29、一种可能的设计方式中,所述作业请求中还包括所述作业的应用程序,所述主节点还用于:获取所述应用程序中关于执行模式的配置代码,所述配置代码用于指示将所述主节点配置为支持批量处理模式和流式处理模式的切换。

30、一种可能的设计方式中,所述系统还包括:共享状态存储模块,用于:存储在不同执行模式下产生的状态数据;所述从节点,用于:在基于第一执行模式执行所述作业时,将产生的状态数据存储在共享状态存储模块中;所述主节点,在将执行模式由所述第一执行模式切换到所述第二执行模式时,还用于:从所述状态存储模块中读取在所述第一执行模式下执行所述作业产生的状态数据,并基于所述状态数据启动所述第二执行模式,以对所述作业继续处理。

31、一种可能的设计方式中,所述作业用于处理上游业务发送的数据,所述状态数据包括:已处理的数据的偏移量和中间计算结果。

32、一种可能的设计方式中,将所述作业对应的计算资源,由第一执行模式的第一资源调整到第二执行模式的第二资源,其中所述计算资源包括:cpu核数、内存大小。

33、一种可能的设计方式中,所述作业请求中还包括用户配置的流式处理模式对应的第一计算资源和批量处理模式对应的第二计算资源。

34、第五方面,本技术提供一种计算设备集群,所述计算设备包括至少一个计算设备,所述至少一个计算设备包括至少一个处理器和至少一个存储器;所述至少一个存储器用于存储指令,所述至少一个处理器执行所述至少一个存储器存储的该指令,以使所述计算设备集群执行上述第一方面或第一方面任一种可能实现方式中的数据的方法。

35、第六方面,本技术提供一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在至少一个计算设备上运行时,使得所述至少一个计算设备执行上述第一方面或第一方面的任一种实现方式所述的方法。

36、第七方面,本技术提供了一种包含指令的计算机程序产品,当其在至少一个计算设备上运行时,使得所述计算设备集群执行上述第一方面或第一方面的任一种实现方式所述的数据处理的方法。

37、本技术在上述各方面提供的实现方式的基础上,还可以进行进一步组合以提供更多实现方式。


技术特征:

1.一种数据处理方法,其特征在于,应用于大数据集群的主节点,所述大数据集群包括所述主节点和一个或多个从节点,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,所述作业用于处理上游业务发送的数据,所述方法还包括:

3.根据权利要求1所述的方法,其特征在于,所述切换策略为第二策略,所述第二策略包括:

4.根据权利要求1所述的方法,其特征在于,所述切换策略为第三策略,所述第三策略包括:

5.根据权利要求1-4任一项所述的方法,其特征在于,所述主节点根据所述作业请求完成自身的配置,包括:

6.根据权利要求1-4任一项所述的方法,其特征在于,所述作业请求中还包括所述作业的应用程序,所述主节点根据所述作业请求完成自身配置,包括:

7.根据权利要求1-6任一项所述的方法,其特征在于,所述大数据集群中还包括共享状态存储模块,所述主节点将所述作业的执行模式由所述第一执行模式切换到所述第二执行模式,包括:

8.根据权利要求7所述的方法,其特征在于,所述作业用于处理上游业务发送的数据,所述状态数据包括:已处理的数据的偏移量和中间计算结果。

9.根据权利要求1-8任一项权利要求所述的方法,其特征在于,所述将所述作业的执行模式由所述第一执行模式切换到第二执行模式,还包括:

10.根据权利要求1-9任一项权利要求所述的方法,所述作业请求中还包括用户配置的流式处理模式对应的第一计算资源和批量处理模式对应的第二计算资源。

11.一种数据处理装置,其特征在于,所述装置包括:

12.根据权利要求11所述的装置,所述作业用于处理上游业务发送的数据,

13.根据权利要求11所述的装置,其特征在于,所述切换策略为第二策略,所述第二策略包括:

14.根据权利要求11所述的装置,其特征在于,所述切换策略为第三策略,所述第三策略包括:

15.根据权利要求11-14任一项所述的装置,所述配置模块,用于:

16.根据权利要求11-14任一项所述的装置,所述作业请求中还包括所述作业的应用程序,所述配置模块还用于:

17.根据权利要求11-16任一项所述的装置,其特征在于,所述装置还包括:

18.根据权利要求17所述的装置,其特征在于,所述作业用于处理上游业务发送的数据,

19.根据权利要求11-18所述的装置,其特征在于,

20.根据权利要求11-19任一项所述的装置,所述作业请求中还包括用户配置流式处理模式对应的第一计算资源和批量处理模式对应的第二计算资源。

21.一种数据处理系统,其特征在于,所述系统包括:

22.根据权利要求21所述的系统,其特征在于,所述作业用于处理上游业务发送的数据,所述主节点,还用于:监控所述上游业务发送的数据中未处理的数据量或所述上游业务发送的数据流量;

23.根据权利要求21所述的系统,其特征在于,所述切换策略为第二策略,所述第二策略包括:

24.根据权利要求21所述的系统,其特征在于,所述切换策略为第三策略,所述第三策略包括:

25.根据权利要求21-24任一项所述的系统,其特征在于,所述主节点还用于:获取所述作业请求中包含执行模式的配置命令,所述配置命令指示将所述主节点配置为支持批量处理模式和流式处理模式之间的模式切换。

26.根据权利要求21-25任一项所述的系统,其特征在于,所述作业请求中还包括所述作业的应用程序,所述主节点还用于:

27.根据权利要求21-26任一项所述的系统,其特征在于,所述系统还包括:

28.根据权利要求27所述的系统,所述作业用于处理上游业务发送的数据,所述状态数据包括:已处理的数据的偏移量和中间计算结果。

29.根据权利要求21-28所述的系统,其特征在于,所述主节点还用于:

30.根据权利要求21-29所述的系统,其特征在于,所述作业请求中还包括用户配置的流式处理模式对应的第一计算资源和批量处理模式对应的第二计算资源。

31.一种计算设备集群,其特征在于,包括至少一个计算设备,每个计算设备包括处理器和存储器;

32.一种计算机可读存储介质,其特征在于,包括计算机程序指令,当所述计算机程序指令由计算设备集群执行时,所述计算设备集群执行如权利要求1至10任一项所述的方法。


技术总结
为了对流量波动较大的业务系统进行高效的数据处理,本申请实施例提出了一种处理机制来解决这种问题,应用于大数据集群处理客户端提交的作业:在大数据集群在以某种第一执行模式(流式处理或批量处理)处理某个作业,若主节点判断满足切换策略,主节点将前述作业的执行模式由所述第一执行模式切换到第二执行模式,并基于所述第二执行模式继续管理所述一个或多个从节点执行所述作业。其中,如果所述第一模式为流式处理模式,则所述第二执行模式为批量处理模式,如果所述第一模式为批量处理模式,则所述第二执行模式为流式处理模式。

技术研发人员:受春柏,徐礼锋,崔博,张帅
受保护的技术使用者:华为云计算技术有限公司
技术研发日:
技术公布日:2024/5/29
转载请注明原文地址:https://win.8miu.com/read-1158015.html

最新回复(0)