[发明专利]数据跑批方法、装置、存储介质及集群中的成员主机在审
申请号: | 201910553729.4 | 申请日: | 2019-06-20 |
公开(公告)号: | CN110362401A | 公开(公告)日: | 2019-10-22 |
发明(设计)人: | 符修亮;叶松;梁群峰;吕林澧 | 申请(专利权)人: | 深圳壹账通智能科技有限公司 |
主分类号: | G06F9/50 | 分类号: | G06F9/50;G06F9/54 |
代理公司: | 深圳市世纪恒程知识产权代理事务所 44287 | 代理人: | 胡海国 |
地址: | 518000 广东省深圳市前海深港合作区前*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 成员主机 集群 预设 待处理数据 存储介质 分区数据 任务处理 队列 消息中间件 并发处理 队列形式 集群处理 任务节点 数据分区 随机分区 子任务数 大数据 最大化 数据库 分发 分区 发送 | ||
1.一种数据跑批方法,其特征在于,所述数据跑批方法包括以下步骤:
获取当前任务节点对应的批量待处理数据,将所述批量待处理数据进行随机分区,获得预设数量的分区数据;
根据所述预设数量的分区数据生成对应分区的子任务,将所述预设数量的所述子任务以队列形式存放至预设队列列表,并通过消息中间件发送任务处理消息至集群中的各成员主机,以使所述集群中的各成员主机监听到所述任务处理消息时,从所述预设队列列表中获取子任务进行处理。
2.如权利要求1所述的数据跑批方法,其特征在于,所述根据所述预设数量的分区数据生成对应分区的子任务,将所述预设数量的所述子任务以队列形式存放至预设队列列表,并通过消息中间件发送任务处理消息至集群中的各成员主机,以使所述集群中的各成员主机监听到所述任务处理消息时,从所述预设队列列表中获取子任务进行处理之后,所述数据跑批方法还包括:
当从所述预设队列列表中获取一个子任务时,对所述预设队列列表中的子任务数量进行减一,获得剩余子任务数。
3.如权利要求2所述的数据跑批方法,其特征在于,所述当从所述预设队列列表中获取一个子任务时,对所述预设队列列表中的子任务数量进行减一,获得剩余子任务数之后,所述数据跑批方法还包括:
当所述剩余子任务数为零时,认定获取的子任务为最后一条子任务,对所述最后一条子任务的处理进度进行监听,在监听到所述最后一条子任务处理完时,采用集群消费方式通过所述消息中间件发送子任务全部处理完成消息至所述集群。
4.如权利要求3所述的数据跑批方法,其特征在于,所述当所述剩余子任务数为零时,认定获取的子任务为最后一条子任务,对所述最后一条子任务的处理进度进行监听,在监听到所述最后一条子任务处理完时,采用集群消费方式通过所述消息中间件发送子任务全部处理完成消息至所述集群之后,所述数据跑批方法还包括:
监听到所述子任务全部处理完成消息时,判断所有子任务是否已经全部处理成功,若所有子任务已经全部处理成功,则获取下一个任务节点并执行下一个任务。
5.如权利要求1-4中任一项所述的数据跑批方法,其特征在于,所述根据所述预设数量的分区数据生成对应分区的子任务,将所述预设数量的所述子任务以队列形式存放至预设队列列表,并通过消息中间件发送任务处理消息至集群中的各成员主机,以使所述集群中的各成员主机监听到所述任务处理消息时,从所述预设队列列表中获取子任务进行处理之后,所述数据跑批方法还包括:
通过广播消费方式进行监听,在监听到所述任务处理消息时,从所述预设队列列表中获取子任务进行处理。
6.如权利要求5所述的数据跑批方法,其特征在于,所述通过广播消费方式进行监听,在监听到所述任务处理消息时,从所述预设队列列表中获取子任务进行处理,包括:
通过广播消费方式进行监听;
在监听到所述任务处理消息时,从所述预设队列列表中获取子任务进行处理;
对所述集群中的除了获取子任务的成员主机之外的其他成员主机进行获取子任务功能封锁。
7.如权利要求6所述的数据跑批方法,其特征在于,所述在监听到所述任务处理消息时,从所述预设队列列表中获取子任务进行处理,包括:
在监听到所述任务处理消息时,计算CPU占用率,根据所述CPU占用率从所述预设队列列表中获取多个子任务,并采用多线程并发处理多个子任务。
8.一种集群中的成员主机,其特征在于,所述集群中的成员主机包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的数据跑批程序,所述数据跑批程序被所述处理器执行时实现如权利要求1至7中任一项所述的数据跑批方法的步骤。
9.一种存储介质,其特征在于,所述存储介质上存储有数据跑批程序,所述数据跑批程序被处理器执行时实现如权利要求1至7中任一项所述的数据跑批方法的步骤。
10.一种数据跑批装置,其特征在于,所述数据跑批装置包括:
随机分区模块,用于获取当前任务节点对应的批量待处理数据,将所述批量待处理数据进行随机分区,获得预设数量的分区数据;
生成模块,用于根据所述预设数量的分区数据生成对应分区的子任务,将所述预设数量的所述子任务以队列形式存放至预设队列列表,并通过消息中间件发送任务处理消息至集群中的各成员主机,以使所述集群中的各成员主机监听到所述任务处理消息时,从所述预设队列列表中获取子任务进行处理。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳壹账通智能科技有限公司,未经深圳壹账通智能科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910553729.4/1.html,转载请声明来源钻瓜专利网。