一种基于有向无环图的任务并行调度算法制造技术

技术编号:36466686 阅读:16 留言:0更新日期:2023-01-25 23:07
本发明专利技术公开了一种基于有向无环图的任务并行调度算法,所述基于有向无环图的任务并行调度算法包括:模型数据展示层、引擎数据处理层和基础设施层,模型数据展示层和引擎数据处理层之间进行数据交互,引擎数据处理层和设施层和引擎数据处理层进行数据交互;具有提高数据流处理的性能、可维护性、易用性,解决复杂关系数据流模型数据处理过程的顺序性、正确性和并发性,降低数据流处理过程任务生成和任务处理之间的耦合性等优点。理之间的耦合性等优点。理之间的耦合性等优点。

【技术实现步骤摘要】
一种基于有向无环图的任务并行调度算法


[0001]本专利技术涉及网络即时通话数据自动处理和流转
,尤其涉及一种基于有向无环图的任务并行调度算法。

技术介绍

[0002]现行数据处理方案是 通过创建触发器的方式来进行下游数据模型字段的计算和数据聚合操作 ;但现行方案通常存在下面几个问题:1.不能清晰的维护上下游模型字段间的关系;2.不能准确并不重复的按照顺序对需要计算或取数的下游字段进行处理;3.触发器方式只能进行串行任务处理;4.手动建立触发器比较繁琐;5.处理任务的生成和计算是耦合在一起的。触发器无法满足实际业务场景对数据流转的要求,需要配合线下的数处理,在可维护性、可用性和性能上均存在缺陷和不足;产生该缺陷、不足的原因是触发器是针对单场景下的下游数据计算或者抽取,而实际上这些场景之间是有关系的,他们之间互相依赖,目前的方案如果要最终算出所有的数据,需要根据触发条件进行顺序计算,这个过程是线性的,而且计算过程中会有重复的计算。
[0003]一个实际业务场景通常会有多条数据流转需求同时存在,这要求数据流转任务不仅要准确还要尽量的快,传统的触发器式数流转任务是线性的,并行处理优化空间受限,随着数据处理复杂度的提高以及数据量的增加,性能存在瓶颈。
[0004]本专利技术提供一种基于有向无环图的任务并行调度算法,解决上述问题。

技术实现思路

[0005]本专利技术所要解决的技术问题在于1.不能清晰的维护上下游模型字段间的关系;2.不能准确并不重复的按照顺序对需要计算或取数的下游字段进行处理;3.触发器方式只能进行串行任务处理;4.手动建立触发器比较繁琐;5.处理任务的生成和计算是耦合在一起的。触发器无法满足实际业务场景对数据流转的要求,需要配合线下的数处理,在可维护性、可用性和性能上均存在缺陷和不足,所以提供一种基于有向无环图的任务并行调度算法,所述基于有向无环图的任务并行调度算法包括:模型数据展示层、引擎数据处理层和基础设施层,所述模型数据展示层和所述引擎数据处理层之间进行数据交互,所述引擎数据处理层和所述设施层和所述引擎数据处理层进行数据交互;所述引擎数据处理层包括业务模型关系链路中心、任务生成引擎、并行计算任务处理引擎和任务管理中心;所述业务模型关系链路中心用于接收所述模型数据展示层发送的数据处理后向所述基础设施层发送数据,所述任务生成引擎用于接收所述基础设施层和/或模型数据展示层发送的数据处理后向所述基础设施层发送数据,所述并行计算任务处理引擎用于接收
所述基础设施层发送的数据处理后向所述模型数据展示层和/或所述基础设施层发送数据,所述任务管理中心用于接收所述基础设施层发送的数据处理后向所述模型数据展示层发送数据。
[0006]进一步地,所述模型数据展示层用于创建数据模型,设置模型间的关系,将创建完的数据模型和模型间的关系信息发送至所述业务模型关系链路中心;所述模型数据展示层还用于进行数据处理操作,将经过操作的数据发送至任务生成引擎;所述模型数据展示层还用于接收所述并行计算任务处理引擎发送的数据,进行计算结果的展示;所述模型数据展示层还用于接收所述任务管理中心发送的数据,进行任务状态/进度展示。
[0007]进一步地,所述基础设施层包括数据中心,所述数据中心用于接收所述业务模型关系链路中心发送的DAG数据,还用于向所述任务生成引擎发送DAG数据,所述数据中兴还用于接收所述任务生成引擎、并行计算任务处理引擎和所述任务管理中心发送的任务数据,还用于向所述任务管理中心发送任务数据。
[0008]进一步地,所述基础设施层还包括消息总线,所述消息总线用于接收所述任务生成引擎发送的数据处理后发送至所述并行计算任务处理引擎。
[0009]进一步地,所述业务模型关系链路中心用于接收所述模型数据展示层发送的数据模型和模型间的关系信息,自动生成/维护DAG图,并将DAG图发送至所述基础设施层的数据中心。
[0010]进一步地,所述任务生成引擎用于接收所述基础设施层的数据中心发送的DAG数据和/或模型数据展示经数据处理操作后的数据,根据并行任务生成算法生成并向数据中心和/或消息总线发送任务数据。
[0011]进一步地,所述模型数据展示层还用于接收外部数据。
[0012]采用本专利技术具有以下的优点:1.本申请将现行方案中的 使用建立触发器式的方式维护元数据关系和处理梳理流变更为使用有向无环图(DAG)维护上下游不同数据模型间的关系,使得上下游模型字段之间的关系可维护性更高的同时提供了顺序性,解决触发器重复触发问题。2.本申请增加了并发任务生成中心、上下游数据模型字段关系图数维护表,任务状态表,基于图数据的可视化效果和图顶点的状态描述,极大方便了用户对整理数据流的维护,以及对数据流转状态的把控。
[0013]3.本申请增加了基于有向无环图(DAG)的任务调度算法,在保证计算顺序的同时,极大的提高了并发性,可以方便的与流计算框架进行结合,高效的进行流数据处理。
[0014]4.本申请增加了可靠的数据流转处理进度,使得用户可以直观的看到任务处理的进度。
[0015]5.本申请分离了数据流任务生成和任务计算,可以根据任务生成和计算的不同特点进行精细的资源分配,同时由于分离了任务生成和计算,可以将特定客户的流量进行定向分发。6.本申请针对数据计算和数据聚合,建立了统一的数据流模型,保证了数据计算
和数据聚合的顺序,客户只需要考虑业务模型关系,无需担忧数据。
附图说明
[0016]图1是现有技术的流程图;图2是本专利技术的流程图;图3是DAG拓扑排序的示意图;图4是DAG并行排序的示意图。
具体实施方式
[0017]为使本专利技术的目的、技术方案和优点更加清楚,下面将结合附图对本专利技术作进一步地详细描述。
实施例
[0018]本实施例中,参考说明书附图1

