CN117076141B - 一种高适用性离线数据处理任务发布方法及系统 - Google Patents

一种高适用性离线数据处理任务发布方法及系统 Download PDF

Info

Publication number
CN117076141B
CN117076141B CN202311339331.3A CN202311339331A CN117076141B CN 117076141 B CN117076141 B CN 117076141B CN 202311339331 A CN202311339331 A CN 202311339331A CN 117076141 B CN117076141 B CN 117076141B
Authority
CN
China
Prior art keywords
task
data processing
tasks
occupancy rate
memory
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202311339331.3A
Other languages
English (en)
Other versions
CN117076141A (zh
Inventor
杨阳
许董
钱锋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Xunce Technology Co ltd
Original Assignee
Shenzhen Xunce Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shenzhen Xunce Technology Co ltd filed Critical Shenzhen Xunce Technology Co ltd
Priority to CN202311339331.3A priority Critical patent/CN117076141B/zh
Publication of CN117076141A publication Critical patent/CN117076141A/zh
Application granted granted Critical
Publication of CN117076141B publication Critical patent/CN117076141B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5038Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3055Monitoring arrangements for monitoring the status of the computing system or of the computing system component, e.g. monitoring if the computing system is on, off, available, not available
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • G06F11/3476Data logging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5016Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明公开了一种高适用性离线数据处理任务发布方法,涉及计算机技术领域,该方法包括:在数据库中创建离线任务表,创建离线数据处理任务池;通过处理器占用率、内存占用率,以及执行消耗时间计算出离线数据处理任务的第一评估指数;通过处理器占用率、内存占用率以及数据量建立相关度模型;通过相关度模型预测任务所需处理器占用率和内存占用率,并与任务的第一评估指数以及优先级进行关联,生成第二评估指数。另外,本发明还提供了一种高适用性离线数据处理任务发布系统,包括任务创建模块、任务池、任务分析模块以及任务调度模块。本发明提高离线数据处理任务的执行效率以及对生产系统资源的充分利用,避免生产系统资源的浪费。

Description

一种高适用性离线数据处理任务发布方法及系统
技术领域
本发明涉及计算机技术领域,具体为一种高适用性离线数据处理任务发布方法及系统。
背景技术
随着信息技术的快速发展,数据处理已成为各行业的重要需求,然而,现有的数据处理系统多数针对特定场景,缺乏通用性,且在处理大规模或复杂的离线数据时,效率低下,难以满足现代业务需求。
在申请公布号为CN112445600A的中国发明申请中,公开了一种离线数据处理任务发布方法,根据用户的离线数据处理任务更新操作,从代码评审中心Gerrit中获取各个离线数据处理任务的最新代码,编辑最新代码,对各个离线数据处理任务进行配置并将配置后的各个离线数据处理任务的状态设置为待发布状态,利用调度引擎,将待发布状态的离线数据处理任务发送至任务调度中心进行发布。
在以上发明申请中,支持脚本类离线数据处理之间的依赖关系、脚本类离线数据处理之间的依赖关系、跨工作流的依赖关系。然而,对于生产系统资源却没有进行有效的利用,无法根据生产系统资源进行合理调度和分配,导致了生产系统资源在闲置时的浪费。
为此,本发明提供了一种高适用性离线数据处理任务发布方法及系统。
发明内容
(一)解决的技术问题
针对现有技术的不足,本发明提供了一种高适用性离线数据处理任务发布方法及系统,旨在提高离线数据处理任务的执行效率以及对生产系统资源的充分利用,避免生产系统资源的浪费。开发一种适用于各种场景、高效且准确的离线数据处理任务发布方法及系统,具有重要的实用价值。
(二)技术方案
为实现以上目的,本发明通过以下技术方案予以实现:一种高适用性离线数据处理任务发布方法,包括以下步骤:
在数据库中创建离线任务表,并通过图形化界面或文本输入的方式定义数据处理任务;
创建离线数据处理任务池,设定任务池任务容量,并通过日志和系统监控工具对任务池的运行状态进行管理和监控;
从数据库获取任务所需要处理的总数据量Total,对每个任务使用离线数据进行执行测试,获取处理器占用率CPU、内存占用率Memory以及执行消耗时间t,以用于计算出当前任务的第一评估指数γ;
使用离线数据对任务进行执行测试,通过系统监控工具记录任务执行时处理器占用率、内存占用率,并建立相关度模型,通过对相关度模型输入数据量,预测任务所需处理器占用率以及内存占用率,并使用离线数据进行训练,直至输出结果的准确性达到期望值;
通过相关度模型预测任务所需处理器占用率CPUi和内存占用率Memoryi,并与任务的第一评估指数γi以及优先级priorityi进行关联,生成第二评估指数δi,预先设置闲置资源阈值,并与生产系统闲置资源与任务所需资源差值进行比对,根据比对结果,作出相应措施。
进一步的,所述离线数据任务表的字段包括任务的唯一标识符、任务的名称、任务的方法名称、任务文件的路径、任务的优先级、任务是否重复使用、任务的状态、创建者、创建时间、更新者以及更新时间。
进一步的,任务池的相关操作包括:
确定任务类型和数量,确定离线数据处理任务类型,以及每种类型的任务数量;
设定任务池的容量,根据任务类型和数量,为任务池设定一个初始的容量;
实现任务调度和发布,通过轮询、优先级调度用于将任务分配给空闲的处理单元;
创建处理单元,每个处理单元包括单独的线程、进程或者分布式计算节点;
管理任务池,在任务池运行过程中,对其进行管理,包括任务的提交、处理、完成以及异常处理,并使用日志、监控系统工具来监控和管理任务池的运行状态。
进一步的,所述离线数据处理任务的第一评估指数γ计算过程如下:
从数据库获取任务所需要处理的数据总量,对每个任务使用离线数据进行执行测试,并通过系统监控工具记录当前任务在执行数据时所占用的生产系统资源,包括处理器占用率、内存占用率,以及执行消耗时间;
通过数据总量、处理器占用率、内存占用率以及执行消耗时间,计算当前任务的第一评估指数γ,计算公式如下:
其中,m为离线数据的数据量,CPU为处理器占用率,Memory为内存占用率,Total为数据总量,t为执行消耗时间,k1、k2、k3为权重因子,且,/>,/>
进一步的,相关度模型的建立以及训练包括:
使用离线数据对任务进行执行测试,并通过系统监控工具记录任务执行时处理器占用率、内存占用率以及使用的数据量;
将任务执行使用的数据量Number、处理器占用率CPU建立关联函数,将任务执行使用的数据量Number、内存占用率Memory建立关联函数,并建立相关度模型;
通过对相关度模型输入数据量,预测任务所需处理器占用率以及内存占用率,并使用大量离线数据对相关度模型进行训练和测试,直至输出结果的准确性达到期望值。
进一步的,任务的调度和发布包括:
通过相关度模型预测任务所需处理器占用率CPUi和内存占用率Memoryi,并与任务的第一评估指数γi以及优先级priorityi进行关联,生成第二评估指数δi,计算公式如下:
其中,i为任务ID,n为任务总数,为所有任务所需处理器占用率的加权平均数,为所有任务所需内存占用率的加权平均数;
通过系统监控工具获取生产系统闲置资源,通过比对来对任务进行调度并发布,预先设置闲置资源阈值,闲置资源阈值不低于当前生产系统资源的15%,当生产系统闲置资源与任务所需资源差值小于闲置资源阈值时,执行当前任务,反之则不进行操作;
当有多个任务同时满足上述条件时,比较其第二评估指数δi,优先执行第二评估指数δi最大的任务;当任务执行时,通过系统监控工具获取生产系统闲置资源,预先设置风险阈值,当生产系统闲置资源小于风险阈值时,暂停任务的执行,当生产系统闲置资源大于风险阈值时,重新启动任务。
一种高适用性离线数据处理任务发布系统,包括以下模块:
任务创建模块,用于创建离线数据处理任务,并对任务的相关内容进行定义,包括任务名称、任务方法名称、文件路径、优先级以及是否重复使用;
任务池,用于对离线数据处理任务进行管理、调度和发布;
任务分析模块,用于计算离线数据处理任务的第一评估指数以及建立任务数据量和所需生产系统资源之间的相关度模型以及生成第二评估指数;
任务调度模块,用于对离线数据处理任务从任务池的存取,以及对任务执行、暂停和终止的控制。
本发明另一方面提供一种计算机设备,包括处理器和存储器,所述存储器中存储有至少一条指令或至少一段程序,所述至少一条指令或所述至少一段程序由所述处理器加载并执行以实现如上述的数据处理方法中执行的各个步骤。
本发明另一方面提供一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一条指令或至少一段程序,所述至少一条指令或所述至少一段程序由处理器加载并执行以实现如上述的数据处理方法中执行的各个步骤。
(三)有益效果
本发明提供了一种高适用性离线数据处理任务发布方法及系统,具备以下有益效果:
(1)通过创建离线数据任务表,并通过图形化界面或文本输入的方式定义数据处理任务,来完成对离线任务的配置,且通过配置优先级即可完成对离线任务发布调控,极大地简化了操作,提升了便捷性。
(2)通过创建离线数据处理任务池,并对任务池进行监控和管理,可以有效地对离线数据处理任务进行管控,避免由于执行的任务过多造成生产系统拥挤甚至崩溃,提高任务处理的效率以及生产系统的稳定性。
(3)通过对离线数据处理任务的相关数据进行计算,获得任务的第一评估指数,可以以此作为依据,综合其他因素来对任务进行管控,完成任务的派发,提升资源的利用率,以及任务处理的效率。
(4)通过对任务的第一评估指数、优先级以及所需生产系统资源进行分析,对离线数据处理任务进行调度和发布,可以避免生产系统闲置资源的浪费,提升离线数据任务的处理效率,节省生产系统资源。
附图说明
图1为本发明高适用性离线数据处理任务发布方法流程示意图;
图2为本发明高适用性离线数据处理任务发布系统结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图1,本发明提供一种高适用性离线数据处理任务发布方法,包括以下步骤:
步骤一:在数据库中创建离线数据任务表,并通过图形化界面或文本输入的方式定义数据处理任务;
所述步骤一包括以下内容:
步骤101:打开数据库管理系统(如MySQL、PostgreSQL等),并连接到相应的数据库;
步骤102:创建一个新的数据库表以存储离线任务,使用SQL语句来创建表,sql语句如下:
CREATE TABLE offline_tasks (
id INT PRIMARY KEY AUTO_INCREMENT,
task_name VARCHAR(255),
method_name VARCHAR(255),
file_path VARCHAR(255),
priority INT(2),
re_use BOOLEAN,
creator VARCHAR(255),
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
updater VARCHAR(255),
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
status ENUM('Pending', 'Running', 'Completed', 'Failed') DEFAULT 'Pending'
);
步骤103:通过图形化界面或文本输入的方式定义数据处理任务,使用适当的数据库查询语言(如SQL)或ORM(对象关系映射)库来访问和操作该表,执行插入、查询、更新和删除等操作来管理离线任务。
需要说明的是,在上述步骤中创建了一个名为offline_tasks的表,包含以下字段:
id: 任务的唯一标识符,使用自增的整数作为主键。
task_name: 任务的名称,使用最大长度为255个字符的字符串来存储。
method_name: 任务的方法名称,使用最大长度为255个字符的字符串来存储。
file_path: 任务文件的路径,使用最大长度为255个字符的字符串来存储。
priority:任务的优先级,使用最大长度为2的整数类型来存储。
re_use:任务是否重复使用,使用布尔类型(BOOLEAN)来限制可能的值,'1'为是、'0'为否。
creator: 创建任务的用户的标识符,使用最大长度为255个字符的字符串来存储。
created_at: 任务创建的时间戳。
updater: 更新任务的用户的标识符,使用最大长度为255个字符的字符串来存储。
updated_at: 任务最后更新的时间戳,该字段设置为默认值并在更新时自动更新为当前时间戳。
status: 任务的状态,使用枚举类型(ENUM)来限制可能的值,包括'Pending'(待处理)、'Running'(正在运行)、'Completed'(已完成)和'Failed'(失败),默认值为'Pending'。
结合步骤101至步骤103的内容:
通过创建离线数据任务表,并通过图形化界面或文本输入的方式定义数据处理任务,来完成对离线任务的配置,且通过配置优先级即可完成对离线任务发布调控,极大地简化了操作,提升了便捷性。
步骤二:创建离线数据处理任务池,设定任务池任务容量,并通过日志和系统监控工具对任务池的运行状态进行管理和监控;
所述步骤二包括以下内容:
步骤201:确定任务类型和数量,确定离线数据处理任务有哪些类型,以及每种类型的任务数量;
步骤202:设定任务池的容量,根据任务类型和数量,为任务池设定一个初始的容量,容量的设定应该考虑到生产系统的处理能力、任务的第一评估指数以及任务的优先级等因素,容量过大可能会导致资源浪费,而容量过小则可能无法满足任务处理的需求;
步骤203:实现任务调度和发布,通过轮询、优先级调度用于将任务分配给空闲的处理单元;
步骤204:创建处理单元,每个处理单元可以是一个单独的线程、进程或者分布式计算节点,具体取决于生产系统架构和设计;
步骤205:管理任务池,在任务池运行过程中,对其进行管理,包括任务的提交、处理、完成以及异常处理等,可以使用各种工具来监控和管理任务池的运行状态,例如日志、监控系统等。
需要说明的是,离线数据处理任务池的设计和实现可能会受到多种因素的影响,例如生产系统的性能、资源的限制以及任务的特性等,因此,在实际操作中,需要根据具体情况进行调整和优化。
结合步骤201至步骤205中的内容:
通过创建离线数据处理任务池,并对任务池进行监控和管理,可以有效地对离线数据处理任务进行管控,避免由于执行的任务过多造成生产系统拥挤甚至崩溃,提高任务处理的效率以及生产系统的稳定性。
步骤三:从数据库获取任务所需要处理的总数据量Total,对每个任务使用离线数据进行执行测试,获取处理器占用率CPU、内存占用率Memory以及执行消耗时间t,以用于计算出当前任务的第一评估指数γ;
所述步骤三包括以下内容:
步骤301:从数据库获取任务所需要处理的数据总量,对每个任务使用数据进行执行测试,并通过系统监控工具记录当前任务在执行数据时所占用的生产系统资源,包括处理器占用率、内存占用率,以及执行消耗时间;
步骤302:通过数据总量、处理器占用率、内存占用率以及执行消耗时间,计算当前任务的第一评估指数γ,计算公式如下:
其中,m为离线数据的数据量,CPU为处理器占用率,Memory为内存占用率,Total为数据总量,t为执行消耗时间,k1、k2、k3为权重因子,且,/>,/>
需要说明的是,离线数据处理任务的第一评估指数是由多种因素决定的,如数据结构、算法、硬件配置、操作系统、多线程等等,此处只是对任务的第一评估指数进行粗浅地估算,因此只考虑到数据总量、数据总量、处理器占用率、内存占用率以及执行消耗时间这些影响因素,借由计算获得的第一评估指数对离线数据处理任务进行评估,根据生产系统资源的占用率,来对任务进行调度和发布。
结合步骤301至步骤302的内容:
通过对离线数据处理任务的相关数据进行计算,获得任务的第一评估指数,可以以此作为依据,综合其他因素来对任务进行管控,完成任务的派发,提升资源的利用率,以及任务处理的效率。
步骤四:使用离线数据对任务进行执行测试,通过系统监控工具记录任务执行时处理器占用率、内存占用率,并建立相关度模型,通过对相关度模型输入数据量,预测任务所需处理器占用率以及内存占用率,并使用离线数据进行训练,直至输出结果的准确性达到期望值;
所述步骤四包括以下内容:
步骤401:使用离线数据对任务进行执行测试,并通过系统监控工具记录任务执行时处理器占用率、内存占用率以及使用的数据量;
步骤402:将任务执行使用的数据量Number、处理器占用率CPU建立关联函数,将任务执行使用的数据量Number、内存占用率Memory建立关联函数,并建立相关度模型;
步骤403:通过对相关度模型输入数据量,预测任务所需处理器占用率以及内存占用率,并使用大量离线数据对相关度模型进行训练和测试,直至输出结果的准确性达到期望值。
需要说明的是,测试过的数学模型具有较高的准确度,可以用于对真实结果进行预测,所述步骤四用于对重复使用的离线数据处理任务进行训练,对于只执行几次甚至单次的任务不进行考虑,通过离线数据处理任务表中的re_use字段来确定。
结合步骤401至步骤403的内容:
通过使用大量数据对离线数据处理任务进行执行测试,得到数据量与所占资源的相关度模型,可以在以后的任务执行前,预测出当前任务需要占用的资源,以此来进行任务调度和发布,充分利用生产系统的资源,提高资源利用率。
步骤五:通过相关度模型预测任务所需处理器占用率CPUi和内存占用率Memoryi,并与任务的第一评估指数γi以及优先级priorityi进行关联,生成第二评估指数δi,预先设置闲置资源阈值,并与生产系统闲置资源与任务所需资源差值进行比对,根据比对结果,作出相应措施。
所述步骤五包括以下内容:
步骤501:通过相关度模型预测任务所需处理器占用率CPUi和内存占用率Memoryi,并与任务的第一评估指数γi以及优先级priorityi进行关联,生成第二评估指数δi,计算公式如下:
其中,i为任务ID,n为任务总数,为所有任务所需处理器占用率的加权平均数,为所有任务所需内存占用率的加权平均数;
步骤502:通过系统监控工具获取生产系统闲置资源,通过比对来对任务进行调度并发布,预先设置闲置资源阈值,闲置资源阈值不低于当前生产系统资源的15%,当生产系统闲置资源与任务所需资源差值小于闲置资源阈值时,执行当前任务,反之则不进行操作;
步骤503:当有多个任务同时满足上述条件时,比较其第二评估指数δi,优先执行第二评估指数δi最大的任务;
步骤503:当任务执行时,通过系统监控工具获取生产系统闲置资源,预先设置风险阈值,当生产系统闲置资源小于风险阈值时,暂停任务的执行,当生产系统闲置资源大于风险阈值时,重新启动任务。
需要说明的是,对于只执行单次或几次的任务,根据任务需要设置优先级,无需预测其所需资源,在生产系统闲置资源充足时进行处理即可,对于可重复执行的任务,在测试环境对其进行测试,建立相关度模型后移植到生产环境。
结合步骤501至步骤503的内容:
通过对任务的第一评估指数、优先级以及所需生产系统资源进行分析,对离线数据处理任务进行调度和发布,可以避免生产系统闲置资源的浪费,提升离线数据任务的处理效率,节省生产系统资源。
请参阅图2,本发明还提供了一种高适用性离线数据处理任务发布系统,包括以下模块:
任务创建模块,用于创建离线数据处理任务,并对任务的相关内容进行定义,包括任务名称、任务方法名称、文件路径、优先级以及是否重复使用;
任务池,用于对离线数据处理任务进行管理、调度和发布;
任务分析模块,用于计算离线数据处理任务的第一评估指数以及建立任务数据量和所需生产系统资源之间的相关度模型以及生成第二评估指数;
任务调度模块,用于对离线数据处理任务从任务池的存取,以及对任务执行、暂停和终止的控制。
本申请还提供一种计算机设备,包括处理器和存储器,所述存储器中存储有至少一条指令或至少一段程序,所述至少一条指令或所述至少一段程序由所述处理器加载并执行以实现如上述的数据处理方法中执行的各个步骤。
本申请还提供了一种计算机可读存储介质,计算机可读存储介质中存储有计算机执行指令,计算机执行指令被处理器执行时用于实现本申请各方法实施例的步骤。
上述公式均是去量纲取其数值计算,公式是由采集大量数据进行软件模拟得到最近真实情况的一个公式,公式中的预设参数由本领域的技术人员根据实际情况进行设置。
上述实施例,可以全部或部分地通过软件、硬件、固件或其他任意组合来实现。当使用软件实现时,上述实施例可以全部或部分地以计算机程序产品的形式实现。本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。

Claims (8)

1.一种高适用性离线数据处理任务发布方法,其特征在于,包括以下步骤:
在数据库中创建离线任务表,并通过图形化界面或文本输入的方式定义数据处理任务;
创建离线数据处理任务池,设定任务池任务容量,并通过日志和系统监控工具对任务池的运行状态进行管理和监控;
从数据库获取任务所需要处理的总数据量Total,对每个任务使用离线数据进行执行测试,获取处理器占用率CPU、内存占用率Memory以及执行消耗时间t,以用于计算出当前任务的第一评估指数γ;
使用离线数据对任务进行执行测试,通过系统监控工具记录任务执行时处理器占用率、内存占用率,并建立相关度模型,通过对相关度模型输入数据量,预测任务所需处理器占用率以及内存占用率,并使用离线数据进行训练,直至输出结果的准确性达到期望值;
通过相关度模型预测任务所需处理器占用率CPUi和内存占用率Memoryi,并与任务的第一评估指数γi以及优先级priorityi进行关联,生成第二评估指数δi,预先设置闲置资源阈值,并与生产系统闲置资源与任务所需资源差值进行比对,根据比对结果,作出相应措施,具体包括:
通过相关度模型预测任务所需处理器占用率CPUi和内存占用率Memoryi,并与任务的第一评估指数γi以及优先级priorityi进行关联,生成第二评估指数δi,计算公式如下:
其中,i为任务ID,n为任务总数,为所有任务所需处理器占用率的加权平均数,为所有任务所需内存占用率的加权平均数;
通过系统监控工具获取生产系统闲置资源,通过比对来对任务进行调度并发布,预先设置闲置资源阈值,闲置资源阈值不低于当前生产系统资源的15%,当生产系统闲置资源与任务所需资源差值小于闲置资源阈值时,执行当前任务,反之则不进行操作;
当有多个任务同时满足上述条件时,比较其第二评估指数δi,优先执行第二评估指数δi最大的任务;当任务执行时,通过系统监控工具获取生产系统闲置资源,预先设置风险阈值,当生产系统闲置资源小于风险阈值时,暂停任务的执行,当生产系统闲置资源大于风险阈值时,重新启动任务。
2.根据权利要求1所述的一种高适用性离线数据处理任务发布方法,其特征在于,
所述离线数据任务表的字段包括任务的唯一标识符、任务的名称、任务的方法名称、任务文件的路径、任务的优先级、任务是否重复使用、任务的状态、创建者、创建时间、更新者以及更新时间。
3.根据权利要求1所述的一种高适用性离线数据处理任务发布方法,其特征在于,
任务池的相关操作包括:确定任务类型和数量,确定离线数据处理任务类型,以及每种类型的任务数量;设定任务池的容量,根据任务类型和数量,为任务池设定一个初始的容量;实现任务调度和发布,通过轮询、优先级调度用于将任务分配给空闲的处理单元;创建处理单元,每个处理单元包括单独的线程、进程或者分布式计算节点;
管理任务池,在任务池运行过程中,对其进行管理,包括任务的提交、处理、完成以及异常处理,并使用日志、监控系统工具来监控和管理任务池的运行状态。
4.根据权利要求1所述的一种高适用性离线数据处理任务发布方法,其特征在于,
所述离线数据处理任务的第一评估指数γ计算过程如下:从数据库获取任务所需要处理的数据总量,对每个任务使用离线数据进行执行测试,并通过系统监控工具记录当前任务在执行数据时所占用的生产系统资源,包括处理器占用率、内存占用率以及执行消耗时间;
通过数据总量、处理器占用率、内存占用率以及执行消耗时间,计算当前任务的第一评估指数γ,计算公式如下:
其中,m为离线数据的数据量,CPU为处理器占用率,Memory为内存占用率,Total为数据总量,t为执行消耗时间,k1、k2、k3为权重因子,且,/>,/>
5.根据权利要求1所述的一种高适用性离线数据处理任务发布方法,其特征在于,相关度模型的建立以及训练包括:
使用离线数据对任务进行执行测试,并通过系统监控工具记录任务执行时处理器占用率、内存占用率以及使用的数据量;
将任务执行使用的数据量Number、处理器占用率CPU建立关联函数,将任务执行使用的数据量Number、内存占用率Memory建立关联函数,并建立相关度模型;
通过对相关度模型输入数据量,预测任务所需处理器占用率以及内存占用率,并使用大量离线数据对相关度模型进行训练和测试,直至输出结果的准确性达到期望值。
6.一种高适用性离线数据处理任务发布系统,应用权利要求1至5中任一项所述的方法,其特征在于,包括以下模块:
任务创建模块,用于创建离线数据处理任务,并对任务的相关内容进行定义,包括任务名称、任务方法名称、文件路径、优先级以及是否重复使用;
任务池,用于对离线数据处理任务进行管理、调度和发布;
任务分析模块,用于计算离线数据处理任务的第一评估指数以及建立任务数据量和所需生产系统资源之间的相关度模型以及生成第二评估指数;
任务调度模块,用于对离线数据处理任务从任务池的存取,以及对任务执行、暂停和终止的控制。
7.一种计算机设备,其特征在于,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现权利要求1至5中任一项所述方法。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如权利要求1至5中任一项所述的方法。
CN202311339331.3A 2023-10-17 2023-10-17 一种高适用性离线数据处理任务发布方法及系统 Active CN117076141B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311339331.3A CN117076141B (zh) 2023-10-17 2023-10-17 一种高适用性离线数据处理任务发布方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311339331.3A CN117076141B (zh) 2023-10-17 2023-10-17 一种高适用性离线数据处理任务发布方法及系统

Publications (2)

Publication Number Publication Date
CN117076141A CN117076141A (zh) 2023-11-17
CN117076141B true CN117076141B (zh) 2024-01-26

Family

ID=88706500

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311339331.3A Active CN117076141B (zh) 2023-10-17 2023-10-17 一种高适用性离线数据处理任务发布方法及系统

Country Status (1)

Country Link
CN (1) CN117076141B (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112445600A (zh) * 2020-12-15 2021-03-05 北京首汽智行科技有限公司 一种离线数据处理任务发布方法及系统
WO2021051529A1 (zh) * 2019-09-19 2021-03-25 平安科技(深圳)有限公司 评估云主机资源的方法、装置、设备及存储介质
CN113360265A (zh) * 2021-06-18 2021-09-07 特斯联科技集团有限公司 一种大数据运算任务调度和监控系统及方法
CN116467082A (zh) * 2023-04-21 2023-07-21 山西邵嗨杨科技有限公司 一种基于大数据的资源分配方法及系统
CN116820729A (zh) * 2023-08-09 2023-09-29 中国工商银行股份有限公司 离线任务调度方法、装置及电子设备

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021051529A1 (zh) * 2019-09-19 2021-03-25 平安科技(深圳)有限公司 评估云主机资源的方法、装置、设备及存储介质
CN112445600A (zh) * 2020-12-15 2021-03-05 北京首汽智行科技有限公司 一种离线数据处理任务发布方法及系统
CN113360265A (zh) * 2021-06-18 2021-09-07 特斯联科技集团有限公司 一种大数据运算任务调度和监控系统及方法
CN116467082A (zh) * 2023-04-21 2023-07-21 山西邵嗨杨科技有限公司 一种基于大数据的资源分配方法及系统
CN116820729A (zh) * 2023-08-09 2023-09-29 中国工商银行股份有限公司 离线任务调度方法、装置及电子设备

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
数据层可配置任务生成方法及其应用研究;刘明铭 等;《计算机工程》;第39卷(第4期);第27-31页 *
网格计算环境下基于任务池的任务调度方法;孙振河 等;《黑龙江大学自然科学学报》;第22卷(第1期);第117-121页 *

Also Published As

Publication number Publication date
CN117076141A (zh) 2023-11-17

Similar Documents

Publication Publication Date Title
WO2020207268A1 (zh) 数据库性能调整方法、装置、设备、系统及存储介质
US9785468B2 (en) Finding resource bottlenecks with low-frequency sampled data
CN109753356A (zh) 一种容器资源调度方法、装置及计算机可读存储介质
CN111459698A (zh) 一种数据库集群故障自愈方法及装置
TWI711969B (zh) 用以便利基於模型之系統工程(mbse)系統中工作的變更管理之計算加速器系統、方法及非暫態機器可讀媒體
US20090158286A1 (en) Facility for scheduling the execution of jobs based on logic predicates
CN115373835A (zh) Flink集群的任务资源调整方法、装置及电子设备
CN108319711A (zh) 数据库的事务一致性测试方法、装置、存储介质及设备
CN114327829A (zh) 一种多核实时任务调度分析与仿真系统及方法
CN113886111B (zh) 一种基于工作流的数据分析模型计算引擎系统及运行方法
WO2022116667A1 (zh) 一种训练任务排队原因分析方法、系统、设备以及介质
CN110825526A (zh) 基于er关系的分布式调度方法及装置、设备以及存储介质
CN109614210A (zh) 基于能耗感知的Storm大数据节能调度方法
CN117076141B (zh) 一种高适用性离线数据处理任务发布方法及系统
CN111625352A (zh) 调度方法、装置及存储介质
CN112416596A (zh) 一种节点调度方法、装置及设备
CN112101891A (zh) 一种应用于项目申报系统中的数据处理方法
CN111274667A (zh) 一种跨尺度材料计算软件集成计算系统及方法
Koch et al. SMiPE: estimating the progress of recurring iterative distributed dataflows
CN116166813A (zh) 大数据自动化运维的管理方法、系统、设备及存储介质
CN111523685B (zh) 基于主动学习的降低性能建模开销的方法
CN115168389A (zh) 请求处理方法以及装置
CN111290855B (zh) 分布式环境中多gpu服务器的gpu卡管理方法、系统及存储介质
CN114492251A (zh) 超算环境的低速流场发散处理方法、装置、设备及介质
CN114020446A (zh) 一种跨多引擎的路由处理方法、装置、设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CP03 Change of name, title or address
CP03 Change of name, title or address

Address after: 518000, C6 Floor, Building 1, Shenzhen Software Industry Base, No. 81, 83, and 85 Gaoxin South Tenth Road, Binhai Community, Yuehai Street, Nanshan District, Shenzhen, Guangdong Province

Patentee after: Shenzhen Xunce Technology Co.,Ltd.

Country or region after: China

Address before: Room 118a, industry university research building, Hong Kong University of science and technology, 9 Yuexing 1st Road, Gaoxin Park, Yuehai street, Nanshan District, Shenzhen, Guangdong 518000

Patentee before: SHENZHEN XUNCE TECHNOLOGY Co.,Ltd.

Country or region before: China