Task arrangement method and system, terminal and storage medium
By filtering out the detection server in the device group and using the server to perform dynamic instruction orchestration, the problem of difficulty in dealing with large-scale and dynamic changes in the existing technology is solved, and more efficient resource utilization and data acquisition logic adjustment is achieved.
Patent Information
- Application Number
- CN202411576439.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-06
- Publication Date
- 2025-03-11
AI Technical Summary
The existing technology is difficult to cope with large-scale and dynamically changing computing or data acquisition tasks, and the existing instruction orchestration method cannot effectively handle complex and varied task requirements.
By filtering out the detection server from the device group, using the server to issue operation instructions to other devices according to the calculation task, and then re-arrange the instructions through the reported data of the device until the requirements of the calculation task are met.
Improve the utilization of system resources, enable dynamic adjustment of instructions to cope with complex data acquisition logic, ensure that the data meets specific computing needs, and better handle large-scale and dynamically changing tasks.
Smart Images

Figure CN119597418A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of computer technology, and in particular to a task scheduling method, system, terminal and storage medium. Background Art
[0002] Each device in the network has multiple acquisition capabilities, and the upper-level device needs to determine which acquisition capability it is currently using based on the current computing task. Therefore, for the upper-level device, correctly arranging instructions is the key to completing the computing task.
[0003] There are two main instruction orchestration methods at present: manual task orchestration, where operators manually create and assign data collection tasks, which is applicable to simple data sources; static task orchestration, where the execution order of tasks is predefined, which is applicable to fixed data sources. However, both methods are difficult to cope with large-scale and dynamically changing computing or data collection tasks.
[0004] Therefore, the existing technology still needs to be improved and developed. Summary of the invention
[0005] The technical problem to be solved by the present invention is to provide a task scheduling method, system, terminal and storage medium in response to the above-mentioned defects of the prior art, aiming to solve the problem that the instruction scheduling method in the prior art is difficult to cope with large-scale and dynamically changing computing or data acquisition tasks.
[0006] The technical solution adopted by the present invention to solve the problem is as follows:
[0007] In a first aspect, an embodiment of the present invention provides a task scheduling method, the method comprising:
[0008] Filter out a detection server from the device group, issue an operation instruction to the remaining devices through the detection server according to the computing task, and obtain the reporting data generated by the remaining devices in response to the operation instruction;
[0009] issuing update operation instructions to other devices according to each of the reported data, and obtaining update reporting data generated by other devices in response to the update operation instructions;
[0010] Determine whether each of the updated reported data meets the computing requirements corresponding to the computing task. If not, use the updated reported data as the reporting data and continue to execute the step of issuing update operation instructions to the remaining devices according to each of the reported data until the computing requirements corresponding to the computing task are met.
[0011] In one implementation, the sending of operation instructions to other devices according to the computing task by the detection server includes:
[0012] Obtaining a computing task through the detection server, and performing task decomposition on the computing task to obtain a task decomposition result;
[0013] For each of the remaining devices, a number of instructions and instruction processing sequences are arranged according to the task decomposition results, and operation instructions for the device are generated and issued according to each of the instructions and the instruction processing sequence.
[0014] In one implementation, the acquiring of the computing task through the detection server includes:
[0015] Obtaining a task canvas through the detection server;
[0016] A computing task is identified and obtained according to the task canvas.
[0017] In one implementation, performing task decomposition on the computing task to obtain a task decomposition result includes:
[0018] Acquire operation symbols and priorities corresponding to the operation symbols according to the computing task;
[0019] Decomposing the computing task according to the operation symbols and the priority of the operation symbols to obtain a plurality of sub-computing tasks and a task processing sequence;
[0020] The task decomposition result is determined according to each of the sub-computing tasks and the task processing order.
[0021] In one implementation, the sending of update operation instructions to other devices according to the reported data includes:
[0022] Processing each of the sub-computing tasks according to each of the reported data and the task processing order;
[0023] For each of the remaining devices, a number of instructions and instruction processing sequences are arranged according to the unprocessed sub-computing tasks, and an update operation instruction for the device is generated and issued according to each of the instructions and the instruction processing sequence.
[0024] In one embodiment, the operation instruction includes a collection instruction, and the collection instruction of each device is used to indicate the type of data probe currently used by the device.
[0025] In one embodiment, the method further comprises:
[0026] The situation awareness result corresponding to the device group is generated through the reported data or the updated reported data of the remaining devices.
[0027] In a second aspect, an embodiment of the present invention further provides a task scheduling system, the system comprising:
[0028] An instruction arrangement module is used to select a detection server from the device group, issue an operation instruction to the remaining devices through the detection server according to the computing task, and obtain the report data generated by the remaining devices in response to the operation instruction;
[0029] An instruction re-arrangement module, used for issuing update operation instructions to other devices according to each of the reported data, and obtaining update report data generated by other devices in response to the update operation instructions;
[0030] A loop module is used to determine whether each of the updated reported data meets the computing requirements corresponding to the computing task. If not, the updated reported data is used as the reported data, and the step of issuing update operation instructions to the remaining devices according to each of the reported data is continued until the computing requirements corresponding to the computing task are met.
[0031] In a third aspect, an embodiment of the present invention further provides a terminal, comprising a memory and at least one processor; the memory stores a program, the program comprising instructions for executing any of the task scheduling methods described above; and the processor is used to execute the program.
[0032] In a fourth aspect, an embodiment of the present invention further provides a computer-readable storage medium on which a plurality of instructions are stored, wherein the instructions are suitable for being loaded and executed by a processor to implement the steps of any of the task scheduling methods described above.
[0033] Beneficial effects of the present invention: The embodiment of the present invention selects a detection server from a device group, issues an operation instruction to the remaining devices through the detection server according to the computing task, and obtains the reported data generated by the remaining devices in response to the operation instruction; issues the update operation instruction of the remaining devices according to each of the reported data, and obtains the update reported data generated by the remaining devices in response to the update operation instruction; judges whether each of the updated reported data meets the computing requirements corresponding to the computing task, if not, takes the updated reported data as the reported data, and continues to execute the step of issuing the update operation instruction of the remaining devices according to each of the reported data until the computing requirements corresponding to the computing task are met. The present invention selects the detection server from the device group for instruction arrangement, rather than setting up a detection server specifically, which can improve the utilization rate of system resources. And the detection server can dynamically re-arrange the instructions through the integrity and quality of the reported data of the remaining devices, realize complex data collection logic, and ensure that the data finally collected can meet specific computing requirements, so the present invention can better cope with large-scale and dynamically changing computing tasks or data collection tasks. BRIEF DESCRIPTION OF THE DRAWINGS
[0034] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments recorded in the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.
[0035] Figure 1 It is a flowchart of a task scheduling method provided by an embodiment of the present invention.
[0036] Figure 2 It is a schematic diagram of the functional modules of the detection server provided in an embodiment of the present invention.
[0037] Figure 3 It is a task decomposition diagram provided by an embodiment of the present invention.
[0038] Figure 4 It is a schematic diagram of the functional modules of the agent end (collection service end) provided in an embodiment of the present invention.
[0039] Figure 5 It is a structural diagram of a task scheduling system provided by an embodiment of the present invention.
[0040] Figure 6 It is a principle block diagram of a terminal provided by an embodiment of the present invention. DETAILED DESCRIPTION
[0041] The present invention discloses a task scheduling method, system, terminal and storage medium. In order to make the purpose, technical solution and effect of the present invention clearer and more specific, the present invention is further described in detail with reference to the accompanying drawings and examples. It should be understood that the specific embodiments described herein are only used to explain the present invention and are not used to limit the present invention.
[0042] It will be understood by those skilled in the art that, unless expressly stated, the singular forms "one", "said", and "the" used herein may also include plural forms. It should be further understood that the term "comprising" used in the specification of the present invention refers to the presence of the features, integers, steps, operations, elements and / or components, but does not exclude the presence or addition of one or more other features, integers, steps, operations, elements, components and / or groups thereof. It should be understood that when we refer to an element as being "connected" or "coupled" to another element, it may be directly connected or coupled to the other element, or there may be intermediate elements. In addition, the "connection" or "coupling" used herein may include wireless connection or wireless coupling. The term "and / or" used herein includes all or any unit and all combinations of one or more associated listed items.
[0043] It will be understood by those skilled in the art that, unless otherwise defined, all terms (including technical and scientific terms) used herein have the same meaning as generally understood by those skilled in the art in the art to which the present invention belongs. It should also be understood that terms such as those defined in general dictionaries should be understood to have meanings consistent with the meanings in the context of the prior art, and will not be interpreted with idealized or overly formal meanings unless specifically defined as herein.
[0044] Each device in the network has multiple acquisition capabilities, and the upper-level device needs to determine which acquisition capability it is currently using based on the current computing task. Therefore, for the upper-level device, correctly arranging instructions is the key to completing the computing task.
[0045] There are two main instruction orchestration methods at present: manual task orchestration, where operators manually create and assign data collection tasks, which is applicable to simple data sources; static task orchestration, where the execution order of tasks is predefined, which is applicable to fixed data sources. However, both methods are difficult to cope with large-scale and dynamically changing computing or data collection tasks.
[0046] In view of the above-mentioned defects of the prior art, the present invention provides a task scheduling method, the method comprising: selecting a detection server from a device group, issuing an operation instruction to the remaining devices according to the computing task through the detection server, and obtaining the report data generated by the remaining devices in response to the operation instruction; issuing an update operation instruction of the remaining devices according to each of the reported data, and obtaining the update report data generated by the remaining devices in response to the update operation instruction; judging whether each of the updated report data meets the computing requirements corresponding to the computing task, if not, taking the updated report data as the report data, and continuing to execute the step of issuing the update operation instructions of the remaining devices according to each of the reported data until the computing requirements corresponding to the computing task are met. The present invention selects the detection server from the device group for instruction scheduling, rather than setting up a detection server specifically, which can improve the utilization rate of system resources. And the detection server can dynamically re-arrange the instructions through the integrity and quality of the report data of the remaining devices, realize complex data acquisition logic, and ensure that the final collected data can meet specific computing requirements, so the present invention can better cope with large-scale and dynamically changing computing or data acquisition tasks.
[0047] like Figure 1 As shown, the method includes:
[0048] Step S100: Filter out a detection server from the device group, issue an operation instruction to the remaining devices through the detection server according to the computing task, and obtain the reporting data generated by the remaining devices in response to the operation instruction.
[0049] Specifically, a network that needs to be situationally aware or monitored is determined in advance, and all devices or important parts of the devices are selected to form a specific device group. In order to improve the utilization rate of system resources, this embodiment does not set up a special device as a detection server. Instead, by analyzing the status and / or service priority of each device in the device group, one or more idle devices are screened out as detection servers, and the remaining devices are used as agents (or data acquisition terminals) to perform local data acquisition tasks and report the collected data to the detection server for further data analysis. The data acquisition tasks include various types of tasks such as data collection and data calculation. The collected data includes data collected by data probes and calculated data based on local computing tools. Figure 2 As shown, when there is only one detection server, it means that the single-device detection mode is currently adopted; when there are multiple detection servers, it means that the distributed detection mode is currently adopted. In actual application, one detection server can be first screened out, and then the detection module of the detection server can further determine whether more detection servers are needed to collaborate in data analysis. The detection server is responsible for managing and coordinating the entire calculation process, including the analysis process of the calculation task and the data collection process of the remaining devices. The detection server will first send basic operation instructions to the remaining devices according to the calculation task. After each device receives the operation instruction, it will perform the corresponding calculation task or data collection task according to the operation instruction, and report the data obtained based on the operation instruction to the detection server.
[0050] In one implementation, the sending of operation instructions to other devices according to the computing task by the detection server includes:
[0051] Obtaining a computing task through the detection server, and performing task decomposition on the computing task to obtain a task decomposition result;
[0052] For each of the remaining devices, a number of instructions and instruction processing sequences are arranged according to the task decomposition results, and operation instructions for the device are generated and issued according to each of the instructions and the instruction processing sequence.
[0053] Specifically, Figure 2As shown, the functional modules inside the detection server include but are not limited to: detection module, data management module, arrangement module, instruction management module and communication module. Among them, the arrangement module is mainly used to realize the functions of task parsing, instruction arrangement, instruction calling, etc.; the instruction management module is mainly used to realize the functions of instruction generation, instruction issuance, etc.; the detection module is mainly used to determine the detection mode that should be adopted at present; the data management module is mainly used for equipment grouping (grouping according to equipment working conditions, functions, and services, so as to better perform data comparison and data analysis), data routing and instruction issuance. In actual application, after receiving the computing task, the detection server will decompose it into smaller and more specific sub-computing tasks. The task decomposition result can be presented in a task tree or a task list, in which each element represents an independent sub-computing task. When there are multiple sub-computing tasks, each sub-computing task has a specific task execution order. The detection server will arrange a series of specific operation instructions according to the task decomposition result. When the operation instruction includes multiple instructions, each instruction has a specific instruction processing order. After these operation instructions are issued to the corresponding devices, they can be used to indicate what detection capability each device should currently use and what specific data to collect. Taking a device as an example, when the device receives an operation instruction, it can execute the data collection task according to the instructions contained in the operation instruction and the instruction processing order.
[0054] In one implementation, the acquiring of the computing task through the detection server includes:
[0055] Obtaining a task canvas through the detection server;
[0056] A computing task is identified and obtained according to the task canvas.
[0057] Specifically, the task canvas can be a display tool for computing tasks, such as a tool for visualizing computing tasks. Users can intuitively learn about the current computing tasks through the task canvas, and the detection server can also identify the current computing tasks through the task canvas. In actual applications, the task canvas can be created by the user or automatically generated by the system based on a given task.
[0058] In one implementation, performing task decomposition on the computing task to obtain a task decomposition result includes:
[0059] Acquire operation symbols and priorities corresponding to the operation symbols according to the computing task;
[0060] Decomposing the computing task according to the operation symbols and the priority of the operation symbols to obtain a plurality of sub-computing tasks and a task processing sequence;
[0061] The task decomposition result is determined according to each of the sub-computing tasks and the task processing order.
[0062] Specifically, Figure 3 As shown, the computing task in this embodiment can be an expression containing multiple operators, such as a data expression or a logical expression. In order to correctly complete the computing task, the detection server first needs to identify all the operators in the expression, such as addition, subtraction, multiplication, division and other operators, and determine the priority of each operator based on the learned operation rules. For example, the priority of multiplication and division is usually higher than that of addition and subtraction. Furthermore, the priority of each operator can be presented through a pre-order expression, an in-order expression and a subsequent expression.
[0063] In actual application, the detection server will decompose the computing task based on all the identified operators and priorities, and then generate the operation instructions for the remaining devices. The task decomposition process is as follows: first identify the operator with the highest priority in the expression, split the local operation corresponding to the operator to obtain a sub-expression, if the operators in the expression have the same priority, then split the local operation corresponding to the first operator based on the order of the operator to obtain a sub-expression; form a new expression based on the remaining operators and the calculation results of the sub-expression, and continue to perform the steps of identifying the operator with the highest priority in the expression until the expression contains only one basic operation or a single number.
[0064] For example, Figure 3 As shown in the figure, the calculation task is 4.5+1.43÷1.3-1.23. According to the priority of the operator, "1.43÷1.3" is split as the first sub-expression. The execution result of the first sub-expression is 1.1, forming a new expression "4.5+1.1-1.23". According to the order of the operator, "4.5+1.1" is split as the second sub-expression. The execution result of the second sub-expression is 5.6, forming a new expression "5.6-1.23". This expression is a basic operation and does not need to be split again. The final calculation result obtained according to this expression is 4.37.
[0065] Step S200: issuing update operation instructions to other devices according to the reported data, and obtaining update reporting data generated by other devices in response to the update operation instructions.
[0066] Specifically, after receiving the reported data from each device, the detection server will perform preliminary processing and analysis on the reported data based on the specified computing task, and then decide whether further data collection is needed. If further data collection is needed, the collection instructions for each device will be regenerated, and the updated collection instructions will be sent to each device again. After each device receives the updated collection instruction, it will continue to perform the corresponding data collection task according to the updated collection instruction, obtain the updated reported data, and feed it back to the detection server.
[0067] In one implementation, the issuing of update operation instructions to other devices according to the reported data includes:
[0068] Processing each of the sub-computing tasks according to each of the reported data and the task processing order;
[0069] For each of the remaining devices, a number of instructions and instruction processing sequences are arranged according to the unprocessed sub-computing tasks, and an update operation instruction for the device is generated and issued according to each of the instructions and the instruction processing sequence.
[0070] Specifically, the detection server can judge the integrity and quality of the data based on the data reported by other devices, and dynamically re-arrange the instructions and send new collection instructions to other devices, thereby implementing complex collection logic and ensuring that the data collected can meet the computing requirements of specific computing tasks. Figure 3 For example, the four arithmetic operations are a complex calculation instruction received by the detection server, which is equivalent to a calculation task. When the detection server receives the complex calculation instruction, the arrangement module will decompose the complex calculation instruction into several sub-calculation instructions. Then the instructions are re-arranged according to the decomposition results, and multiple instructions will be arranged by repeating them many times. According to the arranged instructions and the processing order of each instruction, the final operation instruction is generated and distributed to the corresponding device, and the device can know the rules of data processing and / or data collection according to the received operation instruction, so as to correctly complete the corresponding task. Furthermore, the detection server will arrange and analyze the formula according to the four arithmetic operations. The four arithmetic operations themselves can reflect some pre-set calculation rules, which can be specially formulated by security management personnel or operation and maintenance personnel. In actual application scenarios, each device itself has multiple detection capabilities, so the detection server needs to specify which detection capability it is currently using and the order in which these detection capabilities are used by arranging and issuing instructions.
[0071] In one implementation, the operation instruction includes a collection instruction, and the collection instruction of each device is used to indicate the type of data probe currently used by the device.
[0072] Specifically, the collection instruction can indicate which data probe each device should use, and different data probes collect different types of data. Figure 4 As shown, the functional modules inside each agent include but are not limited to: communication module, instruction module, response module, collection probe module and management module. Among them, the instruction module is mainly used for instruction parsing and instruction distribution and execution; the collection probe module is mainly used for data collection, and the types of data probes include but are not limited to: system information probes, which are used to collect information about the current system operating environment; performance probes, which are used to collect information related to the utilization rate of system resources, such as CPU, memory, disk and other information; network probes, which are used to collect network data packet information. Since the operating system corresponding to each device may be different, the data probes that each device can support may also be different.
[0073] Taking the case where the operation instruction is a collection instruction, the detection server will compile the collection instructions for each device and send them to the corresponding device. After receiving the collection instruction, the device for executing the collection service will parse it to obtain a data probe, collect data through the data probe (local data or system data can be collected), and report the collected data to the detection server.
[0074] Step S300, determine whether each of the updated reported data meets the computing requirements corresponding to the computing task. If not, use the updated reported data as the reported data, and continue to execute the step of issuing update operation instructions to the remaining devices according to each of the reported data until the computing requirements corresponding to the computing task are met.
[0075] Specifically, after the detection server obtains the updated reported data of each device, it will process and analyze the updated reported data again, and decide whether further data collection or data processing is needed. This process will be repeated until the detection server determines that the collected data has met the computing requirements corresponding to the computing task, and the entire cycle will end. This embodiment separates the data analysis work from the data collection work, which can improve the work response speed and processing efficiency. In addition, the detection server can dynamically adjust the operation instructions according to the integrity and quality of each reported data, and gradually optimize the data collection effect through continuous feedback and adjustment to ensure that the data finally collected can meet specific computing requirements.
[0076] In one implementation, the method further includes:
[0077] The situation awareness result corresponding to the device group is generated through the reported data or the updated reported data of the remaining devices.
[0078] Specifically, the detection server can also perform horizontal comparative analysis and / or vertical comparative analysis based on the reported data of each device, and then identify abnormal devices that may have safety hazards, and finally analyze the system status and / or potential problems through the identified abnormal devices to obtain situational awareness results. Among them, horizontal analysis refers to the device used to perform analysis services to perform horizontal analysis on the data in the group, identify abnormal data in the same group, and then identify abnormal devices. Vertical analysis refers to the comprehensive analysis of all types of collected data of a device to identify abnormal data and then determine whether the device is an abnormal device. Furthermore, the technical solution of this embodiment can be used in combination with the Hongmeng (kaihongOS) system.
[0079] In another implementation, in addition to horizontal and vertical analysis of data, one or more detection methods including persistence detection, privilege escalation detection, lateral movement detection, and abnormal state detection may be performed on the data in single device detection mode and / or distributed detection mode;
[0080] Persistent detection is used to compare the new data currently received with the previous cached data, identify data changes based on the comparison results, and identify abnormal data based on data changes. For example, in single-device detection mode, it is necessary to cache the last user, user group, environment variable, and scheduled task data, and compare the new data with the last cached data to calculate whether there are any new additions; in distributed detection mode, it is necessary to compare the scheduled tasks and privileged users of this group of devices to calculate whether there are any extra ones.
[0081] Privilege escalation detection is used to determine whether there are abnormal permission changes and / or abnormal processes based on the new data currently received (including permission data and / or process data), and identify abnormal data based on the judgment results. For example, in single-device detection mode, it is necessary to detect system calls (syscall) related to permission changes in real time to determine whether it is an abnormal permission change. The detection points include: inconsistent permissions before and after the process, child process permissions are higher than parent process permissions, and low-privilege processes modify privileged file permissions; in distributed detection mode, it is necessary to compare the permissions of the same process in this group of devices to calculate whether a privileged process appears in a low-privilege process. If there are multiple instances of the same process in the process information, normalization is required.
[0082] Lateral movement detection is used to detect process data based on the process blacklist and whitelist to detect whether there are illegal processes and identify abnormal data based on the detection results. For example, in single-device detection mode, it is necessary to detect process data based on the process blacklist and whitelist to detect whether there are illegal processes.
[0083] Abnormal status detection: used to detect whether there are non-system processes with abnormal permissions based on process data, and / or detect whether there are abnormal occupancy based on system performance data, and / or detect whether the network connections in the same group are consistent, and identify abnormal data based on the detection results. For example, in single-device detection mode, it is necessary to detect whether there are non-system processes with abnormal permissions based on process data, and detect whether there are long-term high occupancy of CPU (calculation data), IO (read and write data), memory, network, and hard disk based on system performance data; in distributed detection mode, it is necessary to detect whether the network connections in the same group are consistent, and if not, identify whether there is an abnormality.
[0084] Based on the above embodiments, the present invention also provides a task scheduling system, such as Figure 5 As shown, the system comprises:
[0085] The instruction arrangement module 01 is used to select the detection server from the device group, issue operation instructions to the remaining devices through the detection server according to the computing task, and obtain the reporting data generated by the remaining devices in response to the operation instructions;
[0086] The instruction re-arrangement module 02 is used to issue update operation instructions to other devices according to each of the reported data, and obtain update reporting data generated by other devices in response to the update operation instructions;
[0087] Loop module 03 is used to determine whether each of the updated reported data meets the computing requirements corresponding to the computing task. If not, the updated reported data is used as the reported data, and the step of issuing update operation instructions to the remaining devices according to each of the reported data is continued until the computing requirements corresponding to the computing task are met.
[0088] In one implementation, the instruction arrangement module 01 includes:
[0089] A task decomposition unit, used to obtain a computing task through the detection server, and perform task decomposition on the computing task to obtain a task decomposition result;
[0090] The instruction generation unit is used to arrange a number of instructions and instruction processing sequences for each of the remaining devices according to the task decomposition results, and generate and issue operation instructions for the device according to each of the instructions and the instruction processing sequence.
[0091] In one implementation, the task decomposition unit includes:
[0092] An acquisition unit, used for acquiring a task canvas through the detection server;
[0093] An identification unit is used to identify and obtain a computing task according to the task canvas.
[0094] In one implementation, the task decomposition unit further includes:
[0095] A symbol extraction unit, used for obtaining operation symbols and priorities corresponding to the operation symbols according to the computing task;
[0096] A symbol splitting unit, used for performing task decomposition on the computing task according to each of the operation symbols and the priority of each of the operation symbols, to obtain a plurality of sub-computing tasks and a task processing sequence;
[0097] The result determination unit is used to determine the task decomposition result according to each of the sub-computing tasks and the task processing order.
[0098] In one implementation, the instruction re-arrangement module includes:
[0099] A data processing unit, used for processing each of the sub-computing tasks according to each of the reported data and the task processing order;
[0100] The re-arrangement unit is used to arrange a number of instructions and instruction processing sequences for each of the remaining devices according to the unprocessed sub-computing tasks, and generate and issue update operation instructions for the device according to the instructions and the instruction processing sequences.
[0101] In one implementation, the operation instruction includes a collection instruction, and the collection instruction of each device is used to indicate the type of data probe currently used by the device.
[0102] In one implementation, the system further includes:
[0103] The situation awareness module is used to generate a situation awareness result corresponding to the device group through the reported data or the updated reported data of the remaining devices.
[0104] Based on the above embodiment, the present invention further provides a terminal, whose principle block diagram can be shown as follows: Figure 6 As shown. The terminal includes a processor, a memory, a network interface, and a display screen connected through a system bus. Among them, the processor of the terminal is used to provide computing and control capabilities. The memory of the terminal includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system and a computer program. The internal memory provides an environment for the operation of the operating system and the computer program in the non-volatile storage medium. The network interface of the terminal is used to communicate with an external terminal through a network connection. When the computer program is executed by the processor, the task scheduling method is implemented:
[0105] Filter out a detection server from the device group, issue an operation instruction to the remaining devices through the detection server according to the computing task, and obtain the reporting data generated by the remaining devices in response to the operation instruction;
[0106] issuing update operation instructions to other devices according to each of the reported data, and obtaining update reporting data generated by other devices in response to the update operation instructions;
[0107] Determine whether each of the updated reported data meets the computing requirements corresponding to the computing task. If not, use the updated reported data as the reporting data and continue to execute the step of issuing update operation instructions to the remaining devices according to each of the reported data until the computing requirements corresponding to the computing task are met.
[0108] The display screen of the terminal may be a liquid crystal display screen or an electronic ink display screen.
[0109] Those skilled in the art will understand that Figure 6 The principle block diagram shown in the figure is only a block diagram of a partial structure related to the scheme of the present invention, and does not constitute a limitation on the terminal to which the scheme of the present invention is applied. The specific terminal may include more or fewer components than those shown in the figure, or combine certain components, or have a different arrangement of components.
[0110] In one implementation, the memory of the terminal stores one or more programs, and is configured to be executed by one or more processors. The one or more programs include instructions for performing a task scheduling method:
[0111] Filter out a detection server from the device group, issue an operation instruction to the remaining devices through the detection server according to the computing task, and obtain the reporting data generated by the remaining devices in response to the operation instruction;
[0112] issuing update operation instructions to other devices according to each of the reported data, and obtaining update reporting data generated by other devices in response to the update operation instructions;
[0113] Determine whether each of the updated reported data meets the computing requirements corresponding to the computing task. If not, use the updated reported data as the reporting data and continue to execute the step of issuing update operation instructions to the remaining devices according to each of the reported data until the computing requirements corresponding to the computing task are met.
[0114] Those skilled in the art can understand that all or part of the processes in the above-mentioned embodiment methods can be completed by instructing the relevant hardware through a computer program, and the computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above-mentioned methods. Among them, any reference to memory, storage, database or other media used in the embodiments provided by the present invention can include non-volatile and / or volatile memory. Non-volatile memory can include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM) or flash memory. Volatile memory can include random access memory (RAM) or external cache memory. As an illustration and not limitation, RAM is available in many forms, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDRSDRAM), enhanced SDRAM (ESDRAM), synchronous link (Synchlink) DRAM (SLDRAM), memory bus (Rambus) direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and memory bus dynamic RAM (RDRAM).
[0115] In summary, the present invention discloses a task scheduling method, system, terminal and storage medium. The method selects a detection server from a device group, issues an operation instruction to the remaining devices according to the computing task through the detection server, and obtains the reporting data generated by the remaining devices in response to the operation instruction; issues an update operation instruction to the remaining devices according to each of the reported data, and obtains the update reporting data generated by the remaining devices in response to the update operation instruction; determines whether each of the updated reporting data meets the computing requirements corresponding to the computing task, and if not, uses the updated reporting data as the reporting data, and continues to execute the step of issuing the update operation instructions to the remaining devices according to each of the reported data until the computing requirements corresponding to the computing task are met. The present invention selects a detection server from a device group for instruction scheduling, rather than setting up a detection server specifically, which can improve the utilization rate of system resources. In addition, the detection server can dynamically re-arrange instructions through the integrity and quality of the reported data of other devices, implement complex data collection logic, and ensure that the data finally collected can meet specific computing requirements. Therefore, the present invention can better cope with large-scale and dynamically changing computing tasks or data collection tasks.
[0116] It should be understood that the application of the present invention is not limited to the above examples. For ordinary technicians in this field, improvements or changes can be made based on the above description. All these improvements and changes should fall within the scope of protection of the claims attached to the present invention.
Claims
1. A task scheduling method, characterized in that: The method comprises: Filter out a detection server from the device group, issue an operation instruction to the remaining devices through the detection server according to the computing task, and obtain the reporting data generated by the remaining devices in response to the operation instruction; issuing update operation instructions to other devices according to each of the reported data, and obtaining update reporting data generated by other devices in response to the update operation instructions; Determine whether each of the updated reported data meets the computing requirements corresponding to the computing task. If not, use the updated reported data as the reporting data and continue to execute the step of issuing update operation instructions to the remaining devices according to each of the reported data until the computing requirements corresponding to the computing task are met.
2. The task scheduling method according to claim 1, characterized in that: The detecting server sends an operation instruction to other devices according to the computing task, including: Obtaining a computing task through the detection server, and performing task decomposition on the computing task to obtain a task decomposition result; For each of the remaining devices, a number of instructions and instruction processing sequences are arranged according to the task decomposition results, and operation instructions for the device are generated and issued according to each of the instructions and the instruction processing sequence.
3. The task scheduling method according to claim 2, characterized in that: The obtaining of the computing task through the detection server includes: Obtaining a task canvas through the detection server; A computing task is identified and obtained according to the task canvas.
4. The task scheduling method according to claim 2, characterized in that: The step of performing task decomposition on the computing task to obtain a task decomposition result includes: Acquire operation symbols and priorities corresponding to the operation symbols according to the computing task; Decomposing the computing task according to the operation symbols and the priority of the operation symbols to obtain a plurality of sub-computing tasks and a task processing sequence; The task decomposition result is determined according to each of the sub-computing tasks and the task processing order.
5. The task scheduling method according to claim 4, characterized in that: The issuing of update operation instructions to other devices according to the reported data includes: Processing each of the sub-computing tasks according to each of the reported data and the task processing order; For each of the remaining devices, a number of instructions and instruction processing sequences are arranged according to the unprocessed sub-computing tasks, and an update operation instruction for the device is generated and issued according to each of the instructions and the instruction processing sequence.
6. The task scheduling method according to claim 2, characterized in that: The operation instructions include collection instructions, and the collection instructions of each device are used to indicate the type of data probe currently used by the device.
7. The task scheduling method according to claim 1, characterized in that: The method further comprises: The situation awareness result corresponding to the device group is generated through the reported data or the updated reported data of the remaining devices.
8. A task scheduling system, characterized in that: The system comprises: An instruction arrangement module is used to select a detection server from the device group, issue an operation instruction to the remaining devices through the detection server according to the computing task, and obtain the report data generated by the remaining devices in response to the operation instruction; An instruction re-arrangement module, used for issuing update operation instructions to other devices according to each of the reported data, and obtaining update report data generated by other devices in response to the update operation instructions; A loop module is used to determine whether each of the updated reported data meets the computing requirements corresponding to the computing task. If not, the updated reported data is used as the reported data, and the step of issuing update operation instructions to the remaining devices according to each of the reported data is continued until the computing requirements corresponding to the computing task are met.
9. A terminal, characterized in that: The terminal includes a memory and at least one processor; the memory stores a program, the program including instructions for executing the task scheduling method as described in any one of claims 1-7; and the processor is used to execute the program.
10. A computer-readable storage medium having a plurality of instructions stored thereon, characterized in that: The instructions are suitable for being loaded and executed by a processor to implement the steps of the task scheduling method as described in any one of claims 1-7.