CN112905336A - 数据采集方法、装置、设备及存储介质 - Google Patents
数据采集方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN112905336A CN112905336A CN202110159659.1A CN202110159659A CN112905336A CN 112905336 A CN112905336 A CN 112905336A CN 202110159659 A CN202110159659 A CN 202110159659A CN 112905336 A CN112905336 A CN 112905336A
- Authority
- CN
- China
- Prior art keywords
- acquisition
- task
- data
- execution device
- collection
- 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/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
- 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- 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/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- 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/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/48—Indexing scheme relating to G06F9/48
- G06F2209/484—Precedence
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/54—Indexing scheme relating to G06F9/54
- G06F2209/548—Queue
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
技术领域
本发明涉及数据处理领域,尤其涉及一种数据采集方法、装置、设备及存储介质。
背景技术
为了保证设备安全、维护设备运营、进行数据分析等,通常需要采集数据。
随着数据采集内容的增多、数据采集的方式不同、数据采集需求不同,数据采集难度越来越大,所需要的资源也越来越多。
但是目前,数据采集过于集中、资源利用不充分,导致数据采集任务执行效率不高。
发明内容
本发明的主要目的在于提供一种数据采集方法、装置、设备及存储介质,旨在解决现有数据采集过于集中、资源利用不充分,导致数据采集任务执行效率不高的问题。
为实现上述目的,本发明提供一种数据采集方法,应用于采集控制装置,所述采集控制装置与至少一个采集执行装置连接,所述数据采集方法包括:
检测总任务队列,以获取所述总任务队列中采集任务的任务状态信息;
根据所述任务状态信息,判断是否满足预设资源扩容条件;
若是,向至少一个所述采集执行装置发送第一资源调度指令,以使所述采集执行装置根据所述第一资源调度指令,调度空闲资源,并利用所述空闲资源执行采集任务。
可选的,所述检测总任务队列,以获取所述总任务队列中采集任务的任务状态信息的步骤之后,所述数据采集方法还包括:
根据所述任务状态信息,判断是否满足预设资源缩减条件;
若是,向满足预设第二条件的采集执行装置发送第二资源调度指令,以使所述采集执行装置根据所述第二资源调度指令,释放用于执行采集任务的资源。
可选的,所述根据所述任务状态信息,判断是否满足预设资源扩容条件的步骤,包括:
根据所述任务状态信息,判断是否存在待执行采集任务;
所述根据所述任务状态信息,判断是否满足预设资源缩减条件的步骤,包括:
根据所述任务状态信息,判断所述总任务队列中的采集任务是否均执行完毕。
可选的,所述若是,向至少一个所述采集执行装置发送第一资源调度指令的步骤,包括:
若是,根据各所述采集执行装置的负载状态,向负载最小的采集执行装置发送第一资源调度指令;
或,
若是,根据各所述采集执行装置的负载状态,向负载小于预设负载阈值的采集执行装置发送第一资源调度指令;
所述若是,向满足预设第二条件的采集执行装置发送第二资源调度指令,以使所述采集执行装置根据所述第二资源调度指令,释放用于执行采集任务的资源的步骤,包括:
若是,向采集任务均执行完毕、且虚拟运行环境数超过预设默认值的采集执行装置,发送第二资源调度指令,以使所述采集执行装置根据所述第二资源调度指令,释放虚拟运行环境,所述虚拟运行环境用于执行采集任务。
可选的,所述检测总任务队列,以获取所述总任务队列中采集任务的任务状态信息的步骤之前,所述数据采集方法还包括:
接收采集任务的配置信息;
根据所述配置信息,生成采集任务;
判断所述采集任务是否满足预设拆分条件;
若是,将所述采集任务拆分为至少两个采集子任务;
将所述采集子任务放入所述总任务队列中。
此外,为实现上述目的,本发明还提出一种数据采集方法,应用于采集执行装置,所述采集执行装置与采集控制装置连接,所述数据采集方法包括:
接收第一资源调度指令,所述第一资源调度指令为所述采集控制装置在总任务队列中采集任务的任务状态信息满足预设资源扩容条件时发送的;
根据所述第一资源调度指令,调度空闲资源;
利用所述空闲资源,执行采集任务。
可选的,所述根据所述第一资源调度指令,调度空闲资源,用于执行采集任务的步骤,包括:
根据所述第一资源调度指令,调度空闲资源,以创建新的虚拟运行环境;
所述利用所述空闲资源,执行采集任务的步骤,包括:
从所述任务总队列中,获取待执行的采集任务放入所述新的虚拟运行环境的任务子队列中;
按照采集任务的优先级,从所述任务子队列中,获取待执行采集任务,并在所述新的虚拟运行环境中执行。
此外,为实现上述目的,本发明还提出一种数据采集装置,应用于采集控制装置,所述采集控制装置与至少一个采集执行装置连接,所述数据采集装置包括:
检测模块,用于检测总任务队列,以获取所述总任务队列中采集任务的任务状态信息;
判断模块,用于根据所述任务状态信息,判断是否满足预设资源扩容条件;
发送模块,用于若是,向至少一个所述采集执行装置发送第一资源调度指令,以使所述采集执行装置根据所述第一资源调度指令,调度空闲资源,并利用所述空闲资源执行采集任务。
此外,为实现上述目的,本发明还提出一种数据采集设备,所述数据采集设备包括:存储器、处理器及存储在所述存储器上并在所述处理器上运行的第一数据采集程序或第二数据采集程序,所述第一数据采集程序被所述处理器执行时实现前述数据采集方法中,采集控制装置侧的步骤;所述第二数据采集程序被所述处理器执行时实现前述数据采集方法中,采集执行装置侧的步骤。
此外,为实现上述目的,本发明还提出一种存储介质,其特征在于,所述存储介质上存储有第一数据采集程序或第二数据采集程序,所述第一数据采集程序被所述处理器执行时实现前述数据采集方法中,采集控制装置侧的步骤;所述第二数据采集程序被所述处理器执行时实现前述数据采集方法中,采集执行装置侧的步骤。
本发明提供的技术方案,应用于包括采集控制装置和采集执行装置的数据采集系统,通过采集控制装置检测总任务队列,以获取总任务队列中采集任务的任务状态信息;根据任务状态信息,判断是否满足预设资源扩容条件;若是,向至少一个采集执行装置发送第一资源调度指令,以使采集执行装置根据接收到的第一资源调度指令,调度空闲资源,并利用空闲资源执行采集任务,这样,在采集任务过多的时候,通过调度空闲资源用于执行采集任务,实现了采集资源的扩容,从而充分利用资源,提高了采集任务的执行效率。
附图说明
图1是本发明实施例方案涉及的硬件运行环境的数据采集设备结构示意图;
图2为本发明数据采集方法第一实施例的流程示意图;
图3为本发明数据采集方法第二实施例的流程示意图;
图4为本发明数据采集方法第三实施例的流程示意图;
图5为本发明数据采集方法第五实施例的流程示意图;
图6为本发明数据采集装置第一实施例的结构框图;
图7为本发明数据采集装置第二实施例的结构框图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
参照图1,图1为本发明实施例方案涉及的硬件运行环境的数据采集设备结构示意图。
数据采集设备可以是移动电话、智能电话、笔记本电脑、数字广播接收器、个人数字助理(PDA)、平板电脑(PAD)等用户设备(User Equipment,UE)、手持设备、车载设备、可穿戴设备、计算设备、监控设备、计算机设备或连接到无线调制解调器的其它处理设备、移动台(Mobile station,MS)等。
通常,数据采集设备包括:至少一个处理器101、存储器102以及存储在所述存储器上并可在所述处理器上运行的第一数据采集程序或第二数据采集程序,所述第一数据采集程序配置为实现如下任一实施例所述的数据采集方法中,采集控制装置侧的步骤;所述第二数据采集程序配置为实现如下任一实施例所述的数据采集方法中,采集执行装置侧的步骤。
处理器101可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器101可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器101也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(CentralProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器101可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。处理器101还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关数据采集方法操作,使得数据采集方法模型可以自主训练学习,提高效率和准确度。
存储器102可以包括一个或多个存储介质,该存储介质可以是非暂态的。存储器102还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器102中的非暂态的存储介质用于存储至少一个指令,该至少一个指令用于被处理器101所执行以实现本申请中方法实施例提供的数据采集方法。
在一些实施例中,数据采集设备还可选包括有:通信接口103和至少一个外围设备。处理器101、存储器102和通信接口103之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与通信接口103相连。具体地,外围设备包括:射频电路104、显示屏105和电源106中的至少一种。
通信接口103可被用于将I/O(Input/Output,输入/输出)相关的至少一个外围设备连接到处理器101和存储器102。在一些实施例中,处理器101、存储器102和通信接口103被集成在同一芯片或电路板上;在一些其他实施例中,处理器101、存储器102和通信接口103中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
射频电路104用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路104通过电磁信号与通信网络以及其他通信设备进行通信。射频电路104将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路104包括:天线系统、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路104可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:城域网、各代移动通信网络(2G、3G、4G及5G)、无线局域网和/或WIFI(Wireless Fidelity,无线保真)网络。在一些实施例中,射频电路104还可以包括NFC(Near Field Communication,近距离无线通信)有关的电路,本申请对此不加以限定。
显示屏105用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏105是触摸显示屏时,显示屏105还具有采集在显示屏105的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器101进行处理。此时,显示屏105还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏105可以为一个,电子设备的前面板;在另一些实施例中,显示屏105可以为至少两个,分别设置在电子设备的不同表面或呈折叠设计;在再一些实施例中,显示屏105可以是柔性显示屏,设置在电子设备的弯曲表面上或折叠面上。甚至,显示屏105还可以设置成非矩形的不规则图形,也即异形屏。显示屏105可以采用LCD(LiquidCrystal Display,液晶显示屏)、OLED(Organic Light-Emitting Diode,有机发光二极管)等材质制备。
电源106用于为电子设备中的各个组件进行供电。电源106可以是交流电、直流电、一次性电池或可充电电池。当电源106包括可充电电池时,该可充电电池可以支持有线充电或无线充电。该可充电电池还可以用于支持快充技术。本领域技术人员可以理解,图1中示出的结构并不构成对数据采集设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
此外,本发明实施例还提出一种存储介质,所述存储介质上存储有第一数据采集程序或第二数据采集程序,所述第一数据采集程序被处理器执行时实现如下文任一实施例所述的数据采集方法中,采集控制装置侧的步骤;所述第二数据采集程序被处理器执行时实现如下文任一实施例所述的数据采集方法中,采集执行装置侧的步骤。因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本申请所涉及的存储介质实施例中未披露的技术细节,请参照本申请方法实施例的描述。确定为示例,程序指令可被部署为在一个计算设备上执行,或者在位于一个地点的多个计算设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算设备上执行。
本领域普通技术人员可以理解实现下文任一实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述数据采集程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如下述各方法的实施例的流程。其中,上述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(RandomAccessMemory,RAM)等。
基于上述硬件结构,提出本发明的各实施例。
数据采集方法实施例:
参照图2,图2为本发明数据采集方法第一实施例的流程示意图。本发明实施例中,数据采集方法包括以下步骤:
步骤S21:采集控制装置检测总任务队列,以获取总任务队列中采集任务的任务状态信息。
需要说明的是,本发明实施例的数据采集方法应用于数据采集系统,数据采集系统包括采集控制装置和至少一个采集执行装置,采集控制装置与采集执行装置连接。采集控制装置用于控制采集执行装置,采集执行装置用于提供资源以执行采集任务,本发明实施例中,将用于执行采集任务的资源记为采集资源。
采集控制装置中,设置有总任务队列,总任务队列中,包括各种采集任务以及各采集任务的任务状态信息,其中,任务状态信息包括已执行、待执行、执行进度等中的至少一种,任务状态信息还可以包括锁定状态,其中,锁定状态用于表明该采集任务是否被采集执行装置锁定,若采集任务已被某一采集执行装置锁定,则其他采集执行装置无法再锁定该采集任务,从而避免同一采集任务被两个采集执行装置执行,浪费资源的情况;各种采集任务包括但不限于各采集执行装置对应的已执行采集任务、待执行采集任务、执行中采集任务等中的至少一种。
本发明实施例中,采集控制装置在运行过程中,检测总任务队列,以获取总任务队列中采集任务的任务状态信息。
在一些实施方式中,采集控制装置可以实时检测总任务队列,以获取总任务队列中采集任务的任务状态信息;或者,也可以定时检测总任务队列,以获取总任务队列中采集任务的任务状态信息。
在一些实施方式中,采集控制装置可以包括可视化界面,用于提供任务查询服务,用户可以通过可视化界面,查询总任务队列中,各采集任务的执行情况等。
步骤S22:采集控制装置根据任务状态信息,判断是否满足预设资源扩容条件。
在运行过程中,由于采集任务突然增多、运行卡顿等原因,使得待执行采集任务较多,采集资源不足,从而导致采集任务执行效率不高的情况。因此,为了避免这种情况,本发明实施例中,采集控制装置根据检测到的任务状态信息,判断是否满足预设资源扩容条件。
其中,预设资源扩容条件可以根据实际需要灵活设置。
在一些实施方式中,预设资源扩容条件可以是:总任务队列中,存在待执行的采集任务;步骤S22包括:根据任务状态信息,判断总任务队列中,是否存在待执行的采集任务。
在一些实施方式中,预设资源扩容条件可以是:总任务队列中,待执行的采集任务的数量超过预设待执行阈值;步骤S22包括:根据任务状态信息,判断总任务队列中,待执行采集任务的数量是否超过预设待执行阈值。其中,预设待执行阈值可以根据实际需要灵活设置,例如,可以设置为5个、6个等。在一个示例中,假设待执行阈值为8,则在总任务队列中,待执行采集任务的个数超过8时,判定满足预设资源扩容条件。
在一些实施方式中,包括至少两个采集执行装置,为了提高判断的准确性,预设资源扩容条件可以是:总任务队列中,存在待执行的采集任务,且负载最小的采集执行装置满足预设资源扩容子条件。步骤S22可以包括:
步骤S221:根据任务状态信息,判断总任务队列中,是否存在待执行的采集任务。
步骤S222:若是,根据各采集执行装置的负载状态,判定是否满足预设资源扩容子条件。
若总任务队列中,存在待执行的采集任务,则在一定程度上表明采集资源不足;为了更加准确的判断采集资源是否不足,获取各采集执行装置的负载状态,根据各采集执行装置的负载状态,判定是否满足预设资源扩容子条件,若是,则转步骤S23。
其中,采集控制装置可以定时获取各采集执行装置的负载状态并存储,在判定存在待执行的采集任务时,采集控制装置根据本端存储的各采集执行装置的负载状态,判定是否满足预设资源扩容子条件。或者,采集控制装置也可以在判定存在待执行的采集任务时,才获取各采集执行装置的负载状态,根据各采集执行装置的负载状态,判定是否满足预设资源扩容子条件。
采集执行装置的负载状态包括但不限于采集执行装置的CPU(centralprocessing unit,中央处理器)占用率、内存占用率、已创建的虚拟运行环境数量等信息中的至少一种。虚拟运行环境用于执行采集任务,即采集资源可以是虚拟运行环境。
需要说明的是,资源扩容子条件可以根据实际需要灵活设置。
在一些实施方式中,资源扩容子条件可以是:负载最小的采集执行装置中,采集资源的使用率达到上限。则步骤S222包括:若是,根据各采集执行装置的负载状态,确定负载最小的采集执行装置;判断负载最小的采集执行装置的采集资源的使用率,是否达到上限。
其中,采集资源的使用率可以包括采集资源的采集任务实例数、采集资源的CPU占有率、采集资源的内存占用率等中的至少一种,不同的参数,其对应的上限值不同。其中,采集任务实例为执行采集任务的实例,需要说明的是,一个采集任务实例同时只执行一个采集任务。
当采集资源的使用率包括一种参数时,则可以在这种参数达到对应的上限值时,判定采集资源的使用率达到上限。当采集资源的使用率包括至少两种参数时,可以在这至少两种参数均达到对应的上限值时,判定采集资源的使用率达到上限;也可以在存在一种参数达到对应的上限值时,判定采集资源的使用率达到上限。
在一个示例中,由于采集资源为虚拟运行环境,因此,采集资源的使用率可以是虚拟运行环境的使用率,其可以包括:虚拟运行环境的采集任务实例数、虚拟运行环境的CPU占有率、虚拟运行环境的内存占用率等中的至少一种。
当负载最小的采集执行装置包括一个虚拟运行环境时,判断负载最小的采集执行装置的采集资源的使用率,是否达到上限的步骤可以包括:判断负载最小的采集执行装置的虚拟运行环境的使用率是否达到上限。
当负载最小的采集执行装置包括至少两个虚拟运行环境时,判断负载最小的采集执行装置的采集资源的使用率,是否达到上限的步骤可以包括:判断负载最小的采集执行装置中,是否存在至少一个虚拟运行环境的使用率达到上限。为了更好的理解,此处以一个示例进行说明,假设采集执行装置的负载状态为虚拟运行环境的数量;采集资源的使用率为虚拟运行环境的采集任务实例数,数据采集系统包括2个采集执行装置,第一采集执行装置中,虚拟运行环境的数量为5,第二采集执行装置中,虚拟运行环境的数量为1,则负载最小的采集执行装置为第二采集执行装置;假设第二采集执行装置中,第一个虚拟运行环境和第二虚拟运行环境的采集任务实例数上限值均为6,第二采集执行装置中,第一个虚拟运行环境的采集任务实例数为4,第二个虚拟运行环境的采集任务实例数为9,由于存在虚拟运行环境的占用率达到上限,因此,满足预设资源扩容子条件。
当负载最小的采集执行装置包括至少两个虚拟运行环境时,判断负载最小的采集执行装置的采集资源的使用率,是否达到上限的步骤可以包括:判断负载最小的采集执行装置中,是否所有虚拟运行环境的使用率均达到上限。
需要说明的是,本发明实施例中,预设资源扩容条件包括但不限于上述三种方式。
步骤S23:若是,采集控制装置向至少一个采集执行装置发送第一资源调度指令。
本发明实施例中,若满足预设资源扩容条件,表明采集资源不足,为了提升采集任务执行效率,在判定满足预设资源扩容条件时,采集控制装置向至少一个采集执行装置发送第一资源调度指令,以使采集执行装置根据第一资源调度指令,调度空闲资源用于执行采集任务,实现采集资源的扩容。
在一些实施方式中,为了避免资源的调度影响采集控制装置上原有的业务,采集控制装置可以根据各采集执行装置的负载状态,从满足预设第一条件的采集执行装置发送第一资源调度指令。其中,预设第一条件可以根据实际需要灵活设置。
例如,在一些实施方式中,为了避免无空闲资源、或空闲资源太少、占用之后对原有业务造成影响的情况,预设第一条件可以是负载小于预设负载阈值的采集执行装置。其中,预设负载阈值可以根据实际需要灵活设置。例如,在一个示例中,负载状态可以是内存占用率,负载状态阈值可以是20%,则向内存占用率小于20%的采集执行装置发送第一资源调度指令。
在一些实施方式中,由于负载最小的采集执行装置中,空闲资源最多,因此,预设第一条件可以是负载最小的采集执行装置。例如,在一个示例中,负载状态可以是CPU占用率,则根据各采集执行装置的CPU占用率,向CPU占用率最小的采集执行装置发送第一资源调度指令。
步骤S24:采集执行装置根据第一资源调度指令,调度空闲资源。
接收到第一资源调度指令的采集执行装置,根据第一资源调度指令,调度空闲资源,用于执行采集任务,从而增加了采集资源。
在一些实施方式中,第一资源调度指令中,可以包括资源调度量(例如,调度的内存大小等),采集执行装置可以根据资源调度量,调度对应的空闲资源。
在一些实施方式中,采集执行装置可以根据第一资源调度指令,调度空闲资源,以创建新的虚拟运行环境。
其中,第一资源调度指令可以包括新增虚拟运行环境的个数、虚拟运行环境所占用的资源大小(例如,虚拟运行环境所占用的CPU大小、内存大小等)。
步骤S25:采集执行装置利用空闲资源,执行采集任务。
在调度空闲资源之后,采集执行装置可以利用空闲资源,执行采集任务。
在一些实施方式中,步骤S25包括:
步骤S251:采集执行装置从任务总队列中,获取待执行的采集任务放入新的虚拟运行环境的任务子队列中。
本发明实施例中,每一虚拟运行环境配置有对应的任务子队列。新的虚拟运行环境也配置有任务子队列。在创建新的虚拟运行环境之后,该虚拟运行环境的任务子队列中,不存在采集任务,因此,采集执行装置可以从任务子队列中,锁定待执行的采集任务,从采集控制装置处下载锁定的采集任务的采集脚本,并将锁定的采集任务放入该新的虚拟运行环境的任务子队列中。
在一些实施方式中,步骤S251之前,数据采集方法还可以包括:采集执行装置初始化新的虚拟运行环境的参数。其中,虚拟运行环境的参数包括采集任务脚本的存放位置、分配给该虚拟运行环境的CPU、分配给该虚拟运行环境的内存、该虚拟运行环境的采集任务实例数阈值等中的至少一种。
步骤S252:采集执行装置按照采集任务的优先级,从任务子队列中,获取待执行采集任务,并在新的虚拟运行环境中执行。
在一些实施方式中,为不同的采集任务配置了不同的优先级,采集执行装置可以按照采集任务的优先级,从新的虚拟运行环境的任务子队列中,获取待执行的采集任务,并在虚拟运行环境中,执行该待执行的采集任务的任务脚本,从而执行该待执行采集任务。
本发明实施例提供的数据采集方法,应用于包括采集控制装置和至少一个采集执行装置的数据采集系统,通过采集控制装置检测总任务队列,以获取总任务队列中采集任务的任务状态信息;根据任务状态信息,判断是否满足预设资源扩容条件;若是,向至少一个采集执行装置发送第一资源调度指令,以使采集执行装置根据接收到的第一资源调度指令,调度空闲资源,并利用空闲资源执行采集任务,这样,在采集任务过多的时候,通过调度空闲资源用于执行采集任务,实现了采集资源的扩容,从而充分利用资源,提高了采集任务的执行效率。
基于前述实施例,提出本发明数据采集方法第二实施例。本发明实施例中,参见图3所示,步骤S21之前,数据采集方法还可以包括以下步骤:
步骤S26:采集控制装置接收采集任务的配置信息。
采集任务的配置信息包括但不限于:数据来源信息、目标数据源信息、采集周期、采集方式、数据映射关系、数据解析脚本、优先级等中的至少一个。其中,数据来源为待采集数据的来源,目标数据源为数据采集后的存储位置,数据映射关系为数据输入字段和数据输出字段之间的映射关系。
本发明实施例中,采集控制装置可以接收采集任务的配置信息。
在一些实施方式中,可以设置采集任务配置界面,用户可以在采集任务配置界面输入采集任务的配置信息,采集控制装置可以通过采集任务配置界面,接收用户输入的采集任务的配置信息。
在一些实施方式中,步骤S26包括:
步骤S261:采集控制装置接收采集任务的基本配置信息。
其中,基本配置信息包括但不限于任务名、优先级、执行计划、任务并发数、采集速率等。
本发明实施例中,在采集任务配置界面,可以显示基本配置信息输入框/选择框,用户可以打开采集任务配置界面,在采集任务配置界面,设置采集任务的基本配置信息,采集控制装置接收采集任务的基本配置信息。
步骤S262:采集控制装置接收采集任务的数据来源信息。
其中,数据来源信息可以包括数据来源的地址(即读取数据的地址)、读取数据插件等。其中,读取数据插件用于从数据来源读取数据。
在一些实施方式中,可以预先设置不同的读取数据插件,用户可以从预先设置的读取数据插件中,选择对应的读取数据插件,作为数据来源信息。
在一些实施方式中,接收数据来源信息之后,可以先对数据来源信息进行校验,在校验通过之后,转步骤S263。其中,校验方式可以根据实际需要灵活设置。在一个示例中,校验方式可以是:根据数据来源信息访问数据来源,以判断数据来源信息是否正确。
步骤S263:采集控制装置接收采集任务的目标数据源信息。
其中,目标数据源信息可以包括数据采集后的存储地址(即写入数据的地址)、写入数据插件等。其中,写入数据插件用于将数据写入目标数据源。
在一些实施方式中,可以预先设置不同的写入数据插件,用户可以从预先设置的写入数据插件中,选择对应的写入数据插件,作为目标数据源信息。
在一些实施方式中,接收目标数据源信息之后,可以先对目标数据源信息进行校验,在校验通过之后,转步骤S264。其中,校验方式可以根据实际需要灵活设置。在一个示例中,校验方式可以是:根据目标数据源信息访问目标数据源,以判断目标数据源信息是否正确。
步骤S264:采集控制装置接收数据映射关系。
在接收目标数据源信息后,采集控制装置可以接收数据映射关系。
在一些实施方式中,为了避免配置信息不合法,导致采集任务无法执行,步骤S26之后,还可以包括:对接收到的配置信息进行校验,若校验通过,则转步骤S27,若校验失败,可以提示用户重新输入。
步骤S27:采集控制装置根据配置信息生成采集任务,并将采集任务放入总任务队列中。
本发明实施例中,在接收到采集任务的配置信息之后,采集控制装置可以根据配置信息生成采集任务和采集任务脚本,将采集任务放入总任务队列中。
在一些实施方式中,为了避免某一采集任务所需资源过大,影响采集任务的执行效率,步骤S27可以包括:
步骤S271:采集控制装置根据配置信息生成采集任务。
其中,生成方式可以根据实际需要灵活设置。
步骤S272:采集控制装置判断采集任务是否满足预设拆分条件。
其中,预设拆分条件可以根据实际需要灵活设置。
在一些实施方式中,预设拆分条件为:带时间参数的SQL(Structured QueryLanguage,结构化查询语言)或elasticsearch读取任务。则判断采集任务是否为带时间参数的SQL读取任务,或带时间参数的elasticsearch读取任务,其中,时间参数可以是数据采集的时间等。需要说明的是,Elasticsearch是一个基于Lucene(全文搜索引擎)的搜索服务器,它提供了一个分布式多用户能力的全文搜索引擎。
步骤S273:若是,采集控制装置将采集任务拆分为至少两个采集子任务。
其中,拆分方式可以根据实际需要灵活设置。
在一个示例中,假设预设拆分条件为:带时间参数的SQL(Structured QueryLanguage,结构化查询语言)或elasticsearch读取任务;则可以按照配置的时间字段,对采集任务进行拆分,以得到多个采集子任务,例如,假设采集任务为:在11:30-12:00,22:00-24:00,分别从SQL中读取数据,则可以将采集任务拆分为两个采集子任务:在11:30-12:00从SQL中读取数据,在22:00-24:00从SQL中读取数据。
步骤S274:采集控制装置将采集子任务放入总任务队列中。
将采集任务拆分为至少两个采集子任务后,则将拆分得到的采集子任务放入总任务队列中。
在一些实施方式中,将采集任务拆分为至少两个采集子任务后,可以先生成采集子任务的采集脚本,再将采集子任务放入总任务队列中。
步骤S275:若否,采集控制装置直接将采集任务放入总任务队列中。
若采集任务不满足预设拆分条件,则可以直接将采集任务放入总队列中。
在一些实施方式中,将采集任务放入总队列之前,还可以生成该采集任务的采集脚本,再将采集任务放入总任务队列中。
本发明实施例提供的数据采集方法,采集控制装置接收采集任务的配置信息,根据配置信息生成采集任务,并将采集任务放入总任务队列中,从而实现了采集任务的配置,用户可以方便、快捷的配置采集任务;进一步地,当配置的采集任务满足预设拆分条件时,会将采集任务拆分为至少两个采集子任务放入任务总队列中,从而可以使大颗粒的采集任务拆分为小颗粒的采集任务,分散到不同的采集资源中进行执行,从而提升采集任务的完成效率,降低其他采集任务的等待时间。
基于第二实施例,提出本发明数据采集方法第三实施例。本发明实施例中,由于在配置采集任务时,需要设置采集插件(需要说明的是,采集插件包括读取数据插件和写入数据插件),不同的采集插件,对应的数据不同,参见图4所示,步骤S26之前,数据采集方法还包括以下步骤:
步骤S28:采集控制装置接收采集插件读写类型选择指令。
应当理解的是,采集插件读写类型包括读取数据插件和写入数据插件,用户可以选择配置读取数据插件或写入数据插件,采集控制装置接收用户下发的采集插件读写类型选择指令。
在一些实施方式中,可以设置采集插件配置界面,作为用户配置采集插件的接口。
步骤S29:采集控制装置接收采集插件类型选择指令。
本发明实施例中,预先设置有不同类型的读取数据插件和写入数据插件。在接收到采集插件读写类型选择指令后,可以根据选择的采集插件读取类型,将对应的不同类型的采集插件进行显示,以供用户选择。例如,假设在步骤S27中,用户选择的是读取数据插件,则将预先设置的不同类型的读取数据插件进行显示,以供用户选择,采集控制装置接收用户下发的采集插件类型选择指令。
其中,采集插件的类型为待读取或写入的数据对应的类型,其包括但不限于mysql(关系型数据库管理系统)、SQL Server、kafka、hdfs(Hadoop Distributed File System,分布式文件系统)、hbase(Hadoop Database)、folder(文件夹)、elasticsearch、syslog(系统日志)、snmp(简单网络管理协议)等。需要说明的是,SQL Server是由Microsoft(微软)开发和推广的关系数据库管理系统。Kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者在网站中的所有动作流数据。hbase一个分布式的、面向列的开源数据库,是一个高可靠性、高性能、面向列、可伸缩的分布式存储系统。
步骤S30:采集控制装置接收采集插件的配置数据。
用户在选择采集插件的类型之后,可以进一步配置采集插件的相关数据,采集控制设备进一步接收采集插件的配置数据。其中,采集插件的配置数据为该采集插件所需的数据,包括但不限于账号、密码、IP(Internet Protocol,网际互连协议)地址、端口、角色、认证文件等中的至少一种。
步骤S31:采集控制装置对采集插件的配置数据进行校验。
本发明实施例中,在接收到采集插件的数据配置信息之后,为了避免配置数据错误、不可用等情况,采集控制装置可以对采集插件的数据进行校验。校验方式可以根据实际需要灵活设置。在一个示例中,可以进行链接测试,例如,可以测试配置数据中的IP地址是否可以访问。
步骤S32:校验通过之后,采集控制装置保存采集插件的配置数据。
对采集插件的数据进行校验,并校验通过之后,采集控制装置可以保存采集插件的配置数据。其中,可以加密保存,以提升安全性,加密方式可以根据实际需要灵活设置。
这样,后续用户在配置采集任务时,可以直接从存储的采集插件中,选择对应的采集插件,从而获取到采集插件的配置数据,以提升采集任务的配置效率。
本发明实施例提供的数据采集方法,采集控制装置接收采集插件读写类型选择指令,接收采集插件类型选择指令,接收采集插件的配置数据,对采集插件的配置数据进行校验,校验通过之后,采集控制装置保存采集插件的配置数据,从而实现了采集插件的配置。
基于前述实施例,提出本发明数据采集方法第四实施例。本发明实施例中,步骤S21之后,数据采集方法还可以包括以下步骤:
步骤S33:采集控制装置根据任务状态信息,判断是否满足预设资源缩减条件。
在运行过程中,由于随着采集任务的执行,待执行的采集任务数量减少,使得用于数据采集的资源过多,从而资源浪费情况。因此,为了避免这种情况,本发明实施例中,采集控制装置根据检测到的任务状态信息,判断是否满足预设资源缩减条件。
其中,预设资源缩减条件可以根据实际需要灵活设置。
例如,在一些实施方式中,预设资源缩减条件可以是:总任务队列中,不存在待执行的采集任务。则步骤S33包括:采集控制装置根据任务状态信息,判断总任务队列中,是否不存在待执行的采集任务。
在一些实施方式中,预设资源缩减条件可以是:总任务队列中,所有的采集任务均执行完毕,即不存在待执行的采集任务和执行中的采集任务。则步骤S33包括:采集控制装置根据任务状态信息,判断总任务队列中的采集任务是否均执行完毕。
本发明实施例中,在步骤S21之后,可以同时执行步骤S22和步骤S33,也可以先执行步骤S22,在步骤S22的结果为否时,再执行步骤S33;或者,先执行步骤S33,在步骤S33的结果为否时,再执行步骤S22。
步骤S34:若是,采集控制装置向满足预设第二条件的采集执行装置发送第二资源调度指令。
其中,预设第二条件可以根据实际需要灵活设置。
在一些实施方式中,预设第二条件可以是:采集执行装置对应的采集任务执行完毕;则步骤S34包括:若是,采集控制装置向采集任务均执行完毕的采集执行装置,发送第二资源调度指令。其中,采集执行装置对应的采集任务为采集执行装置锁定的采集任务。
在一些实施方式中,为不同的采集执行装置配置了不同的虚拟运行环境默认值,预设第二条件可以是:虚拟运行环境的数量超过预设默认值的采集执行装置;则步骤S34包括:若是,采集控制装置向虚拟运行环境数量超过默认值的采集执行装置发送第二资源调度指令。
在一些实施方式中,预设第二条件可以是:采集执行装置对应的采集任务执行完毕,且虚拟运行环境的数量超过默认值的采集执行装置;则步骤S28包括:若是,采集控制装置向采集任务均执行完毕、虚拟运行环境数超过预设默认值的采集执行装置,发送第二资源调度指令。其中,可以先判断采集执行装置的采集任务是否均执行完毕,若是,再判断虚拟运行环境数是否预设超过默认值。
需要说明的是,本发明实施例中,预设第二条件包括但不限于上述三种示例。
本发明实施例中,若满足预设资源缩减条件,表明采集资源过多,为了充分利用资源,在判定满足预设资源缩减条件时,采集控制装置向满足预设第二条件的采集执行装置发送第二资源调度指令,以使采集执行装置根据所述第二资源调度指令,释放用于执行采集任务的资源,实现采集资源的弹性控制。
步骤S35:采集执行装置根据第二资源调度指令,释放用于执行采集任务的资源。
接收到第二资源调度指令的采集执行装置,根据第二资源调度指令,释放用于执行采集任务的资源。其中,采集执行装置可以释放用于执行采集任务的全部资源,也可以释放用于执行采集任务的部分资源。
在一些实施方式中,第二资源调度指令中,可以包括资源调度量(例如,调度的内存大小等),步骤S35包括:采集执行装置根据资源调度量,释放对应大小的采集资源。
在一些实施方式中,步骤S35包括:采集执行装置释放虚拟运行环境。其中,当虚拟运行环境数量超过默认值时,采集执行装置可以释放虚拟运行环境,以使剩余虚拟运行环境的个数为默认值。例如,假设采集执行装置包括5个虚拟运行环境,默认值为3个,则释放2个虚拟运行环境。
本发明实施例提供的数据采集方法,采集控制装置根据任务状态信息,判断是否满足预设资源缩减条件,若是,采集控制装置向满足预设第二条件的采集执行装置发送第二资源调度指令,采集执行装置根据第二资源调度指令,释放用于执行采集任务的资源,从而实现采集资源的缩减,以实现采集资源的弹性控制。
基于前述实施例,提出本发明数据采集方法第五实施例。本发明实施例中,参见图5所示,步骤S25之后,数据采集方法还包括:
步骤S36:采集执行装置检测虚拟运行环境对应的任务子队列中,待执行的采集任务数是否达到第二阈值。
需要说明的是,每一个虚拟运行环境都有一个对应的任务子队列,用于记录该虚拟运行环境对应的采集任务以及采集任务的状态。
本发明实施例中,每一采集执行装置都会对本端的采集任务执行情况进行监测。采集执行装置针对其上创建的每一虚拟运行环境,都会判断对应的任务子队列中,待执行的采集任务数是否达到第二阈值。其中,第二阈值可以根据实际需要灵活设置,不同的虚拟运行环境,其对应的第二阈值可以相同,也可以不同。
为了更好的理解,此处以一个示例进行说明。假设采集执行装置A包括虚拟运行环境a,虚拟运行环境a对应的第二阈值为10,则采集执行装置A可以检测虚拟运行环境a对应的任务子队列中,待执行的采集任务数是否达到10。需要说明的是,此处的示例针对的是虚拟运行环境a,针对其他虚拟运行环境,其处理方式可以参见虚拟运行环境a的处理方式。
步骤S37:若否,采集执行装置从任务总队列中,锁定待执行的采集任务。
若虚拟运行环境对应的任务子队列中,待执行的采集任务数没有达到第二阈值,则表明该虚拟运行环境的资源充足,因此,采集执行装置可以从总任务队列中,锁定待执行的采集任务。采集执行装置锁定待执行的采集任务之后,采集控制装置可以更新总任务队列中,锁定的采集任务的状态。
在一些实施方式中,采集任务的配置信息包括该采集任务的优先级。因此。步骤S37中,采集执行装置可以根据采集任务的优先级,从任务总队列中,锁定优先级最高的待执行采集任务。
承接上例,假设虚拟运行环境a对应的任务子队列中,待执行的采集任务数没有达到10,任务总队列中,锁定优先级最高的待执行采集任务为采集任务b,则采集执行装置A可以从任务总队列中,锁定采集任务b。
步骤S38:采集执行装置从采集控制装置中下载锁定的采集任务的采集脚本。
采集执行装置锁定采集任务之后,采集执行装置从采集控制装置中,下载该采集任务的采集脚本,以供后续执行。
承接上例,采集执行装置A下载采集任务b的采集脚本。
步骤S39:采集执行装置将锁定的采集任务放入虚拟运行环境的任务子队列中。
采集执行装置下载锁定采集任务的采集脚本之后,可以将锁定采集任务放入虚拟运行环境对应的任务子队列中。
承接上例,采集执行装置A将采集任务b放入虚拟运行环境a的任务子队列中。
本发明实施例提供的数据采集方法,采集执行装置检测虚拟运行环境对应的任务子队列中,待执行的采集任务数是否达到第二阈值;若否,采集执行装置从任务总队列中,锁定待执行的采集任务;采集执行装置从采集控制装置中下载锁定的采集任务的采集脚本,将锁定的采集任务放入虚拟运行环境的任务子队列中,也就是说,采集执行装置会根据虚拟运行环境中待执行的采集任务的数量,判断是否为该虚拟运行环境配置采集任务,从而避免虚拟运行环境对应的待执行采集任务过多或过少,虚拟运行环境的资源无法得到有效利用的情况,充分利用虚拟运行环境的资源,提升采集任务执行效率。
基于前述实施例,提出本发明数据采集方法第六实施例。本发明实施例中,步骤S25之后,数据采集方法还包括:
步骤S40:采集执行装置针对每一虚拟运行环境,判断对应的任务子队列中,处于执行状态的采集任务个数是否达到预设第一阈值。
本发明实施例中,每一采集执行装置都会对本端的采集任务执行情况进行监测。采集执行装置针对其上创建的每一虚拟运行环境,都会判断对应的任务子队列中,处于执行状态的采集任务数是否达到第一阈值。其中,第一阈值可以根据实际需要灵活设置,不同的虚拟运行环境,其对应的第一阈值可以相同,也可以不同。
为了更好的理解,此处以一个示例进行说明。假设采集执行装置B包括虚拟运行环境b,虚拟运行环境b对应的第一阈值为5,则采集执行装置B可以检测虚拟运行环境b对应的任务子队列中,处于执行状态的采集任务(即正在执行的采集任务)的数量是否达到5。需要说明的是,此处的示例针对的是虚拟运行环境b,针对其他虚拟运行环境,其处理方式可以参见虚拟运行环境b的处理方式。
步骤S41:若否,采集执行装置按照采集任务的优先级,从虚拟运行环境的任务子队列中,获取待执行采集任务,并在虚拟运行环境中执行。
若否,则表明该虚拟运行环境的资源充足,因此,采集执行装置可以按照采集任务的优先级,从虚拟运行环境对应的任务子队列中,获取待执行的采集任务,并在虚拟运行环境中,执行该采集任务。
在一些实施方式中,在虚拟运行环境中执行采集任务的过程可以是:通过采集任务实例,执行采集任务的采集脚本,以执行采集任务。
承接上例,假设虚拟运行环境b对应的任务子队列中,处于执行状态的采集任务的个数小于5,则根据优先级,从虚拟运行环境b对应的任务子队列中,获取优先级最高的待执行采集任务,并通过虚拟运行环境b中创建的采集任务实例,执行该采集任务的采集脚本,从而执行该采集任务。
本发明实施例提供的数据采集方法,采集执行装置检测虚拟运行环境对应的任务子队列中,处于执行状态的采集任务数是否达到第一阈值;若否,采集执行装置按照采集任务的优先级,从虚拟运行环境的任务子队列中,获取待执行采集任务,并在虚拟运行环境中执行,从而充分利用虚拟运行环境的资源,提升采集任务执行效率。
数据采集装置实施例:
参照图6,图6为本发明数据采集装置第一实施例的结构框图,该数据采集装置应用于采集控制装置,其中数据采集装置包括:
检测模块61,用于检测总任务队列,以获取总任务队列中采集任务的任务状态信息。
判断模块62,用于根据任务状态信息,判断是否满足预设资源扩容条件。
发送模块63,用于若是,向至少一个采集执行装置发送第一资源调度指令,以使采集执行装置根据第一资源调度指令,调度空闲资源,并利用空闲资源执行采集任务。
需要说明的是,数据采集装置还可选的包括有对应的模块,以实施上述数据采集方法中,采集控制装置侧的其他步骤。
参照图7,图7为本发明数据采集装置第二实施例的结构框图,该数据采集装置应用于采集执行装置,其中数据采集装置包括:
接收模块71,用于接收第一资源调度指令,第一资源调度指令为采集控制装置在总任务队列中采集任务的任务状态信息满足预设资源扩容条件时发送的。
调度模块72,用于根据第一资源调度指令,调度空闲资源。
执行模块73,用于利用空闲资源,执行采集任务。
需要说明的是,数据采集装置还可选的包括有对应的模块,以实施上述数据采集方法中,采集执行装置侧的其他步骤。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备执行本发明各个实施例所述的方法。
以上所述仅为本发明的可选实施例,并非因此限制本发明的专利范围,凡是在本发明的发明构思下,利用本发明说明书及附图内容所作的等效结构变换,或直接/间接运用在其他相关的技术领域均包括在本发明的专利保护范围内。
Claims (10)
1.一种数据采集方法,其特征在于,应用于采集控制装置,所述采集控制装置与至少一个采集执行装置连接,所述数据采集方法包括:
检测总任务队列,以获取所述总任务队列中采集任务的任务状态信息;
根据所述任务状态信息,判断是否满足预设资源扩容条件;
若是,向至少一个所述采集执行装置发送第一资源调度指令,以使所述采集执行装置根据所述第一资源调度指令,调度空闲资源,并利用所述空闲资源执行采集任务。
2.如权利要求1所述的数据采集方法,其特征在于,所述检测总任务队列,以获取所述总任务队列中采集任务的任务状态信息的步骤之后,所述数据采集方法还包括:
根据所述任务状态信息,判断是否满足预设资源缩减条件;
若是,向满足预设第二条件的采集执行装置发送第二资源调度指令,以使所述采集执行装置根据所述第二资源调度指令,释放用于执行采集任务的资源。
3.如权利要求2所述的数据采集方法,其特征在于,所述根据所述任务状态信息,判断是否满足预设资源扩容条件的步骤,包括:
根据所述任务状态信息,判断是否存在待执行采集任务;
所述根据所述任务状态信息,判断是否满足预设资源缩减条件的步骤,包括:
根据所述任务状态信息,判断所述总任务队列中的采集任务是否均执行完毕。
4.如权利要求2所述的数据采集方法,其特征在于,所述若是,向至少一个所述采集执行装置发送第一资源调度指令的步骤,包括:
若是,根据各所述采集执行装置的负载状态,向负载最小的采集执行装置发送第一资源调度指令;
或,
若是,根据各所述采集执行装置的负载状态,向负载小于预设负载阈值的采集执行装置发送第一资源调度指令;
所述若是,向满足预设第二条件的采集执行装置发送第二资源调度指令,以使所述采集执行装置根据所述第二资源调度指令,释放用于执行采集任务的资源的步骤,包括:
若是,向采集任务均执行完毕、且虚拟运行环境数超过预设默认值的采集执行装置,发送第二资源调度指令,以使所述采集执行装置根据所述第二资源调度指令,释放虚拟运行环境,所述虚拟运行环境用于执行采集任务。
5.如权利要求1-4任一项所述的数据采集方法,其特征在于,所述检测总任务队列,以获取所述总任务队列中采集任务的任务状态信息的步骤之前,所述数据采集方法还包括:
接收采集任务的配置信息;
根据所述配置信息,生成采集任务;
判断所述采集任务是否满足预设拆分条件;
若是,将所述采集任务拆分为至少两个采集子任务;
将所述采集子任务放入所述总任务队列中。
6.一种数据采集方法,其特征在于,应用于采集执行装置,所述采集执行装置与采集控制装置连接,所述数据采集方法包括:
接收第一资源调度指令,所述第一资源调度指令为所述采集控制装置在总任务队列中采集任务的任务状态信息满足预设资源扩容条件时发送的;
根据所述第一资源调度指令,调度空闲资源;
利用所述空闲资源,执行采集任务。
7.如权利要求6所述的数据采集方法,其特征在于,所述根据所述第一资源调度指令,调度空闲资源的步骤,包括:
根据所述第一资源调度指令,调度空闲资源,以创建新的虚拟运行环境;
所述利用所述空闲资源,执行采集任务的步骤,包括:
从所述任务总队列中,获取待执行的采集任务放入所述新的虚拟运行环境的任务子队列中;
按照采集任务的优先级,从所述任务子队列中,获取待执行采集任务,并在所述新的虚拟运行环境中执行。
8.一种数据采集装置,其特征在于,应用于采集控制装置,所述采集控制装置与至少一个采集执行装置连接,所述数据采集装置包括:
检测模块,用于检测总任务队列,以获取所述总任务队列中采集任务的任务状态信息;
判断模块,用于根据所述任务状态信息,判断是否满足预设资源扩容条件;
发送模块,用于若是,向至少一个所述采集执行装置发送第一资源调度指令,以使所述采集执行装置根据所述第一资源调度指令,调度空闲资源,并利用所述空闲资源执行采集任务。
9.一种数据采集设备,其特征在于,所述数据采集设备包括:存储器、处理器及存储在所述存储器上并在所述处理器上运行的第一数据采集程序或第二数据采集程序,所述第一数据采集程序被所述处理器执行时实现如权利要求1至5中任一项所述的数据采集方法的步骤;所述第二数据采集程序被所述处理器执行时实现如权利要求6或7所述的数据采集方法的步骤。
10.一种存储介质,其特征在于,所述存储介质上存储有第一数据采集程序或第二数据采集程序,所述第一数据采集程序被所述处理器执行时实现如权利要求1至5中任一项所述的数据采集方法的步骤;所述第二数据采集程序被所述处理器执行时实现如权利要求6或7所述的数据采集方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110159659.1A CN112905336A (zh) | 2021-02-04 | 2021-02-04 | 数据采集方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110159659.1A CN112905336A (zh) | 2021-02-04 | 2021-02-04 | 数据采集方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112905336A true CN112905336A (zh) | 2021-06-04 |
Family
ID=76122770
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110159659.1A Pending CN112905336A (zh) | 2021-02-04 | 2021-02-04 | 数据采集方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112905336A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114116362A (zh) * | 2022-01-28 | 2022-03-01 | 苏州浪潮智能科技有限公司 | 一种验证设备的使用管理方法、系统、存储介质及设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104142860A (zh) * | 2013-05-10 | 2014-11-12 | 中国电信股份有限公司 | 应用服务系统的资源调整方法与装置 |
CN108076082A (zh) * | 2016-11-09 | 2018-05-25 | 阿里巴巴集团控股有限公司 | 一种应用集群的扩容方法、装置和系统 |
CN110502340A (zh) * | 2019-08-09 | 2019-11-26 | 广东浪潮大数据研究有限公司 | 一种资源动态调整方法、装置、设备及存储介质 |
CN111092921A (zh) * | 2018-10-24 | 2020-05-01 | 北大方正集团有限公司 | 数据采集方法、装置及存储介质 |
CN111158899A (zh) * | 2019-12-02 | 2020-05-15 | 南京星邺汇捷网络科技有限公司 | 一种数据的采集方法、采集器、任务管理中心以及系统 |
-
2021
- 2021-02-04 CN CN202110159659.1A patent/CN112905336A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104142860A (zh) * | 2013-05-10 | 2014-11-12 | 中国电信股份有限公司 | 应用服务系统的资源调整方法与装置 |
CN108076082A (zh) * | 2016-11-09 | 2018-05-25 | 阿里巴巴集团控股有限公司 | 一种应用集群的扩容方法、装置和系统 |
CN111092921A (zh) * | 2018-10-24 | 2020-05-01 | 北大方正集团有限公司 | 数据采集方法、装置及存储介质 |
CN110502340A (zh) * | 2019-08-09 | 2019-11-26 | 广东浪潮大数据研究有限公司 | 一种资源动态调整方法、装置、设备及存储介质 |
CN111158899A (zh) * | 2019-12-02 | 2020-05-15 | 南京星邺汇捷网络科技有限公司 | 一种数据的采集方法、采集器、任务管理中心以及系统 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114116362A (zh) * | 2022-01-28 | 2022-03-01 | 苏州浪潮智能科技有限公司 | 一种验证设备的使用管理方法、系统、存储介质及设备 |
CN114116362B (zh) * | 2022-01-28 | 2022-05-24 | 苏州浪潮智能科技有限公司 | 一种验证设备的使用管理方法、系统、存储介质及设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112257135B (zh) | 一种基于多线程的模型加载方法、装置、存储介质及终端 | |
CN107317730B (zh) | 用于监控区块链节点状态的方法、设备和系统 | |
CN108512695B (zh) | 监控应用卡顿的方法及装置 | |
JP6571277B2 (ja) | 端末アプリケーションをロードする方法及び装置 | |
CN105024865B (zh) | 云联合即服务 | |
CN109118160B (zh) | 一种信息共享方法、装置、终端设备和介质 | |
CN104838360A (zh) | 基于配额的资源管理 | |
CN109408205A (zh) | 基于hadoop集群的任务调度方法和装置 | |
WO2012007637A1 (en) | Method and apparatus for processing biometric information using distributed computation | |
CN107484190B (zh) | 网络连接方法、移动终端及计算机可读存储介质 | |
CN110333917A (zh) | 基于微服务的数据处理方法、装置、设备及可读存储介质 | |
US10579411B2 (en) | Loading and running virtual working environments in a mobile device management system | |
CN103065235A (zh) | 活动出席通知系统及方法 | |
US20160173606A1 (en) | Information processing apparatus, communications apparatus, information processing method, and computer product | |
CN109688183A (zh) | 群控设备识别方法、装置、设备及计算机可读存储介质 | |
CN103634032B (zh) | 数据转移方法、系统及移动终端 | |
US20190156017A1 (en) | Terminal and method for managing launch of an application of a terminal | |
CN112905336A (zh) | 数据采集方法、装置、设备及存储介质 | |
CN114327087A (zh) | 输入事件处理方法、装置、电子设备和存储介质 | |
CN108664389B (zh) | 一种测试方法、装置及终端 | |
CN107463395B (zh) | 组件调用方法及装置 | |
CN101770553B (zh) | 一种移动终端、以及移动终端中根证书的调用方法 | |
Zhang et al. | Android platform-based individual privacy information protection system | |
CN109218259B (zh) | 许可管理方法及装置、applm功能实体及计算机可读存储介质 | |
CN109857374A (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 |