4,本实施例所要解决的技术问题在于1.不能清晰的维护上下游模型字段间的关系;2.不能准确并不重复的按照顺序对需要计算或取数的下游字段进行处理;3.触发器方式只能进行串行任务处理;4.手动建立触发器比较繁琐;5.处理任务的生成和计算是耦合在一起的。触发器无法满足实际业务场景对数据流转的要求,需要配合线下的数处理,在可维护性、可用性和性能上均存在缺陷和不足,所以提供一种基于有向无环图的任务并行调度算法,所述基于有向无环图的任务并行调度算法包括:模型数据展示层、引擎数据处理层和基础设施层,所述模型数据展示层和所述引擎数据处理层之间进行数据交互,所述引擎数据处理层和所述设施层和所述引擎数据处理层进行数据交互;所述引擎数据处理层包括业务模型关系链路中心、任务生成引擎、并行计算任务处理引擎和任务管理中心;所述业务模型关系链路中心用于接收所述模型数据展示层发送的数据处理后向所述基础设施层发送数据,所述任务生成引擎用于接收所述基础设施层和/或模型数据展示层发送的数据处理后向所述基础设施层发送数据,所述并行计算任务处理引擎用于接收所述基础设施层发送的数据处理后向所述模型数据本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于有向无环图的任务并行调度算法,其特征在于,包括模型数据展示层、引擎数据处理层和基础设施层,所述模型数据展示层和所述引擎数据处理层之间进行数据交互,所述引擎数据处理层和所述设施层和所述引擎数据处理层进行数据交互;所述引擎数据处理层包括业务模型关系链路中心、任务生成引擎、并行计算任务处理引擎和任务管理中心;所述业务模型关系链路中心用于接收所述模型数据展示层发送的数据处理后向所述基础设施层发送数据,所述任务生成引擎用于接收所述基础设施层和/或模型数据展示层发送的数据处理后向所述基础设施层发送数据,所述并行计算任务处理引擎用于接收所述基础设施层发送的数据处理后向所述模型数据展示层和/或所述基础设施层发送数据,所述任务管理中心用于接收所述基础设施层发送的数据处理后向所述模型数据展示层发送数据。2.根据权利要求1所述的基于有向无环图的任务并行调度算法,其特征在于,所述模型数据展示层用于创建数据模型,设置模型间的关系,将创建完的数据模型和模型间的关系信息发送至所述业务模型关系链路中心;所述模型数据展示层还用于进行数据处理操作,将经过操作的数据发送至任务生成引擎;所述模型数据展示层还用于接收所述并行计算任务处理引擎发送的数据,进行计算结果的展示;所述模型数据展示层还用于接收所述任务管理中心发送的数据,进行...

【专利技术属性】
技术研发人员:朱德权
申请(专利权)人:上海利唐信息科技有限公司
类型:发明
国别省市:

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

1