CN112130995B - 一种实时数据处理方法和装置 - Google Patents
一种实时数据处理方法和装置 Download PDFInfo
- Publication number
- CN112130995B CN112130995B CN202010988135.9A CN202010988135A CN112130995B CN 112130995 B CN112130995 B CN 112130995B CN 202010988135 A CN202010988135 A CN 202010988135A CN 112130995 B CN112130995 B CN 112130995B
- Authority
- CN
- China
- Prior art keywords
- memory
- processing
- processing task
- task
- response
- 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
Links
- 238000003672 processing method Methods 0.000 title abstract description 18
- 230000015654 memory Effects 0.000 claims abstract description 280
- 238000012545 processing Methods 0.000 claims abstract description 215
- 230000004044 response Effects 0.000 claims abstract description 66
- 238000000034 method Methods 0.000 claims abstract description 42
- 238000012544 monitoring process Methods 0.000 claims abstract description 42
- 230000008569 process Effects 0.000 description 14
- 238000010586 diagram Methods 0.000 description 4
- 230000000737 periodic effect Effects 0.000 description 3
- 238000004590 computer program Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012797 qualification Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
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
- G06F9/5038—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 considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/5021—Priority
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
本发明公开了一种实时数据处理方法和装置,方法包括:确定实时数据处理启用手动模式或自动模式执行内存处理任务;响应于启用自动模式,而为每个处理任务分配预定数量的内存以启动处理任务;响应于处理任务启动而周期性地监控处理任务,并响应于处理任务所需的内存不足而动态申请内存;响应于申请到内存而根据处理任务的优先级来选择性地将内存分配给处理任务。本发明能够提高实时数据处理工作效率和内存利用,缩短响应时间并灵活调整和应对处理任务。
Description
技术领域
本发明涉及数据处理领域,更具体地,特别是指一种实时数据处理方法和装置。
背景技术
现有技术的大数据集群中NIFI(一种实时数据处理系统)的内存使用通过配置默认最大可用值,来规范内存使用,这样的设置缺乏灵活性,使NIFI在面对大数据量时,出现内存不足的问题。在NIFI任务处理数据时,由于任务执行的顺序不能灵活地调整,当需要执行一个紧急任务时,由于正在执行的任务耗时久且占用资源,导致紧急任务不能尽快执行。
针对现有技术中实时数据处理的工作效率低、内存利用率低、响应时间长、处理任务死板的问题,目前尚无有效的解决方案。
发明内容
有鉴于此,本发明实施例的目的在于提出一种实时数据处理方法和装置,能够提高实时数据处理工作效率和内存利用,缩短响应时间并灵活调整和应对处理任务。
基于上述目的,本发明实施例的第一方面提供了一种实时数据处理方法,包括执行以下步骤:
确定实时数据处理启用手动模式或自动模式执行内存处理任务;
响应于启用自动模式,而为每个处理任务分配预定数量的内存以启动处理任务;
响应于处理任务启动而周期性地监控处理任务,并响应于处理任务所需的内存不足而动态申请内存;
响应于申请到内存而根据处理任务的优先级来选择性地将内存分配给提出动态申请的处理任务。
在一些实施方式中,方法还包括:监控处理任务的同时还分别判断每个处理任务的内存分配优先级;
根据处理任务的优先级来选择性地将内存分配给处理任务包括:优先为内存分配优先级更高的处理任务分配内存,其中所述优先级基于以下至少之一而确定:任务的数据量、处理时间、和等待时间。
在一些实施方式中,处理任务所需的内存不足包括:执行处理任务所需的内存小于可用最大内存与增量比例阈值之积,并且增量比例阈值小于1;响应于处理任务所需的内存不足而动态申请内存包括:响应于处理任务所需的内存小于可用最大内存与增量比例阈值之积,而调整优先可用内存参数使得在有更多内存资源可分配时为处理任务动态申请内存。
在一些实施方式中,方法还包括:动态申请内存的量小于原始总内存与第一比例阈值之积时,基于处理任务的运行情况以第一增长速度动态申请内存;动态申请内存的量大于原始总内存与第一比例阈值之积、且小于原始总内存与大于第一比例阈值的第二比例阈值之积时,基于处理任务的运行情况以小于第一增长速度的第二增长速度动态申请内存;动态申请内存的量大于原始总内存与第二比例阈值之积、且小于原始总内存与大于第二比例阈值的第三比例阈值之积时,基于处理任务的运行情况以小于第二增长速度的第三增长速度动态申请内存。
在一些实施方式中,方法还包括:响应于动态申请内存的量大于原始总内存与第三比例阈值之积而停止申请任何额外的内存。
在一些实施方式中,内存为AEP内存;方法还包括:基于处理任务的运行情况而动态调整AEP内存在内存模式、硬盘模式、或混合模式下工作、和/或动态调整在混合模式下工作的AEP内存的内存-硬盘比例。
在一些实施方式中,步骤还包括:
响应于启用手动模式,而周期性地确定处理任务的执行结果、数据量、等待时间、和前进速度;
响应于获得处理任务的执行结果、数据量、等待时间、和前进速度,而使用动态优先级算法确定处理任务的运行顺序和排队顺序;
响应于确定处理任务的运行顺序和排队顺序而据此在下一个周期调整处理任务。
基于上述目的,本发明实施例的第二方面提供了一种实时数据处理装置,包括:
处理器;和
存储器,存储有处理器可运行的程序代码,程序代码在被运行时执行以下步骤:
确定实时数据处理启用手动模式或自动模式执行内存处理任务;
响应于启用自动模式,而为每个处理任务分配预定数量的内存以启动处理任务;
响应于处理任务启动而周期性地监控处理任务,并响应于处理任务所需的内存不足而动态申请内存;
响应于申请到内存而根据处理任务的优先级来选择性地将内存分配给提出动态申请的处理任务。
在一些实施方式中,步骤还包括:监控处理任务的同时还分别判断每个处理任务的内存分配优先级;
根据处理任务的优先级来选择性地将内存分配给处理任务包括:优先为内存分配优先级更高的处理任务分配内存,其中所述优先级基于以下至少之一而确定:任务的数据量、处理时间、和等待时间;
处理任务所需的内存不足包括:执行处理任务所需的内存小于可用最大内存与增量比例阈值之积,并且增量比例阈值小于1;响应于处理任务所需的内存不足而动态申请内存包括:响应于处理任务所需的内存小于可用最大内存与增量比例阈值之积,而调整优先可用内存参数使得在有更多内存资源可分配时为处理任务动态申请内存。
在一些实施方式中,步骤还包括:
响应于启用手动模式,而周期性地确定处理任务的执行结果、数据量、等待时间、和前进速度;
响应于获得处理任务的执行结果、数据量、等待时间、和前进速度,而使用动态优先级算法确定处理任务的运行顺序和排队顺序;
响应于确定处理任务的运行顺序和排队顺序而据此在下一个周期调整处理任务。
本发明具有以下有益技术效果:本发明实施例提供的实时数据处理方法和装置,通过确定实时数据处理启用手动模式或自动模式执行内存处理任务;响应于启用自动模式,而为每个处理任务分配预定数量的内存以启动处理任务;响应于处理任务启动而周期性地监控处理任务,并响应于处理任务所需的内存不足而动态申请内存;响应于申请到内存而根据处理任务的优先级来选择性地将内存分配给提出动态申请的处理任务的技术方案,能够提高实时数据处理工作效率和内存利用,缩短响应时间并灵活调整和应对处理任务。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明提供的实时数据处理方法的流程示意图;
图2为本发明提供的实时数据处理方法的自动模式下的逻辑示意图;
图3为本发明提供的实时数据处理方法的手动模式下的逻辑示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明实施例进一步详细说明。
需要说明的是,本发明实施例中所有使用“第一”和“第二”的表述均是为了区分两个相同名称非相同的实体或者非相同的参量,可见“第一”“第二”仅为了表述的方便,不应理解为对本发明实施例的限定,后续实施例对此不再一一说明。
基于上述目的,本发明实施例的第一个方面,提出了一种缩短响应时间并灵活调整和应对处理任务的实时数据处理方法的一个实施例。图1示出的是本发明提供的实时数据处理方法的流程示意图。
所述的实时数据处理方法,如图1所示,包括执行以下步骤:
步骤S101:确定实时数据处理启用手动模式或自动模式执行内存处理任务;
步骤S103:响应于启用自动模式,而为每个处理任务分配预定数量的内存以启动处理任务;
步骤S105:响应于处理任务启动而周期性地监控处理任务,并响应于处理任务所需的内存不足而动态申请内存;
步骤S107:响应于申请到内存而根据处理任务的优先级来选择性地将内存分配给提出动态申请的处理任务。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关硬件来完成,的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,的存储介质可为磁碟、光盘、只读存储记忆体(ROM)或随机存储记忆体(RAM)等。计算机程序的实施例,可以达到与之对应的前述任意方法实施例相同或者相类似的效果。
在一些实施方式中,方法还包括:监控处理任务的同时还分别判断每个处理任务的内存分配优先级。根据处理任务的优先级来选择性地将内存分配给处理任务包括:优先为内存分配优先级更高的处理任务分配内存,其中所述优先级基于以下至少之一而确定:任务的数据量、处理时间、和等待时间。
在一些实施方式中,处理任务所需的内存不足包括:执行处理任务所需的内存小于可用最大内存与增量比例阈值之积,并且增量比例阈值小于1。响应于处理任务所需的内存不足而动态申请内存包括:响应于处理任务所需的内存小于可用最大内存与增量比例阈值之积,而调整优先可用内存参数使得在有更多内存资源可分配时为处理任务动态申请内存。
在一些实施方式中,方法还包括:动态申请内存的量小于原始总内存与第一比例阈值之积时,基于处理任务的运行情况以第一增长速度动态申请内存;动态申请内存的量大于原始总内存与第一比例阈值之积、且小于原始总内存与大于第一比例阈值的第二比例阈值之积时,基于处理任务的运行情况以小于第一增长速度的第二增长速度动态申请内存;动态申请内存的量大于原始总内存与第二比例阈值之积、且小于原始总内存与大于第二比例阈值的第三比例阈值之积时,基于处理任务的运行情况以小于第二增长速度的第三增长速度动态申请内存。
在一些实施方式中,方法还包括:响应于动态申请内存的量大于原始总内存与第三比例阈值之积而停止申请任何额外的内存。
在一些实施方式中,内存为AEP内存(Apache pass memory)。方法还包括:基于处理任务的运行情况而动态调整AEP内存在内存模式、硬盘模式、或混合模式下工作、和/或动态调整在混合模式下工作的AEP内存的内存-硬盘比例。
在一些实施方式中,步骤还包括:
响应于启用手动模式,而周期性地确定处理任务的执行结果、数据量、等待时间、和前进速度;
响应于获得处理任务的执行结果、数据量、等待时间、和前进速度,而使用动态优先级算法确定处理任务的运行顺序和排队顺序;
响应于确定处理任务的运行顺序和排队顺序而据此在下一个周期调整处理任务。
为更清晰的说明本发明的具体实施过程,下面以具体实施例来进一步阐述本发明的具体实施方式。
图2所示出的是自动模式下的逻辑示意图。如图2所示,选择自动模式开始运行NIFI任务时,集群内存资源监控模块及组件会为每个任务分配一定比例的内存供其开启任务,任务开始运行,集群任务运行监控模块会实时监控每个组件的任务,当NIFI任务数据量突然增大需要更多内存时,集群内存资源监控模块会动态非线性的调整NIFI的最大可用内存值,调整一定比例时,会综合集群其它组件的任务运行,会减缓或暂停为NIFI动态调整内存。而在NIFI内部,NIFI内存优化分配模块,会随时把调整后的内存纳入管理范围,根据周期性优先级执行策略,高效利用资源和完成任务。
集群内存资源监控模块设置组件优先调整可用内存值的参数,该参数值分为true和false,设置true时,当有更多内存资源可分配时,优先被分配,设置false时,没有优先资格。
当NIFI某个或多个正在运行任务的数据量突然增大或处理复杂数据需要更多内存时,首先会占用NIFI已经拥有的内存来完成任务,设置增量阈值,即使用值已超过目前可用值的95%,超过阈值,则判定需要更多的内存资源,若设置100%,则直接造成任务失败。
集群任务运行监控模块检测到NIFI内存使用超过阈值,判定需要调整内存值,则修改NIFI的组件优先调整可用内存值的参数为true,集群内存资源监控模块会根据目前集群资源的使用情况动态调整NIFI内存值。
集群内存资源监控模块动态调整NIFI可用内存值,依据一定规范。当调整增加量在最初值的30%以内,根据任务运行状况,增加速度最快;当调整增加量在最初值的30%-50%时,根据任务运行状况,增加速度放缓;当调整增加量在最初值的50%-80%时,根据任务运行状况,增加速度非常慢。
设置动态调整的最高比例,达到时,停止动态调整,此时NIFI可用内存值达到最大。
集群任务运行监控模块监控到NIFI任务运行内存需求量减少,会向集群内存资源监控模块发出请求,集群内存资源监控模块动态降低NIFI可用内存值。
根据集群任务运行监控模块的情况,集群内存资源监控模块会自适应调整AEP内存本身的模式策略,可以将混合模式中内存比例增大或减小,使AEP内存能动态配合集群任务的运行。
图3所示出的是手动模式下的逻辑示意图。如图3所示,选择手动模式执行NIFI任务时,NIFI内存优化分配模块,周期性优先级执行策略介入,根据动态优先级算法确定任务的运行及排队顺序,每执行一个周期的时间,根据任务的执行结果、数据量、等待时间及前进速度等,当前顺序和优先级会进行调整,并重新执行。
T(r,s,p,v)=Com(m,wt,dt,…)
其中,T代表任务、r代表当前顺序、s代表目前的运行状态(包含两种:运行running、等待waiting)、p代表优先级(可分为三种:低、中、高)、v代表前进速度、Com指代周期性优先级执行策略、数据量m、任务等待时间wt、处理数据时间dt等。前进速度v是指每一个执行周期结束之后,任务T的优先级p可以在顺序上向前移动的位数。
当一个任务在执行若干个周期后,仍然没有执行完,但是优先级被调低,处于等待状态,处于等待状态的任务可手动调整前进速度和优先级,使该任务能更快的重新执行。这样,使NIFI内存一直处于高效地完成一个或多个任务的状态,当有紧急任务需要执行时,可在下一个执行周期快速开始。
从上述实施例可以看出,本发明实施例提供的实时数据处理方法,通过确定实时数据处理启用手动模式或自动模式执行内存处理任务;响应于启用自动模式,而为每个处理任务分配预定数量的内存以启动处理任务;响应于处理任务启动而周期性地监控处理任务,并响应于处理任务所需的内存不足而动态申请内存;响应于申请到内存而根据处理任务的优先级来选择性地将内存分配给提出动态申请的处理任务的技术方案,能够提高实时数据处理工作效率和内存利用,缩短响应时间并灵活调整和应对处理任务。
需要特别指出的是,上述实时数据处理方法的各个实施例中的各个步骤均可以相互交叉、替换、增加、删减,因此,这些合理的排列组合变换之于实时数据处理方法也应当属于本发明的保护范围,并且不应将本发明的保护范围局限在所述实施例之上。
基于上述目的,本发明实施例的第二个方面,提出了一种缩短响应时间并灵活调整和应对处理任务的实时数据处理装置的一个实施例。所述的实时数据处理装置包括:
处理器;和
存储器,存储有处理器可运行的程序代码,程序代码在被运行时执行以下步骤:
确定实时数据处理启用手动模式或自动模式执行内存处理任务;
响应于启用自动模式,而为每个处理任务分配预定数量的内存以启动处理任务;
响应于处理任务启动而周期性地监控处理任务,并响应于处理任务所需的内存不足而动态申请内存;
响应于申请到内存而根据处理任务的优先级来选择性地将内存分配给提出动态申请的处理任务。
在一些实施方式中,步骤还包括:监控处理任务的同时还分别判断每个处理任务的内存分配优先级。根据处理任务的优先级来选择性地将内存分配给处理任务包括:优先为内存分配优先级更高的处理任务分配内存,其中所述优先级基于以下至少之一而确定:任务的数据量、处理时间、和等待时间;
处理任务所需的内存不足包括:执行处理任务所需的内存小于可用最大内存与增量比例阈值之积,并且增量比例阈值小于1。响应于处理任务所需的内存不足而动态申请内存包括:响应于处理任务所需的内存小于可用最大内存与增量比例阈值之积,而调整优先可用内存参数使得在有更多内存资源可分配时为处理任务动态申请内存。
在一些实施方式中,步骤还包括:
响应于启用手动模式,而周期性地确定处理任务的执行结果、数据量、等待时间、和前进速度;
响应于获得处理任务的执行结果、数据量、等待时间、和前进速度,而使用动态优先级算法确定处理任务的运行顺序和排队顺序;
响应于确定处理任务的运行顺序和排队顺序而据此在下一个周期调整处理任务。
程序代码包括NIFI内存使用模式模块、NIFI内存优化分配模块、集群内存资源监控模块、和任务运行监控模块。
NIFI内存使用模式模块,设置两种选择,一种是自动模式,即NIFI可用内存最大值不固定,可由集群动态调节,另一种是手动模式,即默认模式,NIFI可使用内存设置为固定值。
NIFI内存优化分配模块,选择手动模式时,在可用的最大内存值内,通过任务优先级策略使NIFI高效使用内存资源和灵活调整任务运行。选择自动模式时,该模块会根据集群内存资源监控模块与任务运行监控模块的实时监控,动态调节NIFI可用的内存值,配合任务优先级策略,根据实际需要高效利用资源和执行任务。
集群内存资源监控模块,用来监控大数据集群内存的使用情况,监控每一个组件任务内存使用比例,设置组件优先调整可用内存值的参数,该参数只有true和false,设置true时,当有更多内存资源可分配时,优先被分配,设置false时,没有优先资格,该参数即组件获取资源优先级标签,为调高优先级的组件动态申请更多可使用的内存资源。为保证集群所有运行任务的正常执行,该参数由任务运行监控模块决定是否修改。集群内存资源监控模块,还可以决定AEP内存的模式,可调整的模式有内存模式、硬盘模式或混合模式。
任务运行监控模块,用来监控大数据集群任务运行状态、其中包括NIFI的任务运行状态,可以根据组件任务的数据量、处理时间和等待时间等参数,调整组件获取资源优先级标签,根据该标签集群内存资源监控模块动态调整组件内存资源。
从上述实施例可以看出,本发明实施例提供的实时数据处理装置,通过确定实时数据处理启用手动模式或自动模式执行内存处理任务;响应于启用自动模式,而为每个处理任务分配预定数量的内存以启动处理任务;响应于处理任务启动而周期性地监控处理任务,并响应于处理任务所需的内存不足而动态申请内存;响应于申请到内存而根据处理任务的优先级来选择性地将内存分配给提出动态申请的处理任务的技术方案,能够提高实时数据处理工作效率和内存利用,缩短响应时间并灵活调整和应对处理任务。
需要特别指出的是,上述实时数据处理装置的实施例采用了所述实时数据处理方法的实施例来具体说明各模块的工作过程,本领域技术人员能够很容易想到,将这些模块应用到所述实时数据处理方法的其他实施例中。当然,由于所述实时数据处理方法实施例中的各个步骤均可以相互交叉、替换、增加、删减,因此,这些合理的排列组合变换之于所述实时数据处理装置也应当属于本发明的保护范围,并且不应将本发明的保护范围局限在所述实施例之上。
以上是本发明公开的示例性实施例,但是应当注意,在不背离权利要求限定的本发明实施例公开的范围的前提下,可以进行多种改变和修改。根据这里描述的公开实施例的方法权利要求的功能、步骤和/或动作不需以任何特定顺序执行。此外,尽管本发明实施例公开的元素可以以个体形式描述或要求,但除非明确限制为单数,也可以理解为多个。
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本发明实施例公开的范围(包括权利要求)被限于这些例子;在本发明实施例的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,并存在如上所述的本发明实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。因此,凡在本发明实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本发明实施例的保护范围之内。
Claims (7)
1.一种实时数据处理方法,其特征在于,包括执行以下步骤:
确定实时数据处理启用手动模式或自动模式执行内存处理任务;
响应于启用自动模式,而为每个所述处理任务分配预定数量的内存以启动所述处理任务;
响应于所述处理任务启动而周期性地监控所述处理任务,并响应于所述处理任务所需的内存不足而动态申请内存;
响应于申请到内存而根据所述处理任务的优先级来选择性地将内存分配给提出动态申请的所述处理任务;
所述处理任务所需的内存不足包括:执行所述处理任务所需的内存小于可用最大内存与增量比例阈值之积,并且所述增量比例阈值小于1;
响应于所述处理任务所需的内存不足而动态申请内存包括:响应于所述处理任务所需的内存小于可用最大内存与增量比例阈值之积,而调整优先可用内存参数使得在有更多内存资源可分配时为所述处理任务动态申请内存;
所述方法还包括:动态申请内存的量小于原始总内存与第一比例阈值之积时,基于所述处理任务的运行情况以第一增长速度动态申请内存;动态申请内存的量大于原始总内存与第一比例阈值之积、且小于原始总内存与大于第一比例阈值的第二比例阈值之积时,基于所述处理任务的运行情况以小于第一增长速度的第二增长速度动态申请内存;动态申请内存的量大于原始总内存与第二比例阈值之积、且小于原始总内存与大于第二比例阈值的第三比例阈值之积时,基于所述处理任务的运行情况以小于第二增长速度的第三增长速度动态申请内存;
所述方法还包括:响应于动态申请内存的量大于原始总内存与第三比例阈值之积而停止申请任何额外的内存。
2.根据权利要求1所述的方法,其特征在于,还包括:监控所述处理任务的同时还分别判断每个所述处理任务的内存分配优先级;
根据所述处理任务的优先级来选择性地将内存分配给所述处理任务包括:优先为所述内存分配优先级更高的所述处理任务分配内存,其中所述优先级基于以下至少之一而确定:任务的数据量、处理时间、和等待时间。
3.根据权利要求1所述的方法,其特征在于,内存为AEP内存;方法还包括:基于所述处理任务的运行情况而动态调整AEP内存在内存模式、硬盘模式、或混合模式下工作、和/或动态调整在混合模式下工作的AEP内存的内存-硬盘比例。
4.根据权利要求1所述的方法,其特征在于,还包括:
响应于启用手动模式,而周期性地确定所述处理任务的执行结果、数据量、等待时间、和前进速度;
响应于获得所述处理任务的执行结果、数据量、等待时间、和前进速度,而使用动态优先级算法确定所述处理任务的运行顺序和排队顺序;
响应于确定所述处理任务的运行顺序和排队顺序而据此在下一个周期调整所述处理任务。
5.一种实时数据处理装置,其特征在于,包括:
处理器;和
存储器,存储有处理器可运行的程序代码,所述程序代码在被运行时执行以下步骤:
确定实时数据处理启用手动模式或自动模式执行内存处理任务;
响应于启用自动模式,而为每个所述处理任务分配预定数量的内存以启动所述处理任务;
响应于所述处理任务启动而周期性地监控所述处理任务,并响应于所述处理任务所需的内存不足而动态申请内存;
响应于申请到内存而根据所述处理任务的优先级来选择性地将内存分配给提出动态申请的所述处理任务;
所述处理任务所需的内存不足包括:执行所述处理任务所需的内存小于可用最大内存与增量比例阈值之积,并且所述增量比例阈值小于1;
响应于所述处理任务所需的内存不足而动态申请内存包括:响应于所述处理任务所需的内存小于可用最大内存与增量比例阈值之积,而调整优先可用内存参数使得在有更多内存资源可分配时为所述处理任务动态申请内存;
所述步骤还包括:动态申请内存的量小于原始总内存与第一比例阈值之积时,基于所述处理任务的运行情况以第一增长速度动态申请内存;动态申请内存的量大于原始总内存与第一比例阈值之积、且小于原始总内存与大于第一比例阈值的第二比例阈值之积时,基于所述处理任务的运行情况以小于第一增长速度的第二增长速度动态申请内存;动态申请内存的量大于原始总内存与第二比例阈值之积、且小于原始总内存与大于第二比例阈值的第三比例阈值之积时,基于所述处理任务的运行情况以小于第二增长速度的第三增长速度动态申请内存;
所述步骤还包括:响应于动态申请内存的量大于原始总内存与第三比例阈值之积而停止申请任何额外的内存。
6.根据权利要求5所述的装置,其特征在于,所述步骤还包括:监控所述处理任务的同时还分别判断每个所述处理任务的内存分配优先级;
根据所述处理任务的优先级来选择性地将内存分配给所述处理任务包括:优先为所述内存分配优先级更高的所述处理任务分配内存,其中所述优先级基于以下至少之一而确定:任务的数据量、处理时间、和等待时间。
7.根据权利要求5所述的装置,其特征在于,还包括:
响应于启用手动模式,而周期性地确定所述处理任务的执行结果、数据量、等待时间、和前进速度;
响应于获得所述处理任务的执行结果、数据量、等待时间、和前进速度,而使用动态优先级算法确定所述处理任务的运行顺序和排队顺序;
响应于确定所述处理任务的运行顺序和排队顺序而据此在下一个周期调整所述处理任务。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010988135.9A CN112130995B (zh) | 2020-09-18 | 2020-09-18 | 一种实时数据处理方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010988135.9A CN112130995B (zh) | 2020-09-18 | 2020-09-18 | 一种实时数据处理方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112130995A CN112130995A (zh) | 2020-12-25 |
CN112130995B true CN112130995B (zh) | 2023-01-06 |
Family
ID=73841384
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010988135.9A Active CN112130995B (zh) | 2020-09-18 | 2020-09-18 | 一种实时数据处理方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112130995B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113886029A (zh) * | 2021-10-15 | 2022-01-04 | 中国科学院信息工程研究所 | 一种跨地域分布数据中心任务调度方法及系统 |
CN114020461B (zh) * | 2021-11-03 | 2022-10-11 | 无锡沐创集成电路设计有限公司 | 内存分配方法、系统、存储介质及电子设备 |
CN116186142B (zh) * | 2023-03-08 | 2023-12-22 | 深圳欧税通技术有限公司 | 一种基于物联网的跨境税务数据服务管理系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106033371A (zh) * | 2015-03-13 | 2016-10-19 | 杭州海康威视数字技术股份有限公司 | 一种视频分析任务的调度方法及系统 |
CN107066332A (zh) * | 2017-01-25 | 2017-08-18 | 广东神马搜索科技有限公司 | 分布式系统及其调度方法和调度装置 |
CN108881495A (zh) * | 2018-08-13 | 2018-11-23 | 中国平安财产保险股份有限公司 | 资源分配方法、装置、计算机设备及存储介质 |
CN111475373A (zh) * | 2020-03-10 | 2020-07-31 | 中国平安人寿保险股份有限公司 | 微服务下的服务控制方法、装置、计算机设备及存储介质 |
-
2020
- 2020-09-18 CN CN202010988135.9A patent/CN112130995B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106033371A (zh) * | 2015-03-13 | 2016-10-19 | 杭州海康威视数字技术股份有限公司 | 一种视频分析任务的调度方法及系统 |
CN107066332A (zh) * | 2017-01-25 | 2017-08-18 | 广东神马搜索科技有限公司 | 分布式系统及其调度方法和调度装置 |
CN108881495A (zh) * | 2018-08-13 | 2018-11-23 | 中国平安财产保险股份有限公司 | 资源分配方法、装置、计算机设备及存储介质 |
CN111475373A (zh) * | 2020-03-10 | 2020-07-31 | 中国平安人寿保险股份有限公司 | 微服务下的服务控制方法、装置、计算机设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112130995A (zh) | 2020-12-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112130995B (zh) | 一种实时数据处理方法和装置 | |
CN107066332B (zh) | 分布式系统及其调度方法和调度装置 | |
CN111767134B (zh) | 一种多任务动态资源调度方法 | |
CN106557369B (zh) | 一种多线程的管理方法及系统 | |
US20160306680A1 (en) | Thread creation method, service request processing method, and related device | |
US10467054B2 (en) | Resource management method and system, and computer storage medium | |
WO2011139281A1 (en) | Workload performance control | |
US9037703B1 (en) | System and methods for managing system resources on distributed servers | |
CN110995617B (zh) | 基于mqtt的数据报送方法、装置、计算机设备和存储介质 | |
US8090903B2 (en) | Fair and dynamic disk input/output bandwidth distribution | |
CN112433881A (zh) | 一种分布式存储系统的数据恢复方法和装置 | |
CN111338803B (zh) | 一种线程处理方法和装置 | |
US20170344266A1 (en) | Methods for dynamic resource reservation based on classified i/o requests and devices thereof | |
CN113760549A (zh) | 一种pod部署方法及装置 | |
CN115033370B (zh) | 存储设备中闪存任务调度方法、装置、存储介质及设备 | |
CN105094945A (zh) | 虚拟化平台线程控制方法、设备和系统 | |
CN110955522B (zh) | 一种协调性能隔离和数据恢复优化的资源管理方法及系统 | |
CN114116068A (zh) | 服务启动优化方法、装置、电子设备和可读存储介质 | |
CN111858060A (zh) | 一种高性能计算集群的资源动态调整方法和装置 | |
CN112395063A (zh) | 一种动态多线程调度方法及系统 | |
CN108255820B (zh) | 分布式系统中数据入库的方法、装置以及电子设备 | |
CN112804757B (zh) | 一种频域资源分配类型的切换方法、装置及可读存储介质 | |
CN111711582B (zh) | 基于机房系统的传输机处理方法、系统和存储介质 | |
CN116431335B (zh) | 一种基于控制组的容器消息队列资源配额控制方法 | |
CN111711688A (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 |