CN117608831A - 分布式数据交换系统的作业管理方法、装置及服务器 - Google Patents
分布式数据交换系统的作业管理方法、装置及服务器 Download PDFInfo
- Publication number
- CN117608831A CN117608831A CN202311568303.9A CN202311568303A CN117608831A CN 117608831 A CN117608831 A CN 117608831A CN 202311568303 A CN202311568303 A CN 202311568303A CN 117608831 A CN117608831 A CN 117608831A
- Authority
- CN
- China
- Prior art keywords
- job
- value
- average value
- preset
- instance
- 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
- 238000000034 method Methods 0.000 title claims abstract description 17
- 238000007726 management method Methods 0.000 claims abstract description 39
- 230000010354 integration Effects 0.000 claims abstract description 24
- 230000036316 preload Effects 0.000 claims abstract description 7
- 238000004590 computer program Methods 0.000 claims description 7
- 230000005540 biological transmission Effects 0.000 abstract description 8
- 238000005516 engineering process Methods 0.000 abstract description 8
- 238000012545 processing Methods 0.000 abstract description 7
- 238000004891 communication Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 5
- 238000004422 calculation algorithm Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 238000012937 correction Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000003491 array Methods 0.000 description 2
- 238000002955 isolation Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000013468 resource allocation Methods 0.000 description 1
- 238000012384 transportation and delivery Methods 0.000 description 1
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/5083—Techniques for rebalancing the load in a distributed system
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本申请涉及数据处理技术领域,特别涉及一种分布式数据交换系统的作业管理方法、装置及服务器,其中分布式数据交换系统把控多个集成引擎,方法包括以下步骤:识别目标集成引擎上运行的作业实例的作业指标和作业类型;根据作业指标和作业类型确定目标集成引擎上满足过慢运行条件的目标作业实例,将目标作业实例存储至分布式可靠存储;获取多个集成引擎中每个集成引擎的负载率,基于负载率小于预负载率的集成引擎,从分布式可靠存储中调取目标作业实例继续运行。由此,解决了相关技术无法实现任务自动切换实现资源均衡,且手动切换执行环境无法实现断点续传等问题。
Description
技术领域
本申请涉及数据处理技术领域,特别涉及一种分布式数据交换系统的作业管理方法、装置及服务器。
背景技术
在大量的政府项目交付过程中,不同部门、组织、层级和区域之间的数据交换过程中会存在网络不可达情况,需要在每一个网络区域部署一套数据集成工具,将数据交换到公共缓存区。
目前开源的数据集成产品有很多,比如Datax、Kettle、Flink CDC、Seatunnel等,而在同一网络区域中,不同部门之间存在集成作业执行资源抢占的问题,当资源负载较高时作业之间互相影响,抽取写入性能自然也会下降,一般情况下用户发现执行缓慢的作业会手动停止并重新执行,从而影响整个交换的效率,且无法实现自动化。
发明内容
本申请提供一种分布式数据交换系统的作业管理方法、装置及服务器,以解决相关技术无法实现任务自动切换实现资源均衡,且手动切换执行环境无法实现断点续传等问题。
本申请第一方面实施例提供一种分布式数据交换系统的作业管理方法,所述分布式数据交换系统把控多个集成引擎,其中,所述方法包括以下步骤:识别目标集成引擎上运行的作业实例的作业指标和作业类型;根据所述作业指标和所述作业类型确定所述目标集成引擎上满足过慢运行条件的目标作业实例,将所述目标作业实例存储至分布式可靠存储;获取所述多个集成引擎中每个集成引擎的负载率,基于所述负载率小于预负载率的集成引擎,从所述分布式可靠存储中调取所述目标作业实例继续运行。
可选地,所述作业指标包括作业实例的读取数据量的平均值、写入数据量平均值和整体平均值中的一个或多个,所述作业类型包括全量批作业和实时作业。
可选地,所述根据所述作业指标和所述作业类型确定所述目标集成引擎上满足过慢运行条件的目标作业实例,包括:若所述作业类型为所述全量批作业,则根据所述写入数据量平均值、所述写入数据量的平均值和所述整体平均值确定满足过慢运行条件的目标作业实例;若所述作业类型为所述实时作业,则根据所述写入数据量的平均值和所述读取数据量的平均值确定满足过慢运行条件的目标作业实例。
可选地,所述根据所述写入数据量的平均值和所述整体平均值确定满足过慢运行条件的目标作业实例,包括:分别计算当前作业实例在第一预设时长内写入数据量的第一平均值和第二预设时长内写入数据量的第二平均值,并计算所述第一平均值和所述第二平均值的第一差值;若所述第一差值大于或等于所述第一预设值,则计算当前作业实例的在第三预设时长内写入数据量的第三平均值,若所述第一平均值与所述第三平均值之间的第二差值大于或等于第二预设值,则判定所述当前作业实例为满足过慢运行条件的目标作业实例,其中,所述第一预设值大于所述第二预设值;若所述第一差值小于第三预设值,则获取所述当前作业实例的第一整体平均值和上一个或多个作业实例的第二整体平均值,若所述第一整体平均值和所述第二整体平均值的第三差值大于第四预设值,则判定所述当前作业实例为满足过慢运行条件的目标作业实例,其中,所述第一预设值大于所述第三预设值;否则,判定所述当前作业实例不满足过慢运行条件。
可选地,在判定所述当前作业实例不满足过慢运行条件之后,还包括:若所述第一差值大于或等于所述第三预设值,则分别计算所述当前作业实例在第四预设时长内写入数据量的第四平均值和第五预设时长内的第三整体平均值;若所述第四平均值和所述第三整体平均值的第四差值小于或等于第五预设值、大于第六预设值,或者,若所述第三差值大于或等于第七预设值、小于所述第四预设值,则生成所述当前作业实例运行缓慢的预设提示,其中,所述第四预设值大于所述第七预设值,所述第六预设值大于所述第五预设值。
可选地,所述根据所述写入数据量的平均值和所述读取数据量的平均值确定满足过慢运行条件的目标作业实例,包括:获取当前作业实例在第六预设时长内写入数据量的第五平均值、在第七预设时长内写入数据量的第六平均值、所述第八预设时长内的读取数据量的平均值和第九预设时长内的写入数据量的平均值;计算所述第五平均值分别与所述第六平均值、所述读取数据量的平均值和所述写入数据量的平均值的第五差值、第六差值和第七差值;若所述第五差值大于第八预设值,且所述第六差值和/或第七差值大于第九预设值,则判定所述当前作业实例为满足所述过慢运行条件的目标作业实例;若所述第五差值大于第十预设值、小于或等于所述第八预设值,且所述第六差值和/或第七差值大于第十一预设值,则生成所述当前作业实例运行缓慢的预设提示,其中,所述第八预设值大于所述第十预设值,所述第九预设值大于所述第十一预设值。
可选地,所述获取所述多个集成引擎中每个集成引擎的负载率,包括:获取所述每个集成引擎的网络IO使用率和队列占用率;根据所述网络IO使用率和所述队列占用率计算所述负载率。
本申请第二方面实施例提供一种分布式数据交换系统的作业管理装置,所述分布式数据交换系统把控多个集成引擎,其中,所述装置包括:识别模块,用于识别目标集成引擎上运行的作业实例的作业指标和作业类型;确定模块,用于根据所述作业指标和所述作业类型确定所述目标集成引擎上满足过慢运行条件的目标作业实例,将所述目标作业实例存储至分布式可靠存储;运行模块,用于获取所述多个集成引擎中每个集成引擎的负载率,基于所述负载率小于预负载率的集成引擎,从所述分布式可靠存储中调取所述目标作业实例继续运行。
可选地,所述作业指标包括作业实例的读取数据量的平均值、写入数据量平均值和整体平均值中的一个或多个,所述作业类型包括全量批作业和实时作业。
可选地,所述确定模块,进一步用于在所述作业类型为所述全量批作业时,则根据所述写入数据量的平均值和所述整体平均值确定满足过慢运行条件的目标作业实例;在所述作业类型为所述实时作业时,则根据所述写入数据量的平均值和所述读取数据量的平均值确定满足过慢运行条件的目标作业实例。
可选地,所述确定模块,进一步用于分别计算当前作业实例在第一预设时长内写入数据量的第一平均值和第二预设时长内写入数据量的第二平均值,并计算所述第一平均值和所述第二平均值的第一差值;若所述第一差值大于或等于所述第一预设值,则计算当前作业实例的在第三预设时长内写入数据量的第三平均值,若所述第一平均值与所述第三平均值之间的第二差值大于或等于第二预设值,则判定所述当前作业实例为满足过慢运行条件的目标作业实例,其中,所述第一预设值大于所述第二预设值;若所述第一差值小于第三预设值,则获取所述当前作业实例的第一整体平均值和上一个或多个作业实例的第二整体平均值,若所述第一整体平均值和所述第二整体平均值的第三差值大于第四预设值,则判定所述当前作业实例为满足过慢运行条件的目标作业实例,其中,所述第一预设值大于所述第三预设值;否则,判定所述当前作业实例不满足过慢运行条件。
可选地,所述分布式数据交换系统的作业管理装置,还包括:计算模块和生成模块,其中,计算模块用于在判定所述当前作业实例不满足过慢运行条件之后,在所述第一差值大于或等于所述第三预设值时,分别计算所述当前作业实例在第四预设时长内写入数据量的第四平均值和第五预设时长内的第三整体平均值;生成模块,用于在所述第四平均值和所述第三整体平均值的第四差值小于或等于第五预设值、大于第六预设值,或者,所述第三差值大于或等于第七预设值、小于所述第四预设值时,则生成所述当前作业实例运行缓慢的预设提示,其中,所述第四预设值大于所述第七预设值,所述第六预设值大于所述第五预设值。
可选地,所述确定模块,进一步用于获取当前作业实例在第六预设时长内写入数据量的第五平均值、在第七预设时长内写入数据量的第六平均值、所述第八预设时长内的读取数据量的平均值和第九预设时长内的写入数据量的平均值;计算所述第五平均值分别与所述第六平均值、所述读取数据量的平均值和所述写入数据量的平均值的第五差值、第六差值和第七差值;若所述第五差值大于第八预设值,且所述第六差值和/或第七差值大于第九预设值,则判定所述当前作业实例为满足所述过慢运行条件的目标作业实例;若所述第五差值大于第十预设值、小于或等于所述第八预设值,且所述第六差值和/或第七差值大于第十一预设值,则生成所述当前作业实例运行缓慢的预设提示,其中,所述第八预设值大于所述第十预设值,所述第九预设值大于所述第十一预设值。
可选地,所述运行模块,进一步用于获取所述每个集成引擎的网络IO使用率和队列占用率;根据所述网络IO使用率和所述队列占用率计算所述负载率。
本申请第三方面实施例提供一种服务器,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序,以实现如上述实施例所述的分布式数据交换系统的作业管理方法。
本申请第四方面实施例提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行,以用于实现如上述实施例所述的分布式数据交换系统的作业管理方法。
由此,本申请至少具有如下有益效果:
本申请实施例可以根据作业实例的作业指标和作业类型和特定算法确定集成引擎中慢运行的作业实例,通过将慢运行的作业实例迁移到负载低的集成引擎上运行,实现了在满足数据一致性下的作业实例自动切换能力,避免作业实例之间抢占资源的问题的同时,还可以避免集成引擎负载率过高,提高了数据的处理效率。由此,解决了相关技术无法实现任务自动切换实现资源均衡,且手动切换执行环境无法实现断点续传等问题。
本申请附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本申请的实践了解到。
附图说明
本申请上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为根据本申请实施例提供的分布式数据交换系统的示意图;
图2为根据本申请实施例提供的分布式数据交换系统的作业管理方法的流程图;
图3为根据本申请实施例提供的分布式数据交换系统的作业管理装置的示例图;
图4为根据本申请实施例的服务器的结构示意图。
具体实施方式
下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本申请,而不能理解为对本申请的限制。
下面参考附图描述本申请实施例的分布式数据交换系统的作业管理方法、装置、服务器及存储介质。针对上述背景技术中提到的问题,本申请提供了一种分布式数据交换系统的作业管理方法,在该方法中,通过作业实例的作业指标和作业类型和特定算法确定集成引擎中慢运行的作业实例,通过将慢运行的作业实例迁移到负载低的集成引擎上运行,实现了在满足数据一致性下的作业实例自动切换能力,避免作业实例之间抢占资源的问题的同时,还可以避免集成引擎负载率过高,提高了数据的处理效率。由此,解决了相关技术无法实现任务自动切换实现资源均衡,且手动切换执行环境无法实现断点续传等问题。
具体地,在介绍本申请实施例之前,首先介绍一下本申请实施例所涉及的分布式数据交换系统,分布式数据交换系统把控多个集成引擎,如图1所示,展示了三个集成引擎,分别是Engine Instance1、Engine Instance2和Engine Instance3。
集成引擎是实际执行数据交换作业的工具,部署后会有一个实例ID。集成引擎实例可以是单节点的,也可以是多个节点组成的分布式实例,代表了CPU和内存资源合集,本申请实施例可以通过队列的概念将这个合集进行拆分,每一个队列可以占用四分之一CPU核数和500MB内存。
集成引擎初始化时注册部门列表,被注册的部门集成作业才能运行在这个实例上数据连接注册;集成引擎初始化时注册连接列表,被注册的连接集成作业才能运行在作业实例上,并通过位置信息可以识别是否为同一个连接。由此,通过集成引擎自动能力注册的方式实现分布式多实例的统一管控,每个引擎实例细粒度资源队列和部门注册方式实现部门间资源均衡隔离。
控制服务Controller:用于接收数据集成引擎的注册消息,通过统一的控制台管理每个集成引擎的能力,包括能处理的数据连接读写能力,包括资源队列信息,包括所属部门信息等,用于最终实际的作业调度编排。
数据连接:分布式数据交换系统中的数据库可以包括多个,如常见的类型包括mysql、kafka、pgsql、hive、ftp等,每一个网络区域的数据连接只能在这个区域内被访问,因此本申请实施例定义了位置管理,包括IP域名、地址、端口号等等。
资源分配:每个部门可以注册在多个集成引擎上,用户在部门树上配置其可用的最大队列数,不需要绑定具体的集成引擎。
作业提交:作业开发基于部门隔离,作业提交后控制层需要判断作业涉及的数据连接和所属部门,满足这些条件的引擎列表作为可选的作业执行环境,最终选择基于指标统计的结果,在下方进行详细叙述。
作业堵塞:每个作业都有其优先级,当作业可选集成引擎列表资源占满需要按优先级和所需队列数进行排队,当资源释放后先提交优先级高的作业,优先级相同按所需资源从小到大提交。
图2为本申请实施例所提供的一种分布式数据交换系统的作业管理方法的流程示意图。
如图2所示,该分布式数据交换系统的作业管理方法包括以下步骤:
在步骤S101中,识别目标集成引擎上运行的作业实例的作业指标和作业类型。
其中,作业指标包括作业实例的读取数据量的平均值、写入数据量平均值和整体平均值中的一个或多个,作业类型包括全量批作业和实时作业。
在本申请实施例中,作业指标可以按运行实例记录,每预设时间(如30s)统计一次读取数据量和写入数据量,每3分钟统计一次读取数据量和写入数据量的平均值,每5个3分钟计算一次读取数据量的平均值,每10个3分钟计算一次写入数据量的平均值;针对全量批作业,本申请实施例可以通过读、写等操作记录历史实例的整体平均值。
进一步地,本申请实施例按照作业类型区分队列,全量批作业代表有界的数据连接,这类任务数据量较多,一般以抽取某一段时间范围的全量数据为主,缺省占用2个队列;实时作业一般以抽取增量数据为主,比如Mysqlbinlog等等,缺省占用1个队列。每个集成引擎部署后按总资源划分队列总数,并按照2:1划分队列类型,也可以手动调整。
在步骤S102中,根据作业指标和作业类型确定目标集成引擎上满足过慢运行条件的目标作业实例,将目标作业实例存储至分布式可靠存储。
可以理解的是,若作业实例的作业类型为全量批作业,本申请实施例则根据写入数据量的平均值和整体平均值确定满足过慢运行条件的目标作业实例;若作业实例的作业类型为实时作业,本申请实施例则根据写入数据量的平均值和读取数据量的平均值确定满足过慢运行条件的目标作业实例。
进一步地,根据写入数据量的平均值和整体平均值确定满足过慢运行条件的目标作业实例,包括:分别计算当前作业实例在第一预设时长内写入数据量的第一平均值和第二预设时长内写入数据量的第二平均值,并计算第一平均值和第二平均值的第一差值;若第一差值大于或等于第一预设值,则计算当前作业实例的在第三预设时长内写入数据量的第三平均值,若第一平均值与第三平均值之间的第二差值大于或等于第二预设值,则判定当前作业实例为满足过慢运行条件的目标作业实例,其中,第一预设值大于第二预设值;若第一差值小于第三预设值,则获取当前作业实例的第一整体平均值和上一个或多个作业实例的第二整体平均值,若第一整体平均值和第二整体平均值的第三差值大于第四预设值,则判定当前作业实例为满足过慢运行条件的目标作业实例,其中,第一预设值大于第三预设值;否则,判定当前作业实例不满足过慢运行条件。
其中,预设时长和预设值都可以根据实际情况进行设置,不作具体限定,如第一预设值可以为50%,第二预设值可以为25%;第一预设时长和第二预设时长可以为3min,第一预设时长和第二预设时长可以相同,但是表达的时间段是不同的,第一预设时长表示当前时长的三分钟,而第二预设时长则为上个三分钟。
需要说明的是,本申请后续实施例中第三至第九预设时长和第三至第十一预设值同样可以进行具体设置,不作具体限定。为方便理解,作为一个可能实现的方式,具体的设置可以参考实施例中的具体解释。
可以理解的是,本申请实施例可以分别计算本次3分钟维度内(所有30s区间)写入数据量的第一平均值和上一个3分钟内平均值写入数据量的第二平均值,两者进行比较计算出第一差值,若差值大于第一预设值(如50%),本申请实施例则可以计算当前作业实例的在本次三分钟之前的历史5个3分钟内写入数据量的第三平均值,将第一平均值和第三平均值进行比较计算出第二差值,若第二差值大于或等于第二预设值(如25%),本申请实施例则可以判定当期作业实例运行过慢,即可判定当前作业实例为满足过慢运行条件的目标作业实例。
进一步地,若第一预设时长内写入数据量的第一平均值和第二预设时长内写入数据量的第二平均值之间的第一差值小于第三预设值(如25%),本申请实施例则可以将当前作业实例的第一整体平均值和上一个作业实例的第二整体平均值或者前5个作业实例第二整体平均值分别比较得到第三差值,如果第三差值超过第四预设值(如50%)提示告警,本申请实施例则可以认为当前作业实例运行过慢,即判定当前作业实例为满足过慢运行条件的目标作业实例。
进一步地,在当前作业实例不满足上述条件时,在本申请实施例则可以判定当前作业实例不满足过慢运行条件。
在本申请实施例中,在判定当前作业实例不满足过慢运行条件之后,还包括:若第一差值大于或等于第三预设值,则分别计算当前作业实例在第四预设时长内写入数据量的第四平均值和第五预设时长内的第三整体平均值;若第四平均值和第三整体平均值的第四差值小于或等于第五预设值、大于第六预设值,或者,若第三差值大于或等于第七预设值、小于第四预设值,则生成当前作业实例运行缓慢的预设提示,其中,第四预设值大于第七预设值,第六预设值大于第五预设值。
可以理解的是,若第一预设时长内写入数据量的第一平均值和第二预设时长内写入数据量的第二平均值之间的第一差值大于或者等于第三预设值25%,本申请实施例则可以将当前实例加入观察队列,对于观察队列里的作业实例,监测当前3分钟内剩余第四预设时长(30s)时间段的写入数据量的第四平均值,如果单个30s写入数据量的第四平均值和上一个3分钟的第三整体平均值的第四差值小于或等于第五预设值25%、大于第六预设值50%(表示第四差值在25%-50%之间)本申请实施例则可以认为当前作业实例开始缓慢执行,本申请实施例则生成警告提示(如滴滴声、语音播报等),以提醒用户可以进行及时修正。
进一步地,若将当前作业实例的第一整体平均值和上一个作业实例的第二整体平均值或者前5个作业实例第二整体平均值之间的第三差值小于第七预设值(如25%),本申请实施例则可以判定当前作业实例正常,若当前第三差值大于或者等于第七预设值25%,小于第四预设值50%(表示第三差值在25%-50%之间),本申请实施例则生成警告提示,以提醒用户可以进行及时修正。
在本申请的一个实施例中,根据写入数据量的平均值和读取数据量的平均值确定满足过慢运行条件的目标作业实例,包括:获取当前作业实例在第六预设时长内写入数据量的第五平均值、在第七预设时长内写入数据量的第六平均值、第八预设时长内的读取数据量的平均值和第九预设时长内的写入数据量的平均值;计算第五平均值分别与第六平均值、读取数据量的平均值和写入数据量的平均值的第五差值、第六差值和第七差值;若第五差值大于第八预设值,且第六差值和/或第七差值大于第九预设值,则判定当前作业实例为满足过慢运行条件的目标作业实例;若第五差值大于第十预设值、小于或等于第八预设值,且第六差值和/或第七差值大于第十一预设值,则生成当前作业实例运行缓慢的预设提示,其中,第八预设值大于第十预设值,第九预设值大于第十一预设值。
可以理解的是,本申请实施例可以计算当前三分钟(第六预设时长)内(所有30s区间)写入数据量的第五平均值、和上一个三分钟(第七预设时长)内写入数据量的第六平均值,并获取历史5个3分钟读取数据量的平均值、和历史10个3分钟写入数据量的平均值,将第五平均值分别与第六平均值、读取数据量的平均值和写入数据量的平均值进行比较,分别得到第五差值、第六差值和第七差值。
进一步地,若第五差值大于第八预设值(如50%),且第六差值和第七差值有一个大于第九预设值(如50%),则判定当前作业实例运行过慢,可以判定当前作业实例为满足过慢运行条件的目标作业实例;
若第五差值大于第十预设值(如25%)、小于或等于第八预设值50%,且第六差值和第七差值有一个大于第十一预设值(如25%),则可以判定本申请实施例的当前作业实例开始变慢,则生成警告提示,以提醒用户可以进行及时修正。
在步骤S103中,获取多个集成引擎中每个集成引擎的负载率,基于负载率小于预负载率的集成引擎,从分布式可靠存储中调取目标作业实例继续运行。
其中,预设负载率可以为70%,不做具体限定。
在上述实施例的基础上可以确定满足过慢运行条件的目标作业实例,本申请实施例可以暂停该目标作业实例,记录本次运行状态至分布式可靠存储中,为方便理解,本申请实施例可以对运行状态机制做简略的解释,举例而言,如果是Kafka,则保存topic每个分区的消费offset;如果是ftp,则保存已经读取文件的路径名、时间戳和大小。
在本申请实施例中,每个集成引擎都具有网络IO使用率和队列占用率两个指标,本申请实施例可以根据网络IO使用率和队列占用率计算负载率,并基于作业的数据连接和部门管理进行过滤,优先选择负载率低的集成引擎(如可以找到负载率低于70%的引擎)重新调度作业,并从可靠存储中恢复状态实现断点续传,从而实现在满足数据一致性下的作业自动切换能力。
需要说明的是,本申请实施例中可能会存在多个满足过慢运行条件的目标作业实例,本申请实施例可以按照作业实例的优先级,先将其中高优先级的目标作业实例迁移到其他同等能力的集成引擎上,由此,实现按照作业实例优先级自动切换与断点续传。
根据本申请实施例提出的分布式数据交换系统的作业管理方法,通过作业实例的作业指标和作业类型和特定算法确定集成引擎中慢运行的作业实例,通过将慢运行的作业实例迁移到负载低的集成引擎上运行,实现了在满足数据一致性下的作业实例自动切换能力,避免作业实例之间抢占资源的问题的同时,还可以避免集成引擎负载率过高,提高了数据的处理效率。由此,解决了相关技术无法实现任务自动切换实现资源均衡,且手动切换执行环境无法实现断点续传等问题。
其次参照附图描述根据本申请实施例提出的分布式数据交换系统的作业管理装置。
图3是本申请实施例的分布式数据交换系统的作业管理装置的方框示意图。
如图3所示,该分布式数据交换系统的作业管理装置10包括:识别模块100、确定模块200和运行模块300。
其中,识别模块100用于识别目标集成引擎上运行的作业实例的作业指标和作业类型;确定模块200用于根据作业指标和作业类型确定目标集成引擎上满足过慢运行条件的目标作业实例,将目标作业实例存储至分布式可靠存储;运行模块300用于获取多个集成引擎中每个集成引擎的负载率,基于负载率小于预负载率的集成引擎,从分布式可靠存储中调取目标作业实例继续运行。
在本申请的一个实施例中,作业指标包括作业实例的读取数据量的平均值、写入数据量平均值和整体平均值中的一个或多个,作业类型包括全量批作业和实时作业。
在本申请的一个实施例中,确定模块200进一步用于在作业类型为全量批作业时,则根据写入数据量平均值、写入数据量的平均值和整体平均值确定满足过慢运行条件的目标作业实例;在作业类型为实时作业时,则根据写入数据量的平均值和读取数据量的平均值确定满足过慢运行条件的目标作业实例。
在本申请的一个实施例中,确定模块200进一步用于分别计算当前作业实例在第一预设时长内写入数据量的第一平均值和第二预设时长内写入数据量的第二平均值,并计算第一平均值和第二平均值的第一差值;若第一差值大于或等于第一预设值,则计算当前作业实例的在第三预设时长内写入数据量的第三平均值,若第一平均值与第三平均值之间的第二差值大于或等于第二预设值,则判定当前作业实例为满足过慢运行条件的目标作业实例,其中,第一预设值大于第二预设值;若第一差值小于第三预设值,则获取当前作业实例的第一整体平均值和上一个或多个作业实例的第二整体平均值,若第一整体平均值和第二整体平均值的第三差值大于第四预设值,则判定当前作业实例为满足过慢运行条件的目标作业实例,其中,第一预设值大于第三预设值;否则,判定当前作业实例不满足过慢运行条件。
在本申请的一个实施例中,分布式数据交换系统的作业管理装置10还包括:计算模块和生成模块。
其中,计算模块用于在判定当前作业实例不满足过慢运行条件之后,在第一差值大于或等于第三预设值时,分别计算当前作业实例在第四预设时长内写入数据量的第四平均值和第五预设时长内的第三整体平均值;生成模块,用于在第四平均值和第三整体平均值的第四差值小于或等于第五预设值、大于第六预设值,或者,第三差值大于或等于第七预设值、小于第四预设值时,则生成当前作业实例运行缓慢的预设提示,其中,第四预设值大于第七预设值,第六预设值大于第五预设值。
在本申请的一个实施例中,确定模块200进一步用于获取当前作业实例在第六预设时长内写入数据量的第五平均值、在第七预设时长内写入数据量的第六平均值、第八预设时长内的读取数据量的平均值和第九预设时长内的写入数据量的平均值;计算第五平均值分别与第六平均值、读取数据量的平均值和写入数据量的平均值的第五差值、第六差值和第七差值;若第五差值大于第八预设值,且第六差值和/或第七差值大于第九预设值,则判定当前作业实例为满足过慢运行条件的目标作业实例;若第五差值大于第十预设值、小于或等于第八预设值,且第六差值和/或第七差值大于第十一预设值,则生成当前作业实例运行缓慢的预设提示,其中,第八预设值大于第十预设值,第九预设值大于第十一预设值。
在本申请的一个实施例中,运行模块300进一步用于获取每个集成引擎的网络IO使用率和队列占用率;根据网络IO使用率和队列占用率计算负载率。
需要说明的是,前述对分布式数据交换系统的作业管理方法实施例的解释说明也适用于该实施例的分布式数据交换系统的作业管理装置,此处不再赘述。
根据本申请实施例提出的分布式数据交换系统的作业管理装置,通过作业实例的作业指标和作业类型和特定算法确定集成引擎中慢运行的作业实例,通过将慢运行的作业实例迁移到负载低的集成引擎上运行,实现了在满足数据一致性下的作业实例自动切换能力,避免作业实例之间抢占资源的问题的同时,还可以避免集成引擎负载率过高,提高了数据的处理效率。由此,解决了相关技术无法实现任务自动切换实现资源均衡,且手动切换执行环境无法实现断点续传等问题。
图4为本申请实施例提供的服务器的结构示意图。该服务器可以包括:
存储器401、处理器402及存储在存储器401上并可在处理器402上运行的计算机程序。
处理器402执行程序时实现上述实施例中提供的分布式数据交换系统的作业管理方法。
进一步地,服务器还包括:
通信接口403,用于存储器401和处理器402之间的通信。
存储器401,用于存放可在处理器402上运行的计算机程序。
存储器401可能包含高速RAM(Random Access Memory,随机存取存储器)存储器,也可能还包括非易失性存储器,例如至少一个磁盘存储器。
如果存储器401、处理器402和通信接口403独立实现,则通信接口403、存储器401和处理器402可以通过总线相互连接并完成相互间的通信。总线可以是ISA(IndustryStandard Architecture,工业标准体系结构)总线、PCI(Peripheral Component,外部设备互连)总线或EISA(Extended Industry Standard Architecture,扩展工业标准体系结构)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,图4中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
可选的,在具体实现上,如果存储器401、处理器402及通信接口403,集成在一块芯片上实现,则存储器401、处理器402及通信接口403可以通过内部接口完成相互间的通信。
处理器402可能是一个CPU(Central Processing Unit,中央处理器),或者是ASIC(Application Specific Integrated Circuit,特定集成电路),或者是被配置成实施本申请实施例的一个或多个集成电路。
本申请实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上的分布式数据交换系统的作业管理方法。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不是必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或N个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本申请的描述中,“N个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或N个用于实现定制逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本申请的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本申请的实施例所属技术领域的技术人员所理解。
应当理解,本申请的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,N个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。如,如果用硬件来实现和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列,现场可编程门阵列等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
尽管上面已经示出和描述了本申请的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本申请的限制,本领域的普通技术人员在本申请的范围内可以对上述实施例进行变化、修改、替换和变型。
Claims (10)
1.一种分布式数据交换系统的作业管理方法,其特征在于,所述分布式数据交换系统把控多个集成引擎,其中,所述方法包括以下步骤:
识别目标集成引擎上运行的作业实例的作业指标和作业类型;
根据所述作业指标和所述作业类型确定所述目标集成引擎上满足过慢运行条件的目标作业实例,将所述目标作业实例存储至分布式可靠存储;
获取所述多个集成引擎中每个集成引擎的负载率,基于所述负载率小于预负载率的集成引擎,从所述分布式可靠存储中调取所述目标作业实例继续运行。
2.根据权利要求1所述的分布式数据交换系统的作业管理方法,其特征在于,所述作业指标包括作业实例的读取数据量的平均值、写入数据量的平均值和整体平均值中的一个或多个,所述作业类型包括全量批作业和实时作业。
3.根据权利要求2所述的分布式数据交换系统的作业管理方法,其特征在于,所述根据所述作业指标和所述作业类型确定所述目标集成引擎上满足过慢运行条件的目标作业实例,包括:
若所述作业类型为所述全量批作业,则根据所述写入数据量的平均值和所述整体平均值确定满足过慢运行条件的目标作业实例;
若所述作业类型为所述实时作业,则根据所述写入数据量的平均值和所述读取数据量的平均值确定满足过慢运行条件的目标作业实例。
4.根据权利要求3所述的分布式数据交换系统的作业管理方法,其特征在于,所述根据所述写入数据量的平均值和所述整体平均值确定满足过慢运行条件的目标作业实例,包括:
分别计算当前作业实例在第一预设时长内写入数据量的第一平均值和第二预设时长内写入数据量的第二平均值,并计算所述第一平均值和所述第二平均值的第一差值;
若所述第一差值大于或等于所述第一预设值,则计算当前作业实例在第三预设时长内写入数据量的第三平均值,若所述第一平均值与所述第三平均值之间的第二差值大于或等于第二预设值,则判定所述当前作业实例为满足过慢运行条件的目标作业实例,其中,所述第一预设值大于所述第二预设值;
若所述第一差值小于第三预设值,则获取所述当前作业实例的第一整体平均值和上一个或多个作业实例的第二整体平均值,若所述第一整体平均值和所述第二整体平均值的第三差值大于第四预设值,则判定所述当前作业实例为满足过慢运行条件的目标作业实例,其中,所述第一预设值大于所述第三预设值;
否则,判定所述当前作业实例不满足过慢运行条件。
5.根据权利要求4所述的分布式数据交换系统的作业管理方法,其特征在于,在判定所述当前作业实例不满足过慢运行条件之后,还包括:
若所述第一差值大于或等于所述第三预设值,则分别计算所述当前作业实例在第四预设时长内写入数据量的第四平均值和第五预设时长内的第三整体平均值;
若所述第四平均值和所述第三整体平均值的第四差值小于或等于第五预设值、大于第六预设值,或者,若所述第三差值大于或等于第七预设值、小于所述第四预设值,则生成所述当前作业实例运行缓慢的预设提示,其中,所述第四预设值大于所述第七预设值,所述第六预设值大于所述第五预设值。
6.根据权利要求3所述的分布式数据交换系统的作业管理方法,其特征在于,所述根据所述写入数据量的平均值和所述读取数据量的平均值确定满足过慢运行条件的目标作业实例,包括:
获取当前作业实例在第六预设时长内写入数据量的第五平均值、在第七预设时长内写入数据量的第六平均值、第八预设时长内的读取数据量的平均值和第九预设时长内的写入数据量的平均值;
计算所述第五平均值分别与所述第六平均值、所述读取数据量的平均值和所述写入数据量的平均值的第五差值、第六差值和第七差值;
若所述第五差值大于第八预设值,且所述第六差值和/或第七差值大于第九预设值,则判定所述当前作业实例为满足所述过慢运行条件的目标作业实例;
若所述第五差值大于第十预设值、小于或等于所述第八预设值,且所述第六差值和/或第七差值大于第十一预设值,则生成所述当前作业实例运行缓慢的预设提示,其中,所述第八预设值大于所述第十预设值,所述第九预设值大于所述第十一预设值。
7.根据权利要求3所述的分布式数据交换系统的作业管理方法,其特征在于,所述获取所述多个集成引擎中每个集成引擎的负载率,包括:
获取所述每个集成引擎的网络IO使用率和队列占用率;
根据所述网络IO使用率和所述队列占用率计算所述负载率。
8.一种分布式数据交换系统的作业管理装置,其特征在于,所述分布式数据交换系统把控多个集成引擎,其中,所述装置包括:
识别模块,用于识别目标集成引擎上运行的作业实例的作业指标和作业类型;
确定模块,用于根据所述作业指标和所述作业类型确定所述目标集成引擎上满足过慢运行条件的目标作业实例,将所述目标作业实例存储至分布式可靠存储;
运行模块,用于获取所述多个集成引擎中每个集成引擎的负载率,基于所述负载率小于预负载率的集成引擎,从所述分布式可靠存储中调取所述目标作业实例继续运行。
9.一种服务器,其特征在于,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序,以实现如权利要求1-7任一项所述的分布式数据交换系统的作业管理方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行,以用于实现如权利要求1-7任一项所述的分布式数据交换系统的作业管理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311568303.9A CN117608831A (zh) | 2023-11-22 | 2023-11-22 | 分布式数据交换系统的作业管理方法、装置及服务器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311568303.9A CN117608831A (zh) | 2023-11-22 | 2023-11-22 | 分布式数据交换系统的作业管理方法、装置及服务器 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117608831A true CN117608831A (zh) | 2024-02-27 |
Family
ID=89947431
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311568303.9A Pending CN117608831A (zh) | 2023-11-22 | 2023-11-22 | 分布式数据交换系统的作业管理方法、装置及服务器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117608831A (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111046091A (zh) * | 2019-10-24 | 2020-04-21 | 杭州数梦工场科技有限公司 | 数据交换系统的运行方法、装置及设备 |
CN113239059A (zh) * | 2021-05-28 | 2021-08-10 | 北京达佳互联信息技术有限公司 | 一种分布式锁的切换方法、装置、服务器和存储介质 |
CN114461389A (zh) * | 2022-01-13 | 2022-05-10 | 中国工商银行股份有限公司 | 服务器集群的负载均衡方法、装置及电子设备 |
CN116107731A (zh) * | 2021-11-09 | 2023-05-12 | 顺丰科技有限公司 | 分布式集群负载的控制方法及装置 |
CN116360989A (zh) * | 2023-03-23 | 2023-06-30 | 中国建设银行股份有限公司 | 计算引擎作业的执行处理方法、装置、电子设备及介质 |
CN116909714A (zh) * | 2023-08-04 | 2023-10-20 | 新加坡国立大学 | 任务运行时的慢节点检测方法、装置、电子设备和介质 |
-
2023
- 2023-11-22 CN CN202311568303.9A patent/CN117608831A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111046091A (zh) * | 2019-10-24 | 2020-04-21 | 杭州数梦工场科技有限公司 | 数据交换系统的运行方法、装置及设备 |
CN113239059A (zh) * | 2021-05-28 | 2021-08-10 | 北京达佳互联信息技术有限公司 | 一种分布式锁的切换方法、装置、服务器和存储介质 |
CN116107731A (zh) * | 2021-11-09 | 2023-05-12 | 顺丰科技有限公司 | 分布式集群负载的控制方法及装置 |
CN114461389A (zh) * | 2022-01-13 | 2022-05-10 | 中国工商银行股份有限公司 | 服务器集群的负载均衡方法、装置及电子设备 |
CN116360989A (zh) * | 2023-03-23 | 2023-06-30 | 中国建设银行股份有限公司 | 计算引擎作业的执行处理方法、装置、电子设备及介质 |
CN116909714A (zh) * | 2023-08-04 | 2023-10-20 | 新加坡国立大学 | 任务运行时的慢节点检测方法、装置、电子设备和介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8959515B2 (en) | Task scheduling policy for limited memory systems | |
CN111625331B (zh) | 任务调度方法、装置、平台、服务器及存储介质 | |
US20080209084A1 (en) | Hardware-Based Concurrent Direct Memory Access (DMA) Engines On Serial Rapid Input/Output SRIO Interface | |
CN110213128B (zh) | 服务端口检测方法、电子设备及计算机存储介质 | |
WO2020172852A1 (en) | Computing resource scheduling method, scheduler, internet of things system, and computer readable medium | |
WO2021174382A1 (zh) | 一种消息拉取方法、装置以及计算机存储介质 | |
CN112860387A (zh) | 分布式任务调度方法、装置、计算机设备及存储介质 | |
CN112506808A (zh) | 测试任务执行方法、计算设备、计算系统和存储介质 | |
CN108415765B (zh) | 任务调度方法、装置及智能终端 | |
CN116627356B (zh) | 一种大容量存储数据的分布控制方法及系统 | |
CN114143327A (zh) | 集群资源配额分配方法、装置及电子设备 | |
CN115794446B (zh) | 一种消息处理方法、装置、电子设备和存储介质 | |
CN117608831A (zh) | 分布式数据交换系统的作业管理方法、装置及服务器 | |
CN112650693B (zh) | 一种静态内存管理方法及装置 | |
CN116521341A (zh) | 中断任务处理方法、装置、芯片、存储介质 | |
CN116126937A (zh) | 作业调度方法、装置、电子设备及存储介质 | |
CN113778821A (zh) | 固态硬盘的介质访问管理方法及固态硬盘 | |
CN112463027A (zh) | 一种i/o处理方法、系统、设备及计算机可读存储介质 | |
US7240090B2 (en) | Data queueing | |
CN116185626A (zh) | 一种逻辑卷动态分配管理方法、装置、设备及存储介质 | |
CN117376373B (zh) | 元数据操作请求的处理方法、装置、设备及存储介质 | |
US11520638B1 (en) | Combined active and preinitialized resource management for rapid autoscaling | |
CN113590319B (zh) | 一种消息队列的计算资源负载均衡方法及装置 | |
CN116820750A (zh) | 一种numa架构下多任务调度管理系统 | |
CN116414620A (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 |