CN115480924A - 作业数据的处理方法及装置、存储介质、电子设备 - Google Patents
作业数据的处理方法及装置、存储介质、电子设备 Download PDFInfo
- Publication number
- CN115480924A CN115480924A CN202211274199.8A CN202211274199A CN115480924A CN 115480924 A CN115480924 A CN 115480924A CN 202211274199 A CN202211274199 A CN 202211274199A CN 115480924 A CN115480924 A CN 115480924A
- Authority
- CN
- China
- Prior art keywords
- job
- index
- data
- index data
- target
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5011—Allocation 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/5016—Allocation 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/08—Payment architectures
- G06Q20/10—Payment architectures specially adapted for electronic funds transfer [EFT] systems; specially adapted for home banking systems
Abstract
本发明公开了一种作业数据的处理方法及装置、存储介质、电子设备。涉及金融科技技术领域,其中,该方法包括:获取多个指标的指标数据集合一,基于指标阈值表中的预设阈值对指标数据集合一中的指标数据进行处理,确定指标数据集合二;以作业维度对指标数据集合二进行聚合,得到多个作业中每个作业的目标指标数据;基于每个作业的目标指标数据,通过预设影响因子算法,确定每个作业的作业配置数据;基于作业配置数据,对每个作业的作业部署信息进行重新配置;依据每个作业重新配置后的作业部署信息为作业分配资源。本发明解决了相关技术中基于流量峰值或人工调整的方式给作业的分配资源,资源分配效果差的技术问题。
Description
技术领域
本发明涉及金融科技技术领域,具体而言,涉及一种作业数据的处理方法及装置、存储介质、电子设备。
背景技术
目前,在基于Flink框架的实时计算作业中,很多场景下上游的流量会出现周期性变化,或者出现随机性波动的情况。以银行转账场景举例,白天的转账事件数量大大高于晚上的数量。转账事件背后对应的就是白天的流量大大高于晚上的流量,通常情况下,9:00-23:00之间的流量成倍大于夜晚的流量。
在白天流量高峰期时,已经启动的任务(作业)的并行度以及内存等资源往往不足以支撑白天的高峰流量,会出现严重的反压以及频繁GC(垃圾回收)的情况,会造成上游数据积压、处理延迟增大、checkpoint(检查点)耗时增大等等问题,甚至有可能发生内存溢出导致任务失败。
在晚上流量减小的时,系统资源的占用又会回到较低的水平,具体可以表现为CPU平均负载以及内存占用都处于较低位置,造成了大量资源处于闲置状态,严重浪费资源。
相关技术中,面对白天流量高峰以及晚上流量处理较低水平,Flink框架无法依据流量变化调整分配给作业的资源,导致资源利用不合理的情况,一般有以下两种解决方式:
方式1.服务提供方为了保证服务的稳定性,Flink框架对所有的Flink作业都是按照流量峰值给作业分配内存以及并发度。但是这种方式对于上游流量峰值和谷底差距不大的场景影响不大,但是对于某些上游流量变化较大的作业来说会造成严重资源浪费。
方式2.在Flink作业出现反压以及资源闲置情况时,通过用户自行手动介入,通过用户自行分析任务瓶颈节点,对应调整算子并行度、taskmanager的cpu、内存规格,然后重启任务。但是这种方式需要值班人员长期值守,快速响应然后重启任务。由于值班人员同时分析任务往往已经使任务发生严重的反压报警后,处理效率相对滞后,这种时候进行重启,可能会造成一定损失。
针对上述的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种作业数据的处理方法及装置、存储介质、电子设备,以至少解决相关技术中基于流量峰值或人工调整的方式给作业的分配资源,资源分配效果差的技术问题。
根据本发明实施例的一个方面,提供了一种作业数据的处理方法,包括:获取多个指标的指标数据集合一,基于指标阈值表中的预设阈值对指标数据集合一中的指标数据进行处理,确定指标数据集合二,其中,所述指标数据集合一中的指标数据至少包括:每个指标的指标标识、每个指标对应的作业数据;以作业维度对所述指标数据集合二进行聚合,得到多个作业中每个作业的目标指标数据,其中,所述目标指标数据至少包括:指标标识、指标对应的作业数据、指标的影响因子占比,所述影响因子占比为指标对作业配置数据的影响比例;基于每个作业的目标指标数据,通过预设影响因子算法,确定每个作业的作业配置数据;基于所述作业配置数据,对每个作业的作业部署信息进行重新配置;依据每个作业重新配置后的作业部署信息为所述作业分配资源。
进一步地,所述预设阈值中至少包括:第一预设阈值数据和第二预设阈值数据,基于指标阈值表中的预设阈值对指标数据集合一中的指标数据进行处理,确定指标数据集合二,包括:基于所述第一预设阈值数据,对所述指标数据集合一中的每个指标数据进行判断,得到超出对应指标阈值的第一指标数据,其中,所述第一预设阈值数据中至少包括:所述多个指标中每个指标对应的指标阈值;基于所述第二预设阈值数据,对所述指标数据集合一中的每个指标数据进行判断,得到指标值变化的时间超出对应变化时间阈值的第二指标数据,其中,所述指标值变化中包括指标值上涨、指标值下跌,所述变化时间阈值至少包括:上涨超时时间阈值,下跌超时时间阈值;基于所述指标阈值表中每个指标的影响因子占比、所述第一指标数据以及所述第二指标数据,得到所述指标数据集合二,其中,所述指标数据集合二中的指标数据至少包括:指标标识、指标对应的作业数据,指标的影响因子占比。
进一步地,基于每个作业的目标指标数据,通过预设影响因子算法,确定每个作业的作业配置数据,包括:获取每个作业的原始作业配置数据;基于每个作业的原始作业配置数据、依据每个作业对应的目标指标数据中的指标的影响因子占比,对每个作业对应的原始作业配置数据进行处理,确定每个作业的作业配置数据,其中,所述作业配置数据至少包括以下其中之一:内存、并发度、计算资源的隔离单元数。
进一步地,依据每个作业重新配置后的作业部署信息为所述作业分配资源,包括:对重新配置作业部署信息的作业进行下线处理,并将重新配置后的作业部署信息更新到作业部署信息表中;依据所述作业部署信息表,对重新配置作业部署信息的作业进行重启。
进一步地,基于所述作业配置数据,对每个作业的作业部署信息进行重新配置之后,包括:获取每个作业的预设敏感度阈值,其中,所述预设敏感度阈值用于判断作业配置数据是否超出原始作业配置数据的预设比例;基于所述作业配置数据,与每个作业对应的所述预设敏感度阈值,确定超出敏感度阈值的目标作业;重新配置所述目标作业的作业配置数据,确定所述目标作业的目标作业配置数据,并对所述目标作业配置数据进行可行性判断,其中,所述可行性判断用于判断所述目标作业配置数据是否超出运行所述目标作业的数据处理平台的限制规则;在所述目标作业配置数据通过所述可行性判断的情况下,执行依据每个作业重新配置后的作业部署信息为所述作业分配资源的步骤。
进一步地,获取多个指标的指标数据集合一,包括:基于预设指标度量系统获取多个指标的原始指标数据,其中,所述原始指标数据至少包括:指标关联的作业的作业标识、指标值;在目标数据库中基于所述原始指标数据中每个指标的所述作业标识,获取每个指标关联的作业的作业数据;基于所述原始指标数据以及每个指标关联的作业的作业数据,得到所述多个指标的所述指标数据集合一。
进一步地,所述方法还包括:基于作业操作数据表,对超出预设报警阈值的作业进行报警,其中,所述作业操作数据表用于记录所有作业的历史作业配置数据的配置记录以及历史操作记录,所述预设报警阈值至少包括以下其中之一:作业重启频率阈值,作业配置数据阈值;基于所述作业操作数据表,绘制作业配置资源变化图。
根据本发明实施例的另一方面,还提供了一种作业数据的处理装置,包括:第一处理单元,用于获取多个指标的指标数据集合一,基于指标阈值表中的预设阈值对指标数据集合一中的指标数据进行处理,确定指标数据集合二,其中,所述指标数据集合一中的指标数据至少包括:每个指标的指标标识、每个指标对应的作业数据;聚合单元,用于以作业维度对所述指标数据集合二进行聚合,得到多个作业中每个作业的目标指标数据,其中,所述目标指标数据至少包括:指标标识、指标对应的作业数据、指标的影响因子占比,所述影响因子占比为指标对作业配置数据的影响比例;第一确定单元,用于基于每个作业的目标指标数据,通过预设影响因子算法,确定每个作业的作业配置数据;配置单元,用于基于所述作业配置数据,对每个作业的作业部署信息进行重新配置;分配单元,用于依据每个作业重新配置后的作业部署信息为所述作业分配资源。
进一步地,所述预设阈值中至少包括:第一预设阈值数据和第二预设阈值数据,第一处理单元包括:第一判断子单元,用于基于所述第一预设阈值数据,对所述指标数据集合一中的每个指标数据进行判断,得到超出对应指标阈值的第一指标数据,其中,所述第一预设阈值数据中至少包括:所述多个指标中每个指标对应的指标阈值;第二判断子单元,用于基于所述第二预设阈值数据,对所述指标数据集合一中的每个指标数据进行判断,得到指标值变化的时间超出对应变化时间阈值的第二指标数据,其中,所述指标值变化中包括指标值上涨、指标值下跌,所述变化时间阈值至少包括:上涨超时时间阈值,下跌超时时间阈值;第一处理子弹元,用于基于所述指标阈值表中每个指标的影响因子占比、所述第一指标数据以及所述第二指标数据,得到所述指标数据集合二,其中,所述指标数据集合二中的指标数据至少包括:指标标识、指标对应的作业数据,指标的影响因子占比。
进一步地,第一确定单元包括:第一获取子单元,用于获取每个作业的原始作业配置数据;第一处理子单元,用于基于每个作业的原始作业配置数据、依据每个作业对应的目标指标数据中的指标的影响因子占比,对每个作业对应的原始作业配置数据进行处理,确定每个作业的作业配置数据,其中,所述作业配置数据至少包括以下其中之一:内存、并发度、计算资源的隔离单元数。
进一步地,分配单元包括:更新子单元,用于对重新配置作业部署信息的作业进行下线处理,并将重新配置后的作业部署信息更新到作业部署信息表中;重启子单元,用于依据所述作业部署信息表,对重新配置作业部署信息的作业进行重启。
进一步地,作业数据的处理装置还包括:获取单元,用于基于所述作业配置数据,对每个作业的作业部署信息进行重新配置之后,获取每个作业的预设敏感度阈值,其中,所述预设敏感度阈值用于判断作业配置数据是否超出原始作业配置数据的预设比例;第二确定单元,用于基于所述作业配置数据,与每个作业对应的所述预设敏感度阈值,确定超出敏感度阈值的目标作业;第二处理单元,用于重新配置所述目标作业的作业配置数据,确定所述目标作业的目标作业配置数据,并对所述目标作业配置数据进行可行性判断,其中,所述可行性判断用于判断所述目标作业配置数据是否超出运行所述目标作业的数据处理平台的限制规则;执行单元,用于在所述目标作业配置数据通过所述可行性判断的情况下,执行依据每个作业重新配置后的作业部署信息为所述作业分配资源的步骤。
进一步地,第一处理单元还包括:第二获取子单元,用于基于预设指标度量系统获取多个指标的原始指标数据,其中,所述原始指标数据至少包括:指标关联的作业的作业标识、指标值;第三获取子单元,用于在目标数据库中基于所述原始指标数据中每个指标的所述作业标识,获取每个指标关联的作业的作业数据;第二处理子单元,用于基于所述原始指标数据以及每个指标关联的作业的作业数据,得到所述多个指标的所述指标数据集合一。
进一步地,作业数据的处理装置还包括:报警单元,用于基于作业操作数据表,对超出预设报警阈值的作业进行报警,其中,所述作业操作数据表用于记录所有作业的历史作业配置数据的配置记录以及历史操作记录,所述预设报警阈值至少包括以下其中之一:作业重启频率阈值,作业配置数据阈值;绘制单元,用于基于所述作业操作数据表,绘制作业配置资源变化图。
根据本发明实施例的另一方面,还提供了一种电子设备,包括:处理器;以及存储器,用于存储处理器的可执行指令;其中,处理器配置为经由执行可执行指令来执行上述任意一项的作业数据的处理方法。
根据本发明实施例的另一方面,还提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,其中,在计算机程序运行时控制计算机可读存储介质所在设备执行上述任意一项的作业数据的处理方法。
在本发明中,获取多个指标的指标数据集合一,基于指标阈值表中的预设阈值对指标数据集合一中的指标数据进行处理,确定指标数据集合二,其中,指标数据集合一中的指标数据至少包括:每个指标的指标标识、每个指标对应的作业数据;以作业维度对指标数据集合二进行聚合,得到多个作业中每个作业的目标指标数据,其中,目标指标数据至少包括:指标标识、指标对应的作业数据、指标的影响因子占比,影响因子占比为指标对作业配置数据的影响比例;基于每个作业的目标指标数据,通过预设影响因子算法,确定每个作业的作业配置数据;基于作业配置数据,对每个作业的作业部署信息进行重新配置;依据每个作业重新配置后的作业部署信息为作业分配资源。进而解决了相关技术中基于流量峰值或人工调整的方式给作业的分配资源,资源分配效果差的技术问题。在本发明中,通过每个作业的目标指标数据以及指标的影响因子占比,确定每个作业的作业配置数据,并依据作业配置数据对作业部署信息重新部署,为作业重新分配资源,避免了基于流量峰值或人工调整的方式,分配效果差的情况,从而实现了提高作业资源分配效率以及作业分配合理性的技术效果。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的一种可选的作业数据的处理方法的流程图;
图2是根据本发明实施例的一种可选的确定指标数据集合二的流程图;
图3是根据本发明实施例的一种可选的确定作业的作业配置数据的流程图;
图4是根据本发明实施例的一种可选的基于Flink框架的实时计算作业自适应框架的示意图;
图5是根据本发明实施例的一种可选的作业数据的处理装置的示意图;
图6是根据本发明实施例的一种的电子设备示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
为了便于描述,下面对本实施例涉及的部分名词或术语进行说明。
Flink:是一个分布式实时数据处理引擎,可以以流水线的方式处理实时数据,支持高吞吐,低延迟,高性能的有状态计算。
状态:在实时计算过程中,每个计算单元会维护自己的某些临时数据,用于后期进行窗口运算或聚合运算。
Checkpoint&Savepoint:是Flink实现容错机制最核心的功能,它是根据配置周期性的基于实时作业中每个Operator的状态来生成快照,从而将这些状态数据定期持久化的存储下来,当Flink程序意外崩溃时,可以从checkpoint中恢复运算,当Flink程序手动重启时,会主动保存savepoint便于重启后从断点继续运算。
反压:数据在Flink拓扑中多个节点自上而下流动,下游数据处理较慢,导致上游数据发送阻塞,最终导致数据源的获取也被阻塞。也就是说,下游的处理数据的速度跟不上数据流入的速度,会导致数据流入阻塞,并反馈到上游,使上游的数据也发生阻塞。
Flink Metrics:Flink框架提供的Metrics(Flink公开的指标度量系统)会在Flink作业内部收集一些指标,对Flink作业的性能进行实时监控,包括对作业的CPU、内存、线程池、网络、IO(输入/输出)、Checkpoint、状态后端等等进行监控。同时,Flink也支持自定义的Metrics,对于自己的业务逻辑也可以通过User-defined Metrics(用户自定义监控指标)的方式来暴露一些指标,以便于进行监控。开发人员可以通过这些指标更好地理解作业或集群的状态。
slots:计算资源的隔离单元,一个slots可以运行多个subtask(子任务),但是这些subtask必须是来自一个application(作业)的不同阶段的subtask。在Flink中每一个Taskmanager(Flink框架的内存管理机制)都是一个JVM(Java虚拟机)进程,它可能会在slot上执行一个或多个subtask。
Kafka lag:当Kafka(是一种高吞吐量的分布式发布订阅消息系统)下游来不及消费Kafka中的数据,上游发往Kafka的数据就产生了积压,lag表示的就是积压数据的多少。
go语言:一种静态强类型、编译型、并发型,具有垃圾回收功能的编程语言。
Grafana:是一款采用go语言编写的开源应用,是一个跨平台的开源度量分析和可视化的工具,可以将采集的数据查询然后可视化的展示,并及时通知用户。
Topic:在Kafka中,Topic为存储消息的逻辑概念,可以看做一个消息集合。
需要说明的是,本公开中的作业数据的处理方法及其装置可用于金融科技领域在依据作业的流量的监控指标对作业进行资源分配的情况下,也可用于除金融科技领域之外的任意领域在依据作业的流量的监控指标对作业进行资源分配的情况下,本公开中对作业数据的处理方法及其装置的应用领域不做限定。
需要说明的是,本公开所涉及的相关信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于展示的数据、分析的数据等),均为经用户授权或者经过各方充分授权的信息和数据。例如,本系统和相关用户或机构间设置有接口,在获取相关信息之前,需要通过接口向前述的用户或机构发送获取请求,并在接收到前述的用户或机构反馈的同意信息后,获取相关信息。
下面结合各实施例来进一步说明本发明。
实施例一
根据本发明实施例,提供了一种可选的作业数据的处理的方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
图1是根据本发明实施例的一种可选的作业数据的处理方法的流程图,如图1所示,该方法包括如下步骤:
步骤S101,获取多个指标的指标数据集合一,基于指标阈值表中的预设阈值对指标数据集合一中的指标数据进行处理,确定指标数据集合二,其中,指标数据集合一中的指标数据至少包括:每个指标的指标标识、每个指标对应的作业数据。
上述的指标数据集合一中可以包括多个指标的指标数据,多个指标的指标数据可以存放在目标消息队列的第一队列中,读取目标消息队列的第一队列中的多个指标的指标数据可以读取到上述的指标数据集合一,上述的多个指标可以包括但不限于对CPU、内存、线程池、网络、IO、Checkpoint、状态等进行监控的监控指标。
上述的指标阈值表的预设阈值可以包括基本指标阈值和用户自定义指标阈值,基本指标阈值可以是系统默认的指标阈值,用户自定义指标阈值可以对用户自定义指标的指标阈值,上述的指标阈值表中还可以包括每个指标的影响因子占比。
基于指标阈值表中的预设阈值判断指标数据集合一中的指标数据是否超出对应的预设阈值,可以基于超出对应的预设阈值的指标的指标标识、指标对应的作业标识以及指标的影响因子占比,得到指标数据集合二,也即是指标数据集合二可以包括超出对应的预设阈值的指标的指标标识、指标对应的作业标识以及指标的影响因子占比。
步骤S102,以作业维度对指标数据集合二进行聚合,得到多个作业中每个作业的目标指标数据,其中,目标指标数据至少包括:指标标识、指标对应的作业数据、指标的影响因子占比,影响因子占比为指标对作业配置数据的影响比例。
上述的影响因子占比可以为指标对作业配置数据的影响比例,上述的作业配置数据可以包括但不限于作业内存、作业并发度、slots数。
由于上述的指标数据集合二中可以包括多个作业关联指标的指标数据,为了便于对每个作业的作业配置数据进行重新配置,可以以作业维度对指标数据集合二进行聚合,得到多个作业中每个作业的目标指标数据。
步骤S103,基于每个作业的目标指标数据,通过预设影响因子算法,确定每个作业的作业配置数据。
在本实施例中,基于每个指标的目标指标数据,通过预设影响因子算法,可以确定对每个作业的作业配置数据,依据每个作业的作业配置数据可以重新对作业进行资源进行分配,达到依据监控作业流量的指标,为作业分配合理的资源,提高资源利用率的目的。
步骤S104,基于作业配置数据,对每个作业的作业部署信息进行重新配置。
上述的作业部署信息可以记录在作业部署信息表中,作业部署信息表可以用于记录每个作业的基本信息,如作业编号、作业标识、作业的内存、并发度以及slots、以及作业状态(如:待下线、作业运行中等)等,可以基于作业部署信息对每个作业进行资源分配,分配的资源可以包括但不限于作业的内存、并发度、slots数等。
步骤S105,依据每个作业重新配置后的作业部署信息为作业分配资源。
在本实施例中,基于每个作业重新配置后作业部署信息可以对每个作业进行资源分配,对每个作业进行资源分配时,可以调整作业状态为待下线,监控作业的作业部署信息中的作业状态为待下线时、即可以依据重新配置后的作业部署信息为对应的作业分配资源。
通过上述步骤,通过每个作业的目标指标数据以及指标的影响因子占比,确定每个作业的作业配置数据,并依据作业配置数据对作业部署信息重新部署,为作业重新分配资源,避免了基于流量峰值或人工调整的方式,分配效果差的情况,从而实现了提高作业资源分配效率以及作业分配合理性的技术效果,进而解决了相关技术中基于流量峰值或人工调整的方式给作业分配资源,资源分配效果差的技术问题。
图2是根据本发明实施例的一种可选的确定指标数据集合二的流程图,如图2所示;为了避免单一阈值数据对指标数据进行判断,确定作业配置数据不准确的情况,在本实施例中,预设阈值中至少包括:第一预设阈值数据和第二预设阈值数据,基于指标阈值表中的预设阈值对指标数据集合一中的指标数据进行处理,确定指标数据集合二,还包括以下步骤:
步骤S201,基于第一预设阈值数据,对指标数据集合一中的每个指标数据进行判断,得到超出对应指标阈值的第一指标数据,其中,第一预设阈值数据中至少包括:多个指标中每个指标对应的指标阈值;
步骤S202,基于第二预设阈值数据,对指标数据集合一中的每个指标数据进行判断,得到指标值变化的时间超出对应变化时间阈值的第二指标数据,其中,指标值变化中包括指标值上涨、指标值下跌,变化时间阈值至少包括:上涨超时时间阈值,下跌超时时间阈值;
步骤S203,基于指标阈值表中每个指标的影响因子占比、第一指标数据以及第二指标数据,得到指标数据集合二,其中,指标数据集合二中的指标数据至少包括:指标标识、指标对应的作业数据,指标的影响因子占比。
在本实施例中,上述的指标数据集合一中指标数据可以存放在目标消息队列(如Kafka消息队列)的第一消息队列中,基于指标阈值表对指标数据集合一中的指标数据进行处理,可以从第一消息队列中对多个指标的指标数据进行消费,结合指标阈值表判断多个指标的指标数据是否超出对应的预设阈值。
上述的第一预设阈值数据可以包括多个指标中每个指标的指标阈值,指标阈值可以包括指标的上限阈值、还可以包括指标下限阈值,可以既包括上限阈值和下限阈值,或者上限阈值或下限阈值的其中之一,以作业的内存使用率为例,若系统默认内存使用率上限阈值为95%,则监控到作业的内存使用率超过95%时,在确定该内存使用率为超出对应指标阈值的第一指标,内存使用率对应的指标数据为第一指标数据。
上述的第二预设阈值可以为变化时间阈值,变化时间阈值可以为指标值持续上涨的时间阈值或指标值持续下跌的时间阈值。以作业对应上游Kafka lag指标为例,若Kafka指标值的指标值的上涨超时时间阈值为5min,则当连续5min收到该指标上涨时,说明该作业处理效率长时间低于上游数据产生效率,可以确定该上游Kafka lag指标为超出对应变化时间阈值的第二指标,上游Kafka lag指标的指标数据为第二指标数据。
在判断出上述的第一指标数据以及第二指标数据后,可以依据指标阈值表中的影响因子占比,将第一指标数据以及第二指标数据中每个指标的影响因子占比、第一指标数据以及第二指标数据,组成指标数据集合二,上述的指标数据集合二中的每个指标的指标数据可以存放到目标消息队列(Kafka消息队列)的第二消息队列中。
通过指标阈值表中第一预设阈值数据以及第二预设阈值数据,以及指标阈值表中的指标的影响因子占比,确定指标数据集合二,实现了精准提取影响作业流量的指标的指标数据以及对应的影响因子占比的技术效果。
图3是根据本发明实施例的一种可选的确定作业的作业配置数据的流程图,如图3所示,为了避免重新配置的作业配置数据与作业流量不匹配,降低资源利用率或无法满足作业流量需求的情况,在本实施例中,基于每个作业的目标指标数据,通过预设影响因子算法,确定每个作业的作业配置数据,还包括以下步骤:
步骤S301,获取每个作业的原始作业配置数据。
步骤S302,基于每个作业的原始作业配置数据、依据每个作业对应的目标指标数据中的指标的影响因子占比,对每个作业对应的原始作业配置数据进行处理,确定每个作业的作业配置数据,其中,作业配置数据至少包括以下其中之一:内存、并发度、计算资源的隔离单元数。
上述的每个作业的原始作业配置数据可以包括但不限于每个作业的初始内存、初始并发度、初始slots数,下面举例说明,基于每个作业的原始作业配置数据、依据每个作业对应的目标指标数据中的指标的影响因子占比,对每个作业对应的原始作业配置数据进行处理,确定每个作业的作业配置数据。
例如:在数据库中储存了每一个监控指标(对应于上述的指标)对作业配置的影响大小(影响因子占比)。以常用的taskmanager memory(内存),并发度,slots数为例:
设作业的初始内存为M,初始并发度为P,初始slots数为S。
修正后(对作业对应的原始作业配置数据进行处理,确定的每的作业配置数据)的内存为M`、并发度为P`,slots数为S`。
设监控指标Metric1对M的影响因子为x1,对P的影响因子为y1,对S的影响因子为z1,(x,y,z均为0~1的小数,根据不同的监控指标对作业配置的影响大小确定)。
作业优化配置(作业配置数据)计算方法为:
...
其中,n为正整数,x1,x2,x3……xn为指标xn对M的影响因子占比,y1,y2,y3……yn为指标yn对P的影响因子占比,z1,z2,z3……zn为指标zn对S的影响因子占比。
基于每个作业的目标指标数据,通过预设影响因子算法,确定每个作业的作业配置数据,实现了精确计算出的当前流量下的作业的最佳作业配置数据的技术效果。
为了避免为对作业进行资源分配调整需要人工处理,处理效率低的情况,在本实施例中,依据每个作业重新配置后的作业部署信息为作业分配资源,还包括以下内容:对重新配置作业部署信息的作业进行下线处理,并将重新配置后的作业部署信息更新到作业部署信息表中;依据作业部署信息表,对重新配置作业部署信息的作业进行重启。
在本实施例中,可以对作业部署信息表的更新作业部署信息的作业进行更新,为作业分配资源,在检测到重新配置后的作业部署信息时,首先将可以运行中的对应Flink作业下线处理。在获取到作业成功下线信号后,然后可以把作业更新信息中的最新配置(对应于上述的重新配置后的作业部署信息)重新注册到对应作业的Flink作业部署信息表(对应于上述的作业部署信息表)中,然后根据作业部署信息表中的最新配置重新调度Flink作业。作业将会从之前的checkpoint/savepoint恢复。重启成功后还可以将最新配置(或重新配置后的作业部署信息)和重启时间写入作业操作历史表(即作业操作数据表),供后续分析作业重启情况和监控预警,实现了提高为作业分配最佳的资源的分配效率的技术效果。
为了避免重新配置的作业配置数据无法满足运行作业的数据处理平台的限制规则的情况,在本实施例中,基于作业配置数据,对每个作业的作业部署信息进行重新配置之后,还包括以下内容:获取每个作业的预设敏感度阈值,其中,预设敏感度阈值用于判断作业配置数据是否超出原始作业配置数据的预设比例;基于作业配置数据,与每个作业对应的预设敏感度阈值,确定超出敏感度阈值的目标作业;重新配置目标作业的作业配置数据,确定目标作业的目标作业配置数据,并对目标作业配置数据进行可行性判断,其中,可行性判断用于判断目标作业配置数据是否超出运行目标作业的数据处理平台的限制规则;在目标作业配置数据通过可行性判断的情况下,执行依据每个作业重新配置后的作业部署信息为作业分配资源的步骤。
例如:运算得出当前推荐的作业配置(对应于上述的作业配置数据)后,与数据库中的作业敏感度进行对比。如:作业A对应的taskmanager memory(内存)敏感度阈值为0.5,则说明此作业在进行计算后的taskmanager memory变化超过原有值的50%时,则需要对作业的作业配置数据进行重新配置,并进行作业重启操作。
为避免过多与数据库交互对比敏感度值,作业将数据库中的内容(如:敏感度阈值)存储在内存中,可以以1min的频率进行更新,保证内存与数据库的数据的一致性。
对超过敏感度阈值的作业(对应于上述的目标作业),还需要通过特殊策略配置模块对作业配置调整的可行性进行二次判断。特殊策略配置模块可以包括Flink本身(对应于上述的数据处理平台)限制的规则,如最终计算出的并发度,超过了下游topic的分区数,则更新并发度为下游分区数(如果Flink作业并发度大于分区数,会导致部分算子空转,造成资源浪费)。同时也支持用户自定义作业配置调整策略,对作业重启动作进行限制。通过特殊策略配置模块的可行性的判断的作业更新信息,可以执行依据每个作业重新配置后的作业部署信息作业分配资源的步骤,实现了提高为作业分配资源的可行性的技术效果。
为了提高多个指标的指标数据的获取效率,获取多个指标的指标数据集合一,包括:基于预设指标度量系统获取多个指标的原始指标数据,其中,原始指标数据至少包括:指标关联的作业的作业标识、指标值;在目标数据库中基于原始指标数据中每个指标的作业标识,获取每个指标关联的作业的作业数据;基于原始指标数据以及每个指标关联的作业的作业数据,得到多个指标的指标数据集合一。
在本实施例中,可以调整Flink-conf.yaml(对Flink分布式数据处理器平台的所有整体配置文件)配置文件,将metrics.reporters(控制监控指标数据的度量系统的的输出模式文件)配置为输出监控指标至外部系统模式。同步配套Flink监控模块A(监控指标发送端),配合Flink框架将监控指标传输至Flink监控模块B(监控指标处理端)。监控模块B收到监控指标后,根据指标中的jobId(作业标识)匹配数据库中对应作业详细信息,给所有的监控指标打上对应的作业详细信息,得到所有监控指标的指标数据集合一,所有监控指标的指标数据集合一中的指标的指标数据,可以输出到目标消息队列(Kafka消息队列)的第一消息队列中,实现了提高获取多个指标的指标数据集合一的获取效率。
为了避免作业频繁重启以及作业配置数据超出运作作业的数据处理平台的规则限制的情况,在本实施例中,还包括以下内容:基于作业操作数据表,对超出预设报警阈值的作业进行报警,其中,作业操作数据表用于记录所有作业的历史作业配置数据的配置记录以及历史操作记录,预设报警阈值至少包括以下其中之一:作业重启频率阈值,作业配置数据阈值;基于作业操作数据表,绘制作业配置资源变化图。
在本实施例中可以通过监控模块进行报警:可以基于实时监控作业操作历史表(对应于上述的作业操作数据表),对重启过于频繁的作业进行报警,如:作业重启频率大于对应的作业重启频率阈值,还可以对作业配置超过资源限制的作业进行报警。对不满足特殊配置策略的作业(即为通过可行性判断的作业)进行提示,还可以通过监控模块进行监控,可以根据作业配置数据变化情况,结合Grafana绘制实时作业资源变化动态图(对应于上述的作业配置资源变化图),便于观察作业配置变动趋势,通过对作业操作数据进行监控,并会在作业资源变化图,实现了及时反映作业运行状态,提高作业对应的业务开展的顺利程度的技术效果。
实施例二
本实施例提供了一种可选的作业数据的处理方法,可以通过基于Flink框架的实时计算作业自适应框架,对Flink框架的实时计算的作业算力进行自适应调整,下面对本实施例的各个部分进行说明。
数据库部分:
1.Flink作业部署信息表(对应于实施例一中的作业部署信息表):该表用于记录Flink作业基本信息。该表以作业粒度对Flink作业进行保存,同时保存Flink作业编号、Flink jobId,对应作业的slots、taskmanager memory、jobmanager memory、并发度、作业运行状态等等相关信息。同时保存每个作业内存,并发度,slots的敏感度。一般可以在首次启动作业时同步插入数据库,后续在人工调整或程序修改配置时同步调整数据库。
2.默认监控指标阈值表:该表用于记录系统默认监控阈值策略。表中信息包括系统默认的监控指标、对应的阈值上限与下限,上涨超时时间或下跌超时时间,以及对作业内存、并发度、slots的影响因子占比。此表为系统默认的阈值判断表,判断标准较为缓和。
3.用户自定义监控指标阈值表:该表用于记录用户自定义的监控阈值策略,表中信息包括自定义监控指标对应作业号,系统默认监控指标和用户自定义监控指标,用户自定义的阈值上下限、上涨超时时间与下跌超时时间和对作业内存、并发度和slots的影响因子占比。此表为用户自定义表,较默认监控指标阈值表判断标准更为激进,同时也可以自定义一些业务指标来控制作业的行为。其中,默认监控指标阈值表和用户自定义监控指标阈值表对应于实施例一中的指标阈值表。
4.作业操作历史表(对应于实施例一中的作业操作数据表):该表用于记录作业历史配置,以及历史操作记录。表中信息包括作业号,对应作业历史基础配置,作业重启时间,无法匹配特殊规则的作业情况等等。此表可以用于分析作业重启情况,以及综合分析资源配置情况。
作业监控指标影响因子算法:
在数据库中储存了每一个监控指标(对应于上述的指标)对作业配置的影响大小(影响因子占比)。以常用的taskmanager memory(内存),并发度,slots数为例:
设作业的初始内存为M,初始并发度为P,初始slots数为S。
修正后(对作业对应的原始作业配置数据进行处理,确定的每的作业配置数据)的内存为M`、并发度为P`,slots数为S`。
设监控指标Metric1对M的影响因子为x1,对P的影响因子为y1,对S的影响因子为z1,(x,y,z均为0~1的小数,根据不同的监控指标对作业配置的影响大小确定)。
作业优化配置(作业配置数据)计算方法为:
...
其中,n为正整数,x1,x2,x3……xn为指标xn对M的影响因子占比,y1,y2,y3……yn为指标yn对P的影响因子占比,z1,z2,z3……zn为指标zn对S的影响因子占比。
计算出的数值即是当前流量下建议的最佳作业配置数据。
下面对基于Flink框架的实时计算作业自适应框架进行阐述,图4是根据本发明实施例的一种可选的基于Flink框架的实时计算作业自适应框架的示意图,基于Flink框架的实时计算作业自适应框架,如图4所示。基于Flink框架的实时计算作业自适应框架主要部分为五个模块。
1.任务监控模块(监控模块A和监控模块B):
(1)调整Flink-conf.yaml配置文件,将metrics.reporters配置为输出监控指标至外部系统模式。同步配套Flink监控模块A(监控指标发送端),配合Flink框架将监控指标传输至Flink监控模块B(监控指标处理端)。
(2)监控模块B收到监控指标后,根据指标中的jobId匹配数据库中对应作业详细信息,给所有的监控指标打上对应的作业详细信息,输出到Kafka队列1(对应于实施例一中的目标消息队列的第一消息队列)中。
2.健康监测模块:
增加健康监测模块消费Kafka队列1中的数据,结合数据库中默认监控指标阈值表和用户自定义监控指标阈值表(对应于实施例一中的指标阈值表),综合判断流式任务是否健康。
此处指标判断规则分为两大类:
(1)单指标阈值(对应于实施例一中的第一预设阈值数据),以作业内存使用率为例,健康监测系统默认规定超过95%时,发送内存调整因子消息进入目标资源计算模块。
这种指标可以直接通过构建指标与阈值的对应表进行判断,如上述内存使用率指标对应阈值上限为95%,同时对内存指标因子的影响占比为40%。
(2)趋势指标阈值(对应于实施例一中的第二预设阈值数据),以作业对应上游Kafka lag指标为例,当连续5min收到该指标上涨时,说明该作业处理效率长时间低于上游数据产生效率,此时发送并发度调整因子消息和内存调整因子消息进入目标资源计算模块。
指标判断规则的判断标准也分两大类:
(1)根据默认监控指标阈值表,系统默认有一套比较缓和的调整策略,同时涉及到的监控指标也都是基础指标,对作业的操作相对较少。
(2)根据用户自定义监控指标阈值表,支持用户根据业务需求自定义监控指标,以及修改相关监控指标的阈值,对作业参数的影响因子大小,从而自定义控制作业的行为。
健康监测模块分类对不同监控指标进行处理后,将处理好的信息发送到下游Kafka队列2(对应于实施例一中的目标消息队列的第二消息队列)中。
3.目标资源计算模块:
目标资源计算模块采用Flink实时作业实现,实时收集上游Kafka队列2传输的作业参数和指标影响因子(对应于实施例一中指标数据集合二),以作业维度进行聚合后,通过影响因子算法进行运算。
运算得出当前推荐的作业配置数据后,与数据库中的作业敏感度阈值(对应于实施例一中预设敏感度阈值)进行对比。如作业A对应的taskmanager memory敏感度阈值为0.5,则说明此作业在进行计算后的taskmanager memory变化超过原有值的50%时,对作业配置数据进行重新配置,并进行作业重启操作。
为避免过多与数据库交互对比敏感度阈值,可以将数据库中的内容存储在内存中,以1min的频率进行更新。
对超过敏感度阈值的作业,还需要通过特殊策略配置模块对作业配置数据调整的可行性进行二次判断。该模块可以包括Flink本身限制的规则,如最终计算出的并发度,超过了下游topic的分区数,则更新并发度为下游分区数(如果Flink作业并发度大于分区数,会导致部分算子空转,造成资源浪费)。同时也支持用户自定义作业配置调整策略,对作业重启动作进行限制。
通过特殊策略配置模块的作业配置数据的更新信息,直接传入任务伸缩模块进行下一步操作。
4.任务伸缩模块:
该模块获取目标资源计算模块的作业更新信息,首先将运行中的对应Flink作业下线。获取到作业成功下线信号后,然后把作业更新信息中的最新配置重新注册到对应作业的Flink作业部署信息表(对应于实施例一中的作业部署信息表)中,然后根据新配置重新调度Flink作业。任务将会从之前的checkpoint/savepoint恢复。重启成功将最新配置和重启时间写入作业操作历史表,供后续分析作业重启情况和监控预警。
5.监控报警模块:
监控报警模块有两个功能:
1.报警:实时监控作业操作历史表,对重启过于频繁的作业进行报警,对作业配置超过资源限制的作业进行报警。对不满足特殊配置策略的作业进行提示。
2.监控:根据作业配置变化情况,结合Grafana绘制实时作业资源变化动态图,便于观察作业配置变动趋势。
在本实施例中,基于Flink框架的实时计算作业自适应框架的实现流程,通过自动化任务分析来进行相应的资源伸缩,从而减少上游流量波峰和流量低谷对系统造成的影响。Flink框架的实时计算作业自适应框架可以通过灵活的资源伸缩节约了人力和资源成本,保证计算资源和存储资源的使用率,可以减少作业因资源不足造成的作业中断,保证服务连续性,并且还可以对于作业资源使用情况进行监控,有助于更好反应业务开展情况,提供了更多业务数据,另外框架作业部署信息、指标阈值表配置灵活,支持用户自定义监控指标,自定义业务指标,通过改变指标值、阈值、影响因子占比来控制作业的资源配置,实现可以应用与复杂的业务场景。
实施例三
本实施例提供了一种可选的作业数据的处理装置,该处理装置中各个实施单元对应于实施例一中各个实施步骤。
图5是根据本发明实施例提供的一种可选的作业数据的处理装置的示意图,如图5所示,包括:第一处理单元51、聚合单元52、第一确定单元53、配置单元54、分配单元55。
具体的,第一处理单元51,用于获取多个指标的指标数据集合一,基于指标阈值表中的预设阈值对指标数据集合一中的指标数据进行处理,确定指标数据集合二,其中,指标数据集合一中的指标数据至少包括:每个指标的指标标识、每个指标对应的作业数据;
聚合单元52,用于以作业维度对指标数据集合二进行聚合,得到多个作业中每个作业的目标指标数据,其中,目标指标数据至少包括:指标标识、指标对应的作业数据、指标的影响因子占比,影响因子占比为指标对作业配置数据的影响比例;
第一确定单元53,用于基于每个作业的目标指标数据,通过预设影响因子算法,确定每个作业的作业配置数据;
配置单元54,用于基于作业配置数据,对每个作业的作业部署信息进行重新配置;
分配单元55,用于依据每个作业重新配置后的作业部署信息为作业分配资源。
在本申请实施例三提供的作业数据的处理装置中,通过第一处理单元51获取多个指标的指标数据集合一,基于指标阈值表中的预设阈值对指标数据集合一中的指标数据进行处理,确定指标数据集合二,其中,指标数据集合一中的指标数据至少包括:每个指标的指标标识、每个指标对应的作业数据,然后通过聚合单元52以作业维度对指标数据集合二进行聚合,得到多个作业中每个作业的目标指标数据,其中,目标指标数据至少包括:指标标识、指标对应的作业数据、指标的影响因子占比,影响因子占比为指标对作业配置数据的影响比例,之后通过第一确定单元53基于每个作业的目标指标数据,通过预设影响因子算法,确定每个作业的作业配置数据,通过配置单元54基于作业配置数据,对每个作业的作业部署信息进行重新配置,通过分配单元依据每个作业重新配置后的作业部署信息为作业分配资源。进而解决了相关技术中基于流量峰值或人工调整的方式给作业的分配资源,资源分配效果差的技术问题。在本实施例中,通过每个作业的目标指标数据以及指标的影响因子占比,确定每个作业的作业配置数据,并依据作业配置数据对作业部署信息重新部署,为作业重新分配资源,避免了基于流量峰值或人工调整的方式,分配效果差的情况,从而实现了提高作业资源分配效率以及作业分配合理性的技术效果。
可选的,在本申请实施例三提供的作业数据的处理装置中,预设阈值中至少包括:第一预设阈值数据和第二预设阈值数据,第一处理单元51包括:第一判断子单元,用于基于第一预设阈值数据,对指标数据集合一中的每个指标数据进行判断,得到超出对应指标阈值的第一指标数据,其中,第一预设阈值数据中至少包括:多个指标中每个指标对应的指标阈值;第二判断子单元,用于基于第二预设阈值数据,对指标数据集合一中的每个指标数据进行判断,得到指标值变化的时间超出对应变化时间阈值的第二指标数据,其中,指标值变化中包括指标值上涨、指标值下跌,变化时间阈值至少包括:上涨超时时间阈值,下跌超时时间阈值;第一处理子弹元,用于基于指标阈值表中每个指标的影响因子占比、第一指标数据以及第二指标数据,得到指标数据集合二,其中,指标数据集合二中的指标数据至少包括:指标标识、指标对应的作业数据,指标的影响因子占比。
可选的,在本申请实施例三提供的作业数据的处理装置中,第一确定单元53包括:第一获取子单元,用于获取每个作业的原始作业配置数据;第一处理子单元,用于基于每个作业的原始作业配置数据、依据每个作业对应的目标指标数据中的指标的影响因子占比,对每个作业对应的原始作业配置数据进行处理,确定每个作业的作业配置数据,其中,作业配置数据至少包括以下其中之一:内存、并发度、计算资源的隔离单元数。
可选的,在本申请实施例三提供的作业数据的处理装置中,分配单元55包括:更新子单元,用于对重新配置作业部署信息的作业进行下线处理,并将重新配置后的作业部署信息更新到作业部署信息表中;重启子单元,用于依据作业部署信息表,对重新配置作业部署信息的作业进行重启。
可选的,在本申请实施例三提供的作业数据的处理装置中,作业数据的处理装置还包括:获取单元,用于基于作业配置数据,对每个作业的作业部署信息进行重新配置之后,获取每个作业的预设敏感度阈值,其中,预设敏感度阈值用于判断作业配置数据是否超出原始作业配置数据的预设比例;第二确定单元,用于基于作业配置数据,与每个作业对应的预设敏感度阈值,确定超出敏感度阈值的目标作业;第二处理单元,用于重新配置目标作业的作业配置数据,确定目标作业的目标作业配置数据,并对目标作业配置数据进行可行性判断,其中,可行性判断用于判断目标作业配置数据是否超出运行目标作业的数据处理平台的限制规则;执行单元,用于在目标作业配置数据通过可行性判断的情况下,执行依据每个作业重新配置后的作业部署信息为作业分配资源的步骤。
可选的,在本申请实施例三提供的作业数据的处理装置中,第一处理单元51还包括:第二获取子单元,用于基于预设指标度量系统获取多个指标的原始指标数据,其中,原始指标数据至少包括:指标关联的作业的作业标识、指标值;第三获取子单元,用于在目标数据库中基于原始指标数据中每个指标的作业标识,获取每个指标关联的作业的作业数据;第二处理子单元,用于基于原始指标数据以及每个指标关联的作业的作业数据,得到多个指标的指标数据集合一。
可选的,在本申请实施例三提供的作业数据的处理装置中,作业数据的处理装置还包括:报警单元,用于基于作业操作数据表,对超出预设报警阈值的作业进行报警,其中,作业操作数据表用于记录所有作业的历史作业配置数据的配置记录以及历史操作记录,预设报警阈值至少包括以下其中之一:作业重启频率阈值,作业配置数据阈值;绘制单元,用于基于作业操作数据表,绘制作业配置资源变化图。
上述的作业数据的处理装置还可以包括处理器和存储器,上述的第一处理单元51、聚合单元52、第一确定单元53以及配置单元54、分配单元55等均作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元来实现相应的功能。
上述处理器中包含内核,由内核去存储器中调取相应的程序单元。内核可以设置一个或以上,调整内核参数通过每个作业的目标指标数据以及指标的影响因子占比,确定每个作业的作业配置数据,并依据作业配置数据对作业部署信息重新部署,为作业重新分配资源,避免了基于流量峰值或人工调整的方式,分配效果差的情况,从而实现了提高作业资源分配效率以及作业分配合理性的技术效果。
上述存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM),存储器包括至少一个存储芯片。
根据本发明实施例的另一方面,还提供了一种电子设备,包括:处理器;以及存储器,用于存储处理器的可执行指令;其中,处理器配置为经由执行可执行指令来执行上述任意一项的作业数据的处理方法。
根据本发明实施例的另一方面,还提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,其中,在计算机程序运行时控制计算机可读存储介质所在设备执行上述任意一项的作业数据的处理方法。
图6是根据本发明实施例的一种电子设备的示意图,如图6所示,本发明实施例提供了一种电子设备60,电子设备包括处理器、存储器及存储在存储器上并可在处理器上运行的程序,处理器执行程序时实现上述任意一项的作业数据的处理方法。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (10)
1.一种作业数据的处理方法,其特征在于,包括:
获取多个指标的指标数据集合一,基于指标阈值表中的预设阈值对指标数据集合一中的指标数据进行处理,确定指标数据集合二,其中,所述指标数据集合一中的指标数据至少包括:每个指标的指标标识、每个指标对应的作业数据;
以作业维度对所述指标数据集合二进行聚合,得到多个作业中每个作业的目标指标数据,其中,所述目标指标数据至少包括:指标标识、指标对应的作业数据、指标的影响因子占比,所述影响因子占比为指标对作业配置数据的影响比例;
基于每个作业的目标指标数据,通过预设影响因子算法,确定每个作业的作业配置数据;
基于所述作业配置数据,对每个作业的作业部署信息进行重新配置;
依据每个作业重新配置后的作业部署信息为所述作业分配资源。
2.根据权利要求1所述的处理方法,其特征在于,所述预设阈值中至少包括:第一预设阈值数据和第二预设阈值数据,基于指标阈值表中的预设阈值对指标数据集合一中的指标数据进行处理,确定指标数据集合二,包括:
基于所述第一预设阈值数据,对所述指标数据集合一中的每个指标数据进行判断,得到超出对应指标阈值的第一指标数据,其中,所述第一预设阈值数据中至少包括:所述多个指标中每个指标对应的指标阈值;
基于所述第二预设阈值数据,对所述指标数据集合一中的每个指标数据进行判断,得到指标值变化的时间超出对应变化时间阈值的第二指标数据,其中,所述指标值变化包括:指标值上涨、指标值下跌,所述变化时间阈值至少包括:上涨超时时间阈值,下跌超时时间阈值;
基于所述指标阈值表中每个指标的影响因子占比、所述第一指标数据以及所述第二指标数据,得到所述指标数据集合二,其中,所述指标数据集合二中的指标数据至少包括:指标标识、指标对应的作业数据,指标的影响因子占比。
3.根据权利要求1所述的处理方法,其特征在于,基于每个作业的目标指标数据,通过预设影响因子算法,确定每个作业的作业配置数据,包括:
获取每个作业的原始作业配置数据;
基于每个作业的原始作业配置数据、依据每个作业对应的目标指标数据中的指标的影响因子占比,对每个作业对应的原始作业配置数据进行处理,确定每个作业的作业配置数据,其中,所述作业配置数据至少包括以下其中之一:内存、并发度、计算资源的隔离单元数。
4.根据权利要求1所述的处理方法,其特征在于,依据每个作业重新配置后的作业部署信息为所述作业分配资源,包括:
对重新配置作业部署信息的作业进行下线处理,并将重新配置后的作业部署信息更新到作业部署信息表中;
依据所述作业部署信息表,对重新配置作业部署信息的作业进行重启。
5.根据权利要求1所述的处理方法,其特征在于,基于所述作业配置数据,对每个作业的作业部署信息进行重新配置之后,包括:
获取每个作业的预设敏感度阈值,其中,所述预设敏感度阈值用于判断作业配置数据是否超出原始作业配置数据的预设比例;
基于所述作业配置数据,与每个作业对应的所述预设敏感度阈值,确定超出敏感度阈值的目标作业;
重新配置所述目标作业的作业配置数据,确定所述目标作业的目标作业配置数据,并对所述目标作业配置数据进行可行性判断,其中,所述可行性判断用于判断所述目标作业配置数据是否超出运行所述目标作业的数据处理平台的限制规则;
在所述目标作业配置数据通过所述可行性判断的情况下,执行依据每个作业重新配置后的作业部署信息为所述作业分配资源的步骤。
6.根据权利要求1所述的处理方法,其特征在于,获取多个指标的指标数据集合一,包括:
基于预设指标度量系统获取多个指标的原始指标数据,其中,所述原始指标数据至少包括:指标关联的作业的作业标识、指标值;
在目标数据库中基于所述原始指标数据中每个指标的所述作业标识,获取每个指标关联的作业的作业数据;
基于所述原始指标数据以及每个指标关联的作业的作业数据,得到所述多个指标的所述指标数据集合一。
7.根据权利要求1至6中任意一项所述的处理方法,其特征在于,所述方法还包括:
基于作业操作数据表,对超出预设报警阈值的作业进行报警,其中,所述作业操作数据表用于记录所有作业的历史作业配置数据的配置记录以及历史操作记录,所述预设报警阈值至少包括以下其中之一:作业重启频率阈值,作业配置数据阈值;
基于所述作业操作数据表,绘制作业配置资源变化图。
8.一种作业数据的处理装置,其特征在于,包括:
处理单元,用于获取多个指标的指标数据集合一,基于指标阈值表中的预设阈值对指标数据集合一中的指标数据进行处理,确定指标数据集合二,其中,所述指标数据集合一中的指标数据至少包括:每个指标的指标标识、每个指标对应的作业数据;
聚合单元,用于以作业维度对所述指标数据集合二进行聚合,得到多个作业中每个作业的目标指标数据,其中,所述目标指标数据至少包括:指标标识、指标对应的作业数据、指标的影响因子占比,所述影响因子占比为指标对作业配置数据的影响比例;
确定单元,用于基于每个作业的目标指标数据,通过预设影响因子算法,确定每个作业的作业配置数据;
配置单元,用于基于所述作业配置数据,对每个作业的作业部署信息进行重新配置;
分配单元,用于依据每个作业重新配置后的作业部署信息为所述作业分配资源。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,其中,在所述计算机程序运行时控制所述计算机可读存储介质所在设备执行权利要求1至7中任意一项所述的系统作业数据的处理方法。
10.一种电子设备,其特征在于,包括一个或多个处理器和存储器,所述存储器用于存储一个或多个程序,其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现权利要求1至7中任意一项所述的系统作业数据的处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211274199.8A CN115480924A (zh) | 2022-10-18 | 2022-10-18 | 作业数据的处理方法及装置、存储介质、电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211274199.8A CN115480924A (zh) | 2022-10-18 | 2022-10-18 | 作业数据的处理方法及装置、存储介质、电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115480924A true CN115480924A (zh) | 2022-12-16 |
Family
ID=84395505
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211274199.8A Pending CN115480924A (zh) | 2022-10-18 | 2022-10-18 | 作业数据的处理方法及装置、存储介质、电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115480924A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117539605A (zh) * | 2024-01-09 | 2024-02-09 | 无锡挚达物联科技有限公司 | 一种数据处理程序组装方法、装置、设备及存储介质 |
-
2022
- 2022-10-18 CN CN202211274199.8A patent/CN115480924A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117539605A (zh) * | 2024-01-09 | 2024-02-09 | 无锡挚达物联科技有限公司 | 一种数据处理程序组装方法、装置、设备及存储介质 |
CN117539605B (zh) * | 2024-01-09 | 2024-03-19 | 无锡挚达物联科技有限公司 | 一种数据处理程序组装方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107734035B (zh) | 一种云计算环境下的虚拟集群自动伸缩方法 | |
EP3180695B1 (en) | Systems and methods for auto-scaling a big data system | |
EP2503733B1 (en) | Data collecting method, data collecting apparatus and network management device | |
US10558544B2 (en) | Multiple modeling paradigm for predictive analytics | |
US20130138806A1 (en) | Predictive and dynamic resource provisioning with tenancy matching of health metrics in cloud systems | |
CN111399986A (zh) | Pod资源配额配置方法及装置 | |
US11018991B1 (en) | System and method for autonomous and dynamic resource allocation in storage systems | |
CN112579304A (zh) | 基于分布式平台的资源调度方法、装置、设备及介质 | |
US10623281B1 (en) | Dynamically scheduled checkpoints in distributed data streaming system | |
CN110609745A (zh) | 一种作业任务的执行方法、装置、电子设备、存储介质 | |
Procaccianti et al. | A catalogue of green architectural tactics for the cloud | |
CN108268546A (zh) | 一种优化数据库的方法及装置 | |
CN115480924A (zh) | 作业数据的处理方法及装置、存储介质、电子设备 | |
CN103488538A (zh) | 云计算系统中的应用扩展装置和应用扩展方法 | |
Çavdar et al. | Quantifying the brown side of priority schedulers: Lessons from big clusters | |
CN111813548A (zh) | 一种资源调度方法、装置、电子设备及存储介质 | |
CN115858499A (zh) | 一种数据库分区处理方法、装置、计算机设备和存储介质 | |
US20140165058A1 (en) | System resource management method for virtual system | |
Yu et al. | Ceres: container-based elastic resource management system for mixed workloads | |
McGough et al. | Reducing the number of miscreant tasks executions in a multi-use cluster | |
CN112035262A (zh) | 多主机动态管理调整的方法和装置 | |
US11704242B1 (en) | System and method for dynamic memory optimizer and manager for Java-based microservices | |
US20210049240A1 (en) | Highly available policy agent for backup and restore operations | |
US11899578B2 (en) | System and method for dynamic selection of a garbage collector for java-based microservices | |
CN113296840B (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 |