WO2015139164A1 - 一种任务调度的方法、装置及设备 - Google Patents

一种任务调度的方法、装置及设备 Download PDF

Info

Publication number
WO2015139164A1
WO2015139164A1 PCT/CN2014/073495 CN2014073495W WO2015139164A1 WO 2015139164 A1 WO2015139164 A1 WO 2015139164A1 CN 2014073495 W CN2014073495 W CN 2014073495W WO 2015139164 A1 WO2015139164 A1 WO 2015139164A1
Authority
WO
WIPO (PCT)
Prior art keywords
task
resource consumption
information
resource
consumption information
Prior art date
Application number
PCT/CN2014/073495
Other languages
English (en)
French (fr)
Inventor
王光明
周红兵
Original Assignee
华为技术有限公司
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 华为技术有限公司 filed Critical 华为技术有限公司
Priority to PCT/CN2014/073495 priority Critical patent/WO2015139164A1/zh
Priority to CN201480001794.1A priority patent/CN104520815B/zh
Priority to US15/127,001 priority patent/US10216542B2/en
Publication of WO2015139164A1 publication Critical patent/WO2015139164A1/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues

Definitions

  • the present invention relates to the field of computer technologies, and in particular, to a method, apparatus, and device for task scheduling. Background technique
  • the data warehouse is used to obtain information from the database. Its task corresponds to one or more data processing steps, and each task may have one-way dependency, independence or time constraint.
  • the task scheduling system is an important part of the data warehouse, which is used to schedule the computing resources of the data warehouse to complete each task processing.
  • the existing data warehouse task scheduling process is: the task scheduling system drives the task execution according to the task set configured by the data developer in the task deployment system, and the task dependencies in the task set; after each task is executed, Performing the next task in turn or according to the dependencies between tasks does not take into account the amount of resources required for the next task, resulting in low resource utilization and low processing performance during task execution.
  • Embodiments of the present invention provide a method, apparatus, and device for task scheduling, which can improve data processing performance and resource utilization.
  • a first aspect of the present invention provides a method for task scheduling, including:
  • the resource consumption information of each task in the task set is compared with the available computing resource information, and the task in the task set whose corresponding comparison result satisfies the preset task scheduling condition is determined as the target task.
  • the method further includes:
  • the task scheduling diagram includes a task tag that identifies each task in the task set and a relationship tag that identifies task dependencies and/or time dependencies between tasks.
  • the task scheduling map further includes a resource consumption information flag of each task in the task set, and from the task set Determine the progress of the execution of the target task;
  • the resource consumption information tag is used to identify resource consumption information of each task in the task set; the execution progress of the target task is performed according to resource consumption information of the target task and the currently detected target task. The consumed resource information in the process is obtained.
  • the task resource consumption mapping table is a preset record of actual resource consumption information after each task in the task set is executed in a previous scheduling period.
  • the resource consumption information of each task is compared with the available computing resource information, and the task in the task set that meets a preset task scheduling condition is determined as a target task.
  • the comparison result is that the resource consumption of the task is less than the available resource amount
  • the comparison result corresponding to the task is recorded to satisfy the preset task scheduling condition
  • At least one task in the task set that records the comparison result satisfying the task scheduling condition is determined as the target task of the current scheduling period.
  • the comparing by using the resource consumption information of each task with the available computing resource information And determining, in the task set, a task whose corresponding comparison result meets a preset task scheduling condition is a target task, including:
  • the comparison result is that the resource consumption of the task is less than the available resource amount
  • the comparison result corresponding to the task is recorded to satisfy the preset task scheduling condition
  • At least one task in the task subset that records the comparison result satisfying the task scheduling condition is used as the target task of the current scheduling period.
  • the method further includes:
  • the method further includes:
  • a prompt message is sent to prompt to optimize the task; Or, when the task execution progress generated in the task scheduling diagram is less than a preset threshold, a prompt message is sent to prompt to optimize the task.
  • a second aspect of the present invention provides a device for scheduling a task, including:
  • An available computing resource information obtaining module configured to obtain available computing resource information for performing a task
  • a task resource consumption information determining module configured to determine resource consumption information of each task in the task set when receiving the configured task set
  • a comparison determining module configured to compare resource consumption information of each task determined by the task resource consumption information determining module with available computing resource information obtained by the available computing resource information acquiring module, and according to the comparison result, The task in the task set whose corresponding comparison result satisfies the preset task scheduling condition is determined as the target task.
  • the apparatus further includes: a task scheduling map generating module, configured to generate, according to a task dependency relationship and/or a time dependency relationship of each task in the task set Task schedule diagram;
  • the task scheduling map includes a relationship tag that identifies a task tag of each task in the task set and a task dependency and/or a time dependency relationship between the identified tasks.
  • the task scheduling diagram generated by the task scheduling map generating module further includes a resource consumption information flag of each task in the task set. And an execution progress of the target task determined from the set of tasks;
  • the resource consumption information tag is used to identify resource consumption information of each task in the task set; the execution progress of the target task is performed according to resource consumption information of the target task and the currently detected target task. The consumed resource information in the process is obtained.
  • the task resource consumption information determining module Includes:
  • a searching unit configured to: when the task set that has been configured is received, search for the actual resource consumption information of each task in the task set in the previous scheduling period from the task resource consumption mapping table; Estimating the resource consumption information of each task in the task set in the current scheduling period by the actual resource consumption information searched by the searching unit;
  • the task resource consumption mapping table is preset to record actual resource consumption information after each task in the task set is executed in a previous scheduling period.
  • the comparison determining module includes:
  • a first comparing unit configured to compare, by using a resource consumption quantity indicated by the resource consumption information of each task of the task set, with an available resource quantity indicated by the available computing resource information
  • a first recording unit configured to: when the comparison result of the first comparison unit is that the resource consumption amount of the task is less than the available resource amount, record a comparison result corresponding to the task to match a preset task scheduling condition;
  • a first determining unit configured to determine, as the target task of the current scheduling period, the at least one task in the task set that the first recording unit records the comparison result satisfies the task scheduling condition.
  • the comparison determining module includes:
  • a type matching unit configured to compare a task cluster type indicated by resource consumption information of each task in the task set with an available cluster type indicated by the available computing resource information, and determine the task from the task set a task sub-set of the cluster type matching the available cluster type;
  • a second comparing unit configured to use the resource consumption quantity indicated by the resource consumption information of the task in the task sub-set determined by the type matching unit, and the available computing resource information The amount of resources indicated is compared;
  • a second recording unit configured to: when the comparison result of the second comparison unit is that the resource consumption amount of the task is less than the available resource amount, record that the comparison result corresponding to the task satisfies a preset task scheduling condition;
  • a second determining unit configured to use at least one task that meets the task scheduling condition in the comparison result recorded by the second recording unit in the task subset as a target task of the current scheduling period.
  • the device further includes:
  • control module configured to control target task execution determined in the task set
  • An actual resource consumption information obtaining module configured to acquire actual resource consumption information of the target task in a current scheduling period, after the control module controls the execution of the target task;
  • an update module configured to update actual resource consumption information of the target task recorded in the preset task resource consumption mapping table according to the actual resource consumption information of the target task in the current scheduling period acquired by the actual resource information obtaining module.
  • the apparatus further includes:
  • a prompt message issuing module configured to: when the resource consumption quantity indicated by the resource consumption information of each task in the task set is greater than the available resource quantity indicated by the available computing resource information, or generated in the task scheduling diagram When the execution progress of the task is less than the preset threshold, a prompt message is issued to modify the dependency of the task.
  • a third aspect of the present invention provides a computer storage medium
  • the computer storage medium can store a program that, when executed, includes some or all of the steps of a method of task scheduling provided by the first aspect.
  • a fourth aspect of the present invention provides a task scheduling device, including: a processor, a communication interface, configured to receive a configured task set and an available computing resource in a data warehouse, where the processor is configured to acquire a task The available computing resource information; when receiving the configured task set, determining resource consumption information of each task in the task set; and resource consumption information of each task in the task set and the available computing resource The information is compared, and the task in the task set whose corresponding comparison result satisfies the preset task scheduling condition is determined as the target task.
  • the processor is further configured to: generate a task scheduling map according to a task dependency relationship and/or a time dependency relationship of each task in the task set;
  • the task scheduling map includes a relationship tag that identifies a task tag of each task in the task set and a task dependency and/or a time dependency relationship between the identified tasks.
  • the task scheduling map generated by the processor further includes a resource consumption information flag of each task in the task set and an execution progress of the target task determined from the task set;
  • the resource consumption information tag is used to identify resource consumption information of each task in the task set; the execution progress of the target task is performed according to resource consumption information of the target task and the currently detected target task. The consumed resource information in the process is obtained.
  • the processor is specifically configured to:
  • the task resource consumption mapping table searches for actual resource consumption information of each task in the task set in the previous scheduling period;
  • the task resource consumption mapping table is a preset record of actual resource consumption information after each task in the task set is executed in a previous scheduling period.
  • the processor is specifically configured to:
  • the comparison result is that the resource consumption of the task is less than the available resource amount
  • the comparison result corresponding to the task is recorded to satisfy the preset task scheduling condition
  • At least one task in the task set that records the comparison result satisfying the task scheduling condition is determined as the target task of the current scheduling period.
  • the processor is further configured to:
  • the comparison result is that the resource consumption of the task is less than the available resource amount
  • the comparison result corresponding to the task is recorded to satisfy the preset task scheduling condition
  • At least one task in the task subset that records the comparison result satisfying the task scheduling condition is used as the target task of the current scheduling period.
  • the processor is further configured to:
  • the processor is further configured to:
  • a prompt message is sent to prompt to optimize the task.
  • the device further includes: a display,
  • the display is configured to display a result of execution by the processor. Calculating resource information, and determining resource consumption information of each task in the task set; The information is compared with the available computing resource information, and the task whose comparison result satisfies the preset task scheduling condition is determined as the target task, the resource utilization of the task scheduling process is optimized, and the processing performance of the data warehouse is improved.
  • FIG. 1 is a schematic flowchart of a method for task scheduling according to an embodiment of the present invention
  • FIG. 2 is a schematic flowchart of another method for task scheduling according to an embodiment of the present invention
  • FIG. 4 is a schematic structural diagram of an apparatus for task scheduling according to an embodiment of the present invention
  • FIG. 5 is a schematic structural diagram of another apparatus for task scheduling according to an embodiment of the present invention
  • FIG. 7 is a schematic diagram of a specific structure of the comparison determining module in FIG. 5;
  • FIG. 8 is a schematic structural diagram of a data warehouse task scheduling system according to an embodiment of the present invention
  • FIG. 9 is a specific task scheduling diagram according to an embodiment of the present invention
  • FIG. 10 is a flowchart of a specific data warehouse task scheduling according to an embodiment of the present invention
  • FIG. 11 is a schematic structural diagram of a task scheduling device according to an embodiment of the present invention. detailed description
  • FIG. 1 is a schematic flowchart of a method for task scheduling according to an embodiment of the present invention.
  • the method may be applied to a data warehouse and a cloud computing system, and may be specifically configured by a device that performs task scheduling or
  • the server implementation, the method of the embodiment of the present invention specifically includes:
  • the step may specifically obtain the current available computing resource information of the data warehouse from the resource monitoring system integrated in the data warehouse (the resource monitoring system may deploy the overall resource monitoring agent in the data warehouse, For monitoring all available computing resources in the data warehouse cluster, the available resource amount indicated by the available computing resource information may be determined according to CPU usage and available memory space; and, if the available resources in the data warehouse include different functions Cluster type, such as source data reception, batch data processing, real-time data processing, data transmission, etc., that is, performing different types of tasks on each cluster, the available computing resource information not only indicating the amount of resources available, but also indicating the available The type of function cluster corresponding to the amount of resources.
  • Cluster type such as source data reception, batch data processing, real-time data processing, data transmission, etc.
  • the task deployment system can be used to complete the deployment and configuration of the task, and then the task deployment system deploys tasks and task dependencies on the local end, that is, the task collection configured by the task deployment system received by the local end.
  • the set of tasks includes tasks and their dependencies.
  • the determining the resource consumption information of each task in the task set is: first, acquiring, from the resource monitoring system in the data warehouse, the resource consumption of each task in the task set in the last scheduling period.
  • the resource monitoring system deploys a task resource monitoring agent in the data warehouse cluster, which can be specifically developed according to various task types, and is used to monitor computing resources consumed by each task); and then, resources of each task in the current scheduling period are estimated. Consumption information. Specifically, since the resources consumed by the same task in the adjacent scheduling period are substantially equal, the resource consumption of each task in the previous scheduling period can be used as the resource consumption information of each task in the current scheduling period.
  • the resource consumption information of the last scheduling period of each task in the task set may also be obtained by searching from the task resource consumption mapping table stored in the local end, where the task resource consumption mapping table is a preset record. There is actual resource consumption information after each task in the task set is executed in the previous scheduling period.
  • the task scheduling condition is a task that only schedules resource consumption to be smaller than the available resource amount.
  • the S103 further includes a task cluster type indicated by the resource consumption information of each task in the task set, and an available cluster indicated by the available computing resource information.
  • the type ie, the available cluster type corresponding to the aforementioned available resource amount
  • the available cluster type is matched, and at least one task matching the available cluster type is matched from the task set, and these tasks constitute a task subset.
  • the at least one task indicated by the resource consumption information of the task in the matched task subset is less than the at least one task of the available resource indicated by the available computing resource as the target task.
  • the embodiment of the present invention obtains available computing resource information for executing a task, and determines resource consumption information of each task in the task set; compares the resource consumption information with the available computing resource information, and compares the comparison result with the pre-preparation
  • the task of the set task scheduling condition is determined as the target task, and the method optimizes resource utilization according to the available computing resource information scheduling task, and improves the processing performance of the data warehouse.
  • FIG. 2 is a schematic flowchart of another method for task scheduling according to an embodiment of the present invention.
  • the method may be applied to a data warehouse or a cloud computing system, and may be implemented by a device or a server that performs task scheduling, and the method specifically includes:
  • the task resource consumption mapping table is preset to record actual resource consumption information after each task in the task set is executed in a previous scheduling period, and actual resource consumption information in the task resource consumption mapping table may be
  • the resource monitoring system acquires or directly obtains from the task resource monitoring agent deployed by the resource monitoring system in the data warehouse cluster.
  • S203 Estimate resource consumption information of each task in the task set in a current scheduling period according to actual resource consumption information of a previous scheduling period.
  • S204 Compare, by the resource consumption quantity indicated by the resource consumption information of each task in the task set, with the available resource quantity indicated by the available computing resource information;
  • S206 Determine at least one task in the task set that records the comparison result that meets the task scheduling condition as the target task of the current scheduling period.
  • the task scheduling map includes a task tag that identifies each task in the task set and a relationship tag that identifies a task dependency and/or a time dependency relationship between the tasks, and resource consumption information tags of each task in the task set. And the progress of execution of the target task determined from the set of tasks.
  • the resource consumption information tag is used to identify resource consumption information of each task in the task set; the execution progress of the target task is based on resource consumption information of the target task and the currently detected target task is in execution The resource information that has been consumed is obtained.
  • the task scheduling diagram may be generated when the task set is received (the task scheduling diagram includes each task tag and the dependency tag); in the task scheduling process, generating the tasks in the task set The resource consumption information flag; when determining the target task to be scheduled, continue to generate the execution progress of the target task.
  • the local end can send a task schedule map including the information to the terminal for display, so that the development or maintenance personnel can monitor or manage the task scheduling process in real time.
  • the actual resource consumption information of the acquiring the target task in the current scheduling period may be obtained from the resource monitoring system, or directly obtained from the task resource monitoring agent deployed by the resource monitoring system in the data warehouse cluster.
  • the prompt message is sent to prompt to optimize the task.
  • the task may be prompted by changing a color mark of the task in the task schedule, or by prompting the task in the form of a pop-up alert prompt box.
  • Maintenance is required by developers or maintenance personnel.
  • the embodiment of the present invention obtains the available computing resource information for executing the task, and determines the resource consumption information of each task in the task set, and compares the available computing resource information with the resource consumption information to match the comparison result with the preset task scheduling condition. At least one task is determined as the target task; at the same time, the execution progress of the service provides an intuitive basis for optimizing the task scheduling, and improves the processing performance of the data warehouse.
  • FIG. 3 is a schematic flowchart of still another method for task scheduling according to an embodiment of the present disclosure.
  • the method may be applied to a data warehouse or a cloud computing system, and may be implemented by a device or a server that performs task scheduling.
  • Steps S301 to S303 of the method are the same as S201 to S203 of the above embodiment, and will not be described in detail herein.
  • the method in the embodiment of the present invention performs the following steps:
  • the number of tasks in the task subset may be less than or equal to the task set.
  • the comparison result recorded in the task sub-set satisfies at least the task scheduling condition.
  • a task is the target task of the current scheduling cycle.
  • the task scheduling map includes a relationship tag that identifies a task tag of each task in the task set and a task dependency and/or a time dependency relationship between the identified tasks.
  • the task scheduling map further includes a resource consumption information flag of each task in the task set and an execution progress of the target task determined from the task set; wherein the resource consumption information flag is used to identify the task The resource consumption information of each task in the collection; the execution progress of the target task is obtained according to the resource consumption information of the target task and the currently detected consumed resource information of the target task in the execution process.
  • S310 to S313 of the embodiment of the present invention are the same as steps S209 to S212 of the above embodiment of the invention, and are not described in detail herein.
  • the embodiment of the present invention determines, from the task set, a task subset of the resource consumption function cluster type indicated by the resource consumption information of the task and the available functional cluster type. At least one target task is determined from the task subset, thereby optimizing the resource utilization of the data warehouse and improving the processing performance of the data warehouse.
  • the foregoing two embodiments may add a step of determining whether the available resource information is a single function cluster type, and the foregoing invention embodiment may constitute a technical solution to optimize the task scheduling process and improve processing performance.
  • FIG. 4 is a schematic structural diagram of an apparatus for task scheduling according to an embodiment of the present disclosure, where the apparatus specifically includes:
  • An available computing resource information obtaining module 1 is configured to obtain available computing resource information for performing a task
  • the available computing resource information obtaining module 1 may obtain the current available computing resource information of the data warehouse from the resource monitoring system integrated in the data warehouse, and the available resource amount indicated by the available computing resource information may be based on the CPU usage. And the available memory space, etc.; in addition, if the data warehouse includes different functional cluster types, such as source data reception, bulk data processing, real-time data processing, data transmission, etc., that is, performing different types of tasks on each cluster, then Available computing resources
  • the source information indicates not only the amount of resources available, but also the type of functional cluster corresponding to the amount of available resources.
  • the task resource consumption information determining module 2 is configured to determine resource consumption information of each task in the task set when receiving the configured task set;
  • the task resource consumption information determining module 2 determines that the resource consumption information of each task in the task set is: first, the task resource consumption information determining agent deployed by the task resource consumption information determining module 2 from the data warehouse The resource consumption amount of each task in the task set in the last scheduling period is obtained. Then, the task resource consumption information determining module 2 estimates resource consumption information of each task in the current scheduling period. Since the resources consumed by the same task in the adjacent scheduling period are substantially equal, the resource consumption of each task in the previous scheduling period can be used as the resource consumption information of each task in the current scheduling period.
  • the resource consumption information of the last scheduling period of each task in the task set may be obtained by the task resource consumption information determining module 2 from the task resource consumption mapping table, where the task resource consumption mapping table is obtained.
  • the pre-set record has actual resource consumption information after each task in the task set is executed in the previous scheduling period.
  • a comparison determining module 3 configured to compare resource consumption information of each task determined by the task resource consumption information determining module 2 with available computing resource information obtained by the available computing resource information acquiring module 1, and according to the comparison As a result, the task in the task set whose corresponding comparison result satisfies the preset task scheduling condition is determined as the target task.
  • the comparison determining module 3 compares the resource consumption information of each task in the task set with the available computing resource information, specifically, the resource consumption amount indicated by the resource consumption information and the available calculation The amount of available resources indicated by the resource information is compared; the task whose comparison result is that the resource consumption of the task is smaller than the available resource quantity is recorded as the comparison result of the task satisfies the preset task scheduling condition; At least one task of the task scheduling condition is the target task.
  • the task scheduling condition is a task that only schedules resource consumption to be smaller than the available resource amount.
  • the comparison determining module 3 further displays, according to the task cluster type indicated by the resource consumption information of each task in the task set, and the available computing resource information.
  • the cluster type that is, the available cluster type corresponding to the foregoing available resource amount
  • the cluster type is matched, and at least one task matching the cluster type is determined from the task set. Tasks constitute a subset of tasks.
  • the comparison determining module 3 uses at least one task whose resource consumption amount indicated by the resource consumption information of the task in the matched task subset is smaller than the available resource amount indicated by the available computing resource as the target task.
  • the available computing resource information acquiring module 1 obtains available computing resource information for executing a task, and the task resource consumption information determining module 2 determines resource consumption information of each task in the task set; the comparison determining module 3 will The resource consumption information is compared with the available computing resource information, and the task whose comparison result satisfies the preset task scheduling condition is determined as the target task, and the resource utilization rate is optimized according to the available computing resource information scheduling task, thereby improving the processing performance of the data warehouse.
  • FIG. 5 is a schematic structural diagram of another apparatus for task scheduling according to an embodiment of the present invention.
  • the apparatus includes the available computing resource obtaining module 1, the task resource consumption information determining module 2, and the comparison determining module 3, except the foregoing embodiment. , Also includes:
  • a task scheduling diagram generating module 4 configured to generate a task scheduling map according to a task dependency relationship and/or a time dependency relationship of each task in the task set;
  • the task scheduling map includes a relationship tag that identifies a task tag of each task in the task set and a task dependency and/or a time dependency relationship between the identified tasks.
  • the task scheduling map generated by the task scheduling map generating module 4 further includes a resource consumption information flag of each task in the task set and an execution progress of the target task determined from the task set;
  • the task scheduling map generating module 4 may be a visualization module of the task scheduling apparatus, according to a task dependency relationship and/or a time dependency relationship of each task in the task set, where each task in the task set is The resource consumption information and the execution progress of the target task determined from the task set generate a task scheduling map, so that the information can be visually viewed during the task scheduling process.
  • the task resource consumption information determining module 2 includes:
  • the searching unit 21 is configured to: when the task set that has been configured is received, search the task resource consumption mapping table for actual resource consumption information of each task in the task set in the last scheduling period; and the estimating unit 22 is configured to: Estimating resource consumption information of each task in the task set in a current scheduling period according to actual resource consumption information searched by the searching unit;
  • the task resource consumption mapping table is a preset record having each of the task sets.
  • the actual resource consumption information after the execution of the last scheduling period.
  • the comparison determining module 3 includes:
  • a first comparing unit 31 configured to compare, by using a resource consumption quantity indicated by the resource consumption information of each task of the task set, with an available resource quantity indicated by the available computing resource information;
  • the first recording unit 32 is configured to: when the comparison result of the first comparison unit is that the resource consumption amount of the task is less than the available resource amount, record that the comparison result corresponding to the task matches the preset task scheduling condition;
  • the first determining unit 33 is configured to determine, as the target task of the current scheduling period, the at least one task in the task set that the first recording unit records the comparison result that meets the task scheduling condition.
  • the comparison determining module 3 further includes:
  • the type matching unit 34 is configured to compare, by using the task cluster type indicated by the resource consumption information of each task in the task set, the available cluster type indicated by the available computing resource information, and determining the a task subset of the task cluster type that matches the available cluster type;
  • a second comparing unit 35 configured to compare, by using the resource consumption quantity indicated by the resource consumption information of the task in the task subset set determined by the type matching unit, with the available resource quantity indicated by the available computing resource information;
  • the second recording unit 36 is configured to: when the comparison result of the second comparison unit is that the resource consumption amount of the task is less than the available resource amount, record that the comparison result corresponding to the task satisfies a preset task scheduling condition;
  • the second determining unit 37 is configured to use, as the target task of the current scheduling period, at least one task that meets the task scheduling condition by the comparison result recorded by the second recording unit in the task subset.
  • the device further includes:
  • control module 5 configured to control target task execution determined in the task set
  • the actual resource consumption information obtaining module 6 is configured to acquire actual resource consumption information of the target task in the current scheduling period after the control module controls the execution of the target task;
  • the update module 7 is configured to update the actual resource consumption information of the target task according to the current scheduling period acquired by the actual resource information obtaining module, and update the recorded location in the preset task resource consumption mapping table. The actual resource consumption information of the target task.
  • the device further includes:
  • the prompt message issuance module 8 is configured to: when the resource consumption quantity indicated by the resource consumption information of each task in the task set is greater than the available resource quantity indicated by the available computing resource information, or generated in the task scheduling diagram When the execution progress of the task is less than the preset threshold, a prompt message is issued to prompt to modify the task or its dependency.
  • the embodiment of the present invention determines at least one target task from the task set according to the result of the available computing resource information acquiring module 1 and the task resource consumption information module 2, thereby optimizing resource utilization of the data warehouse, and Improve the processing performance of the data warehouse.
  • the data warehouse is a storage for providing information for online decision analysis for decision makers, and there may be a single between tasks.
  • the present invention provides a method as shown in FIG. 8 , which is related to how to improve the performance of the data warehouse and the resource utilization in the face of a large number of processing tasks in the data warehouse.
  • the data warehouse system mainly includes a task deployment system, a data warehouse cluster, and a task scheduling system.
  • the task deployment system performs task deployment and task configuration in the data warehouse cluster, and configures the dependencies and timing relationships of each task in the task scheduling system.
  • the data developer or maintenance personnel can deploy the tasks through the interface provided by the task deployment system.
  • the task deployment system also deploys the overall resource monitoring agent and the task resource monitoring agent in the data warehouse cluster to obtain the available computing resource information and the resource consumption information of the task in real time in the data warehouse, and according to the foregoing embodiment, Any one of the task scheduling methods performs task scheduling on the data warehouse cluster, so that each task is performed in an orderly manner in the data warehouse cluster, and the resource utilization rate is improved.
  • the task scheduling system may include the device for scheduling tasks according to the foregoing embodiment.
  • the available computing resource information acquiring module in the task scheduling device is specifically configured to complete the available computing resource information of the data warehouse. State management, and maintain real-time synchronization with the real situation of the data warehouse resource;
  • the comparison determination module is used to manage various scheduling rules (in addition to the task scheduling method described in the above embodiment of the invention, the task collection of the data warehouse is also updated, Archive, and generate various reports to be transmitted to the terminal display), that is, the comparison determination module is the core of the task scheduling system; when the comparison determination module determines the target task to be scheduled, the control module may also control the target task execution ;
  • the task scheduling map generation module in the task scheduling system also implements the visualization of the schedule, that is, generates a task schedule map, and the tasks displayed in the task schedule map, the dependencies between the tasks, the resource consumption information of the tasks, and the execution progress of the target tasks are performed.
  • the task scheduling situation is displayed to the administrator in an intuitive manner; after the execution of the target task is completed, the actual resource consumption information obtaining module in the task scheduling system can also obtain the actual resource consumption information of the target task in the current scheduling period in real time; Updating the information recorded in the task resource consumption mapping table in real time according to the result of the actual resource consumption information obtaining module; in addition, the task scheduling system further has a prompt message issuing module configured to be used for each task in the task set When the resource consumption indicated by the resource consumption information is greater than the available resource quantity indicated by the available computing resource information, or when the execution progress of the task generated in the task scheduling diagram is less than a preset threshold, a prompt message is sent to the terminal to prompt data development. Excellent personnel or maintenance personnel The task.
  • the task scheduling diagram generated by the task scheduling system may represent each task by a circle, and may be named by a task tag, such as task 1, task 2, task 3, task 4, task 5, task 6, Task 7; the connection between tasks represents the dependencies between tasks (the tasks on the right depend on the tasks on the left), such as the execution of tasks 4 depends on the execution results of tasks 2 and 3.
  • the size of the circle indicates that the task is pre-
  • the resource consumption indicated by the estimated resource consumption information such as the estimated resource consumption of task 1 is greater than the estimated resource consumption of task 2; the blank or shade of the circle indicates the execution state of the task, and the circle with blank and shadow indicates the target The task is being executed.
  • the ratio of blank to shadow indicates the progress of the task.
  • task 1, task 2, task 3, task 4 and task 7 indicate not executed, task 5 indicates that it has been executed, task 6 indicates that it is being executed, and execution has been performed.
  • the task scheduling diagram may also represent information such as attributes, states, dependencies, and timing relationships of the tasks in other ways.
  • an embodiment of the present invention also provides a specific data warehouse task scheduling process as shown in FIG. 10, including:
  • the resource monitoring system acquires current available computing resource information of the data warehouse.
  • the task scheduling system acquires the available computing resource information from the resource monitoring system.
  • the data developer deploys a task set in the task scheduling system by using a task deployment system, where the task set includes deployed tasks and dependencies between the tasks;
  • the task scheduling system searches for the actual resource consumption information of each task in the task set in the previous scheduling period from the task resource consumption information mapping table, according to the actual resource consumption information. Estimating resource consumption information of each task in the task set in a current scheduling period;
  • the task scheduling system may also obtain real-time resource consumption information of each task in the task set in the previous scheduling period in real time from the resource monitoring system.
  • the task scheduling system determines, according to the available computing resource information and actual resource consumption information of each task in a previous scheduling period, at least one target task that meets a preset to-be-scheduled condition;
  • the task scheduling system acquires actual resource consumption information of the target task in a current scheduling period from the resource monitoring system.
  • the task scheduling system updates the task set and the task resource consumption information mapping table according to the target task and the actual resource consumption information of the target task in the current scheduling period.
  • the task scheduling system updates the task set after controlling the determined target task, and further, whether the task set is not executed by the preset task counter or the task scanner The task is stopped if the result of the detection is that there are no unexecuted tasks in the task set; if the result of the detection is that there is an unexecuted arbitrary method in the task set, the task scheduling is started.
  • step S403 is performed.
  • the functional cluster type of the target task determined in step S405 must also match the available functional cluster type indicated by the available computing resource information, for example, the big data processing task must be Performing on a big data processing cluster, etc.
  • the embodiment of the invention performs task scheduling according to the matching of the available computing resource information of the data warehouse and the estimated resource consumption information of the task, thereby maximally utilizing the computing resources and improving the processing performance of the data warehouse.
  • the embodiment of the present invention further provides a computer storage medium, wherein the computer storage medium may store a program, where the program includes a part of the method of task scheduling described in the foregoing embodiments of FIG. 1 to FIG. 3 or All steps.
  • FIG. 11 is a schematic structural diagram of a task scheduling device according to an embodiment of the present invention.
  • the task scheduling device may include a processor 01 and a communication interface 02. One or more are considered, and one processor 01 is taken as an example in FIG. 11).
  • the processor 01 and the communication interface 02 may be connected through a communication bus or other manners, wherein FIG. 11 is exemplified by a communication bus connection.
  • the communication interface 02 is configured to receive a configured task set and available computing resource information in the data warehouse
  • the processor 01 is configured to acquire available computing resource information for performing a task; determining, when receiving the configured task set, resource consumption information of each task in the task set; The resource consumption information of the tasks is compared with the available computing resource information, and the task in the task set whose corresponding comparison result satisfies the preset task scheduling condition is determined as the target task.
  • the processor 01 is further configured to:
  • the task scheduling map includes a relationship tag that identifies a task tag of each task in the task set and a task dependency and/or a time dependency relationship between the identified tasks.
  • the task scheduling map generated by the processor 01 further includes a resource consumption information flag of each task in the task set and an execution progress of the target task determined from the task set;
  • the resource consumption information tag is used to identify resource consumption information of each task in the task set; the execution progress of the target task is performed according to resource consumption information of the target task and the currently detected target task. The consumed resource information in the process is obtained.
  • the processor 01 is specifically configured to:
  • the task resource consumption mapping table is a preset record of actual resource consumption information after each task in the task set is executed in a previous scheduling period.
  • the processor 01 is specifically configured to:
  • the comparison result is that the resource consumption of the task is less than the available resource amount
  • the comparison result corresponding to the task is recorded to satisfy the preset task scheduling condition
  • At least one task in the task set that records the comparison result satisfying the task scheduling condition is determined as the target task of the current scheduling period.
  • the processor 01 is specifically configured to:
  • the comparison result is that the resource consumption of the task is less than the available resource amount
  • the comparison result corresponding to the task is recorded to satisfy the preset task scheduling condition
  • At least one task in the task subset that records the comparison result satisfying the task scheduling condition is used as the target task of the current scheduling period.
  • the processor 01 is further configured to:
  • the processor 01 is further configured to:
  • a prompt message is sent to prompt to optimize the task.
  • the task scheduling device further includes a display 03.
  • the display 03 is configured to display a result performed by the processor 01, such as displaying the processor 01 generated task scheduling diagram.
  • the embodiment of the present invention optimizes the task scheduling process by acquiring the available computing resource information for executing the task, and searching for the target task matching the available computing resource information according to the received resource consumption information of each task, and according to the generated scheduling.
  • the real-time view of the resource consumption information and execution progress of the task provides an intuitive basis for task scheduling optimization, thereby improving the performance of the data warehouse.
  • the storage medium may be a magnetic disk, an optical disk, a read-only memory (ROM), or a random access memory (RAM).

Abstract

本发明实施例公开了一种任务调度的方法、装置及设备,其中,所述方法包括:获取用于执行任务的可用计算资源信息;在接收到已配置完成的任务集合时,确定所述任务集合中每个任务的资源消耗信息;将所述任务集合中每个任务的资源消耗信息与所述可用计算资源信息进行比较,并将所述任务集合中对应比较结果满足预置的任务调度条件的任务确定为目标任务。另外,生成的任务调度图包括所述任务集合中各任务、各任务之间的依赖关系、资源消耗信息、目标任务的执行进度等信息。采用本发明,可优化任务调度,使得任务调度优化更加直观,从而提高数据仓库的处理性能。

Description

一种任务调度的方法、 装置及设备 技术领域
本发明涉及计算机技术领域,尤其涉及一种任务调度的方法、装置及设备。 背景技术
数据仓库用于从数据库中获取信息, 其任务对应一个或多个数据处理步 骤, 各任务之间可能存在单向依赖、 独立或时间约束等特点。 任务调度系统是 数据仓库的重要组成部分, 用于调度数据仓库的计算资源完成各个任务处理。
现有的数据仓库任务调度的过程为:任务调度系统根据数据开发人员在任 务部署系统中配置的任务集合, 以及任务集合中各任务依赖关系等,驱动任务 执行; 每个任务执行完成后,再依次或者根据任务间的依赖关系执行下一个任 务, 并不会考虑下一个任务所需资源量的大小,导致任务执行过程资源利用率 低, 处理性能低。 发明内容
本发明实施例提供一种任务调度的方法、装置及设备, 可提高数据处理性 能和资源利用率。
本发明第一方面提供了一种任务调度的方法, 包括:
获取用于执行任务的可用计算资源信息;
在接收到已配置完成的任务集合时,确定所述任务集合中每个任务的资源 消耗信息;
将所述任务集合中每个任务的资源消耗信息与所述可用计算资源信息进 行比较,并将所述任务集合中对应比较结果满足预置的任务调度条件的任务确 定为目标任务。
在第一种可能的实现方式中, 所述方法还包括:
根据所述任务集合中每个任务的任务依赖关系和 /或时间依赖关系, 生成 任务调度图; 其中,所述任务调度图包括标识所述任务集合中每个任务的任务标记和标 识任务间任务依赖关系和 /或时间依赖关系的关系标记。
结合第一方面的第一种可能的实现方式,在第二种可能的实现方式中,所 述任务调度图还包括所述任务集合中每个任务的资源消耗信息标记和从所述 任务集合中确定出的目标任务的执行进度;
其中,所述资源消耗信息标记用于标识所述任务集合中每个任务的资源消 耗信息;所述目标任务的执行进度是根据目标任务的资源消耗信息和当前检测 到的所述目标任务在执行过程中的已消耗资源信息获得的。
结合第一方面, 或第一方面的第一种可能的实现方式,或第一方面的第二 种可能的实现方式,在第三种可能的实现方式中,在接收到已配置完成的任务 集合时, 所述确定出所述任务集合中每个任务的资源消耗信息, 包括:
从任务资源消耗映射表中查找所述任务集合中每个任务在上一调度周期 的实际资源消耗信息;
根据上一调度周期的实际资源消耗信息估算所述任务集合中每个任务在 当前调度周期的资源消耗信息;
其中,所述任务资源消耗映射表为预先设置的记录有所述任务集合中各任 务在上一调度周期执行后的实际资源消耗信息。
结合第一方面, 或第一方面的第一种可能的实现方式,或第一方面的第二 种可能的实现方式,或第一方面的第三种可能的实现方式,在第四种可能的实 现方式中,所述将所述每个任务的资源消耗信息与所述可用计算资源信息进行 比较,并将所述任务集合中对应比较结果满足预置的任务调度条件的任务确定 为目标任务, 包括:
将所述任务集合每个任务的所述资源消耗信息指示的资源消耗量与所述 可用计算资源信息指示的可用资源量进行比较;
当比较结果为任务的所述资源消耗量小于所述可用资源量时,则记录该任 务对应的比较结果满足预置的任务调度条件;
将所述任务集合中记录比较结果满足所述任务调度条件的至少一个任务 确定为当前调度周期的目标任务。
结合第一方面, 或第一方面的第一种可能的实现方式,或第一方面的第二 种可能的实现方式,或第一方面的第三种可能的实现方式,在第五种可能的实 现方式中,所述将所述每个任务的资源消耗信息与所述可用计算资源信息进行 比较,并将所述任务集合中对应比较结果满足预置的任务调度条件的任务确定 为目标任务, 包括:
根据所述任务集合中每个任务的资源消耗信息指示的任务集群类型和所 述可用计算资源信息指示的可用集群类型,从所述任务集合中确定出所述任务 集群类型与所述可用集群类型匹配的任务子集合;
将所述任务子集合中任务的资源消耗信息指示的资源消耗量与所述可用 计算资源信息指示的可用资源量进行比较;
当比较结果为任务的所述资源消耗量小于所述可用资源量时,则记录该任 务对应的比较结果满足预置的任务调度条件;
将所述任务子集合中记录比较结果满足所述任务调度条件的至少一个任 务作为当前调度周期的目标任务。
结合第一方面, 或第一方面的第一种可能的实现方式,或第一方面的第二 种可能的实现方式, 或第一方面的第三种可能的实现方式, 或第一方面的第四 种可能的实现方式, 或第一方面的第五种可能的实现方式,在第六种可能的实 现方式中,所述将所述每个任务的资源消耗信息与所述可用计算资源信息进行 比较,并将所述任务集合中对应比较结果满足预置的任务调度条件的任务确定 为目标任务之后, 还包括:
控制所述任务集合中确定的目标任务执行;
当所述目标任务执行完成后,获取所述目标任务在当前调度周期的实际资 源消耗信息;
根据所述当前调度周期的实际资源消耗信息,更新预置的任务资源消耗映 射表中记录的所述目标任务的实际资源消耗信息。
结合第一方面的第二种可能的实现方式,在第七种可能的实现方式中, 所 述方法还包括:
当所述任务集合中每个任务的所述资源消耗信息指示的资源消耗量大于 所述可用计算资源信息所指示的可用资源量时,发出提示消息以提示优化该任 务; 或者, 所述任务调度图中生成的任务执行进度小于预设阈值时,发出提示 消息以提示优化该任务。
本发明第二方面提供一种任务调度的装置, 包括:
可用计算资源信息获取模块, 用于获取用于执行任务的可用计算资源信 息;
任务资源消耗信息确定模块, 用于在接收到已配置完成的任务集合时,确 定所述任务集合中每个任务的资源消耗信息;
比较确定模块,用于将所述任务资源消耗信息确定模块确定的每个任务的 资源消耗信息与所述可用计算资源信息获取模块获得的可用计算资源信息进 行比较, 并根据所述比较结果,将所述任务集合中对应比较结果满足预置的任 务调度条件的任务确定为目标任务。
结合第二方面, 在第一种可能的实现方式中, 所述装置还包括: 任务调度图生成模块,用于根据所述任务集合中每个任务的任务依赖关系 和 /或时间依赖关系, 生成任务调度图;
其中,所述任务调度图包括标识所述任务集合中每个任务的任务标记和标 识任务间任务依赖关系和 /或时间依赖关系的关系标记。
结合第二方面的第一种可能的实现方式,在第二种可能的实现方式中,所 述任务调度图生成模块生成的任务调度图还包括所述任务集合中每个任务的 资源消耗信息标记和从所述任务集合中确定出的目标任务的执行进度;
其中,所述资源消耗信息标记用于标识所述任务集合中每个任务的资源消 耗信息;所述目标任务的执行进度是根据目标任务的资源消耗信息和当前检测 到的所述目标任务在执行过程中的已消耗资源信息获得的。
结合第二方面, 或第二方面的第一种可能的实现方式,或第二方面的第二 种可能的实现方式,在第三种可能的实现方式中, 所述任务资源消耗信息确定 模块, 包括:
查找单元,用于在接收到已配置完成的任务集合时,从任务资源消耗映射 表中查找所述任务集合中每个任务在上一调度周期的实际资源消耗信息; 估算单元,用于根据所述查找单元查找的实际资源消耗信息估算所述任务 集合中每个任务在当前调度周期的资源消耗信息; 其中,所述任务资源消耗映射表为预先设置的记录有所述任务集合中各任 务在上一调度周期执行后的实际资源消耗信息。
结合第二方面, 或第二方面的第一种可能的实现方式,或第二方面的第二 种可能的实现方式, 或第二方面的第三种可能的实现方式,在第四种可能的实 现方式中, 所述比较确定模块, 包括:
第一比较单元,用于将所述任务集合每个任务的所述资源消耗信息指示的 资源消耗量与所述可用计算资源信息指示的可用资源量进行比较;
第一记录单元,用于当所述第一比较单元的比较结果为任务的所述资源消 耗量小于所述可用资源量时,则记录该任务对应的比较结果匹配预置的任务调 度条件;
第一确定单元,用于将所述任务集合中所述第一记录单元记录比较结果满 足所述任务调度条件的至少一个任务确定为当前调度周期的目标任务。
结合第二方面, 或第二方面的第一种可能的实现方式,或第二方面的第二 种可能的实现方式, 或第二方面的第三种可能的实现方式,在第五种可能的实 现方式中, 所述比较确定模块, 包括:
类型匹配单元,用于将所述任务集合中每个任务的资源消耗信息指示的任 务集群类型和所述可用计算资源信息指示的可用集群类型进行比较,从所述任 务集合中确定出所述任务集群类型与所述可用集群类型匹配的任务子集合; 第二比较单元,用于将所述类型匹配单元确定的任务子集合中任务的资源 消耗信息指示的资源消耗量与所述可用计算资源信息指示的可用资源量进行 比较;
第二记录单元,用于当所述第二比较单元的比较结果为任务的所述资源消 耗量小于所述可用资源量时,则记录该任务对应的比较结果满足预置的任务调 度条件;
第二确定单元,用于将所述任务子集合中所述第二记录单元记录的比较结 果满足所述任务调度条件的至少一个任务作为当前调度周期的目标任务。
结合第二方面, 或第二方面的第一种可能的实现方式,或第二方面的第二 种可能的实现方式, 或第二方面的第三种可能的实现方式, 或第二方面的第四 种可能的实现方式, 或第二方面的第五种可能的实现方式,在第六种可能的实 现方式中, 所述装置还包括:
控制模块, 用于控制所述任务集合中确定的目标任务执行;
实际资源消耗信息获取模块,用于当所述控制模块控制所述目标任务执行 完成后, 获取所述目标任务在当前调度周期的实际资源消耗信息;
更新模块,用于根据所述实际资源信息获取模块获取的当前调度周期所述 目标任务的实际资源消耗信息,更新预置的任务资源消耗映射表中记录的所述 目标任务的实际资源消耗信息。
结合第二方面的第二种可能的实现方式,在第七种可能的实现方式中, 所 述装置还包括:
提示消息发出模块,用于当所述任务集合中每个任务的所述资源消耗信息 指示的资源消耗量大于所述可用计算资源信息指示的可用资源量时,或者所述 任务调度图中生成的任务的执行进度小于预设阈值时,发出提示消息以修改该 任务的依赖关系。
本发明第三方面提供一种计算机存储介质,
所述计算机存储介质可存储有程序,该程序执行时包括第一方面提供的一 种任务调度的方法的部分或全部步骤。
本发明第四方面提供一种任务调度设备, 包括: 处理器、 通信接口, 所述通信接口用于接收数据仓库中已配置的任务集合和可用计算资源信 所述处理器用于获取用于执行任务的可用计算资源信息;在接收到已配置 完成的任务集合时,确定所述任务集合中每个任务的资源消耗信息; 将所述任 务集合中每个任务的资源消耗信息与所述可用计算资源信息进行比较,并将所 述任务集合中对应比较结果满足预置的任务调度条件的任务确定为目标任务。
结合第四方面, 在第一种可能的实现方式中, 所述处理器还用于: 根据所述任务集合中每个任务的任务依赖关系和 /或时间依赖关系, 生成 任务调度图;
其中,所述任务调度图包括标识所述任务集合中每个任务的任务标记和标 识任务间任务依赖关系和 /或时间依赖关系的关系标记。
结合第四方面的第一种可能的实现方式,在第二种可能的实现方式中, 所 述处理器生成的任务调度图还包括所述任务集合中每个任务的资源消耗信息 标记和从所述任务集合中确定出的目标任务的执行进度;
其中,所述资源消耗信息标记用于标识所述任务集合中每个任务的资源消 耗信息;所述目标任务的执行进度是根据目标任务的资源消耗信息和当前检测 到的所述目标任务在执行过程中的已消耗资源信息获得的。
结合第四方面, 或第四方面的第一种可能的实现方式, 或第四方面的第二 种可能的实现方式, 在第三种可能的实现方式中, 所述处理器具体用于: 从任务资源消耗映射表中查找所述任务集合中每个任务在上一调度周期 的实际资源消耗信息;
根据所述实际资源消耗信息估算所述任务集合中每个任务在当前调度周 期的资源消耗信息;
其中,所述任务资源消耗映射表为预先设置的记录有所述任务集合中各任 务在上一调度周期执行后的实际资源消耗信息。
结合第四方面, 或第四方面的第一种可能的实现方式,或第四方面的第二 种可能的实现方式,或第四方面的第三种可能的实现方式,在第四种可能的实 现方式中, 所述处理器具体用于:
将所述任务集合每个任务的所述资源消耗信息指示的资源消耗量与所述 可用计算资源信息指示的可用资源量进行比较;
当比较结果为任务的所述资源消耗量小于所述可用资源量时,则记录该任 务对应的比较结果满足预置的任务调度条件;
将所述任务集合中记录比较结果满足所述任务调度条件的至少一个任务 确定为当前调度周期的目标任务。
结合第四方面, 或第四方面的第一种可能的实现方式,或第四方面的第二 种可能的实现方式, 或第四方面的第三种可能的实现方式,在第五种可能的实 现方式中, 所述处理器还用于:
根据所述任务集合中每个任务的资源消耗信息指示的任务集群类型和所 述可用计算资源信息指示的可用集群类型,将所述任务集合中确定出所述任务 集群类型与所述可用集群类型匹配的任务子集合;
将所述任务子集合中任务的资源消耗信息指示的资源消耗量与所述可用 计算资源信息指示的可用资源量进行比较;
当比较结果为任务的所述资源消耗量小于所述可用资源量时,则记录该任 务对应的比较结果满足预置的任务调度条件;
将所述任务子集合中记录比较结果满足所述任务调度条件的至少一个任 务作为当前调度周期的目标任务。
结合第四方面, 或第四方面的第一种可能的实现方式,或第四方面的第二 种可能的实现方式,或第四方面的第三种可能的实现方式, 或第四方面的第四 种可能的实现方式,或第四方面的第五种可能的实现方式,在第六种可能的实 现方式中, 所述处理器还用于:
控制所述任务集合中确定的目标任务执行;
当所述目标任务执行完成后,获取所述目标任务在当前调度周期的实际资 源消耗信息;
根据所述当前调度周期的实际资源消耗信息,更新预置的任务资源消耗映 射表中记录的所述目标任务的实际资源消耗信息。
结合第四方面的第二种可能的实现方式,在第七种可能的实现方式中, 所 述处理器还用于:
当所述任务集合中每个任务的所述资源消耗信息指示的资源消耗量大于 所述可用计算资源信息指示的可用资源量时, 发出提示消息以提示优化该任 务;
或者所述任务调度图中显示的任务的执行进度小于预设阈值时,发出提示 消息以提示优化该任务。
结合第四方面, 或第四方面的第一种可能的实现方式, 或第四方面的第二 种可能的实现方式, 或第四方面的第三种可能的实现方式, 或第四方面的第四 种可能的实现方式, 或第四方面的第五种可能的实现方式, 或第四方面的第六 种可能的实现方式, 或第四方面的第七种可能的实现方式,在第八种可能的实 现方式中, 所述设备还包括: 显示器,
所述显示器, 用于显示所述处理器执行的结果。 算资源信息, 并确定任务集合中每个任务的资源消耗信息; 将所述资源消耗信 息与所述可用计算资源信息进行比较,将比较结果满足预置的任务调度条件的 任务确定为目标任务,优化了任务调度过程的资源利用率,提高了数据仓库的 处理性能。 附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施 例中所需要使用的附图作筒单地介绍,显而易见地, 下面描述中的附图仅仅是 本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的 前提下, 还可以根据这些附图获得其他的附图。
图 1为本发明实施例提供的一种任务调度的方法的流程示意图; 图 2为本发明实施例提供的另一种任务调度的方法的流程示意图; 图 3为本发明实施例提供的又一种任务调度的方法的流程示意图; 图 4为本发明实施例提供的一种任务调度的装置的结构示意图; 图 5为本发明实施例提供的另一种任务调度的装置的结构示意图; 图 6为图 5中任务资源消耗信息确定模块的具体结构示意图;
图 7为图 5中比较确定模块的具体结构示意图;
图 8为本发明实施例提供的一种数据仓库任务调度系统的结构示意图; 图 9为本发明实施例提供的一种具体的任务调度图;
图 10为本发明实施例提供的一种具体的数据仓库任务调度流程图; 图 11为本发明实施例提供的一种任务调度设备的结构示意图。 具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清 楚、 完整地描述, 显然, 所描述的实施例仅仅是本发明一部分实施例, 而不是 全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造 性劳动前提下所获得的所有其他实施例, 都属于本发明保护的范围。
请参见图 1 , 为本发明实施例提供的一种任务调度的方法的流程示意图, 所述方法可应用在数据仓库和云计算系统中,具体可由执行任务调度的设备或 服务器实现, 本发明实施例的所述方法具体包括:
5101 , 获取用于执行任务的可用计算资源信息;
在本发明的实施例中,该步骤具体可以从数据仓库集成的资源监控系统中 获取数据仓库当前的可用计算资源信息(所述资源监控系统可在所述数据仓库 中部署整体资源监控代理, 用于监控数据仓库集群中全部的可用计算资源), 所述可用计算资源信息指示的可用资源量可根据 CPU使用情况和可用内存空 间等确定; 另外, 若数据仓库中的可用资源量包括不同的功能集群类型, 如源 数据接收、 批量数据处理、 实时数据处理、 数据传输等, 即每个集群上执行不 同类型的任务, 则所述可用计算资源信息不仅指示可用的资源量,还指示所述 可用资源量对应的功能集群类型。
5102,在接收到已配置完成的任务集合时,确定所述任务集合中每个任务 的资源消耗信息;
具体的, 用户可通过任务部署系统来完成任务的部署和配置, 然后所述任 务部署系统在本端部署任务及任务的依赖关系等信息,即本端接收的任务部署 系统配置的任务集合, 所述任务集合包括各任务及其之间的依赖关系。
可选的,所述确定所述任务集合中每个任务的资源消耗信息具体为:首先, 从数据仓库中资源监控系统获取上一调度周期中所述任务集合中各任务的资 源消耗量(所述资源监控系统在所述数据仓库集群中部署任务资源监控代理, 其可根据各种任务类型具体开发, 用于监控每个任务消耗的计算资源); 然后, 估算当前调度周期中各任务的资源消耗信息。具体的, 由于同一任务相邻调度 周期消耗的资源量大致相等,因此可将上一调度周期中各任务的资源消耗量作 为各任务在当前调度周期中的资源消耗信息。
可选的,所述任务集合中每个任务上一调度周期的资源消耗信息也可以从 本端存储的任务资源消耗映射表中查找获得, 其中, 所述任务资源消耗映射表 为预先设置的记录有所述任务集合中各任务在上一调度周期执行后的实际资 源消耗信息。
5103,将所述任务集合中每个任务的资源消耗信息与所述可用计算资源信 息进行比较,并将所述任务集合中对应比较结果满足预置的任务调度条件的任 务确定为目标任务。 可选地,所述将所述任务集合中每个任务的资源消耗信息与所述可用计算 资源信息进行比较具体为将所述资源消耗信息指示的资源消耗量与所述可用 计算资源信息指示的可用资源量进行比较;将所述比较结果为任务的资源消耗 量小于所述可用资源量的任务记录为该任务的比较结果满足预置的任务调度 条件; 将所述满足预置的任务调度条件的至少一个任务作为目标任务。
其中, 任务调度条件为只调度资源消耗量小于可用资源量的任务。
另外, 当所述可用资源量包括不同的功能集群类型时, 所述 S103还包括 根据所述任务集合中每个任务的资源消耗信息指示的任务集群类型和所述可 用计算资源信息指示的可用集群类型(即前述的可用资源量对应的可用集群类 型)进行匹配,从所述任务集合中匹配出与可用集群类型匹配的至少一个任务, 这些任务构成任务子集合。
将匹配出的任务子集合中任务的资源消耗信息指示的资源消耗量小于所 述可用计算资源指示的可用资源量的至少一个任务作为目标任务。
本发明实施例通过获取用于执行任务的可用计算资源信息,并确定任务集 合中每个任务的资源消耗信息;将所述资源消耗信息与所述可用计算资源信息 进行比较,将比较结果满足预置的任务调度条件的任务确定为目标任务,所述 方法根据可用计算资源信息调度任务优化了资源利用率,提高了数据仓库的处 理性能。
图 2为本发明实施例的另一种任务调度的方法的流程示意图,所述方法可 应用在数据仓库或云计算系统中, 具体可由执行任务调度的设备或服务器实 现, 所述方法具体包括:
5201 , 获取用于执行任务的可用计算资源信息;
本步骤的执行动作与上述实施例的 S101相同, 这里不再详述。
5202,从任务资源消耗映射表中查找所述任务集合中每个任务在上一调度 周期的实际资源消耗信息;
其中,所述任务资源消耗映射表为预先设置的记录有所述任务集合中各任 务在上一调度周期执行后的实际资源消耗信息,所述任务资源消耗映射表中的 实际资源消耗信息可以从资源监控系统获取,或直接从资源监控系统在数据仓 库集群中部署的任务资源监控代理处获取。 5203 ,根据上一调度周期的实际资源消耗信息估算所述任务集合中每个任 务在当前调度周期的资源消耗信息;
5204,将所述任务集合中每个任务的所述资源消耗信息指示的资源消耗量 与所述可用计算资源信息指示的可用资源量进行比较;
S205 , 当比较结果为任务的所述资源消耗量小于所述可用资源量时,则记 录该任务对应的比较结果满足预置的任务调度条件;
5206,将所述任务集合中记录比较结果满足所述任务调度条件的至少一个 任务确定为当前调度周期的目标任务。
5207 , 控制所述任务集合中确定的目标任务执行;
S208 ,根据所述任务集合中各任务以及各任务间的依赖关系、 当前调度周 期的资源消耗信息以及所述目标任务正在执行过程中已消耗的资源信息,生成 任务调度图;
其中,所述任务调度图包括标识所述任务集合中每个任务的任务标记和标 识任务间任务依赖关系和 /或时间依赖关系的关系标记, 所述任务集合中每个 任务的资源消耗信息标记和从所述任务集合中确定出的目标任务的执行进度。
所述资源消耗信息标记用于标识所述任务集合中每个任务的资源消耗信 息;所述目标任务的执行进度是根据目标任务的资源消耗信息和当前检测到的 所述目标任务在执行过程中的已消耗资源信息获得的。
可选的, 可在接收到任务集合时生成所述任务调度图(此时所述任务调度 图包括各任务标记及依赖关系标记); 在任务调度过程中, 生成所述任务集合 中各任务的资源消耗信息标记; 在确定出待调度的目标任务时, 继续生成所述 目标任务的执行进度。本端可将包括这些信息的任务调度图发送到终端进行显 示, 以使开发或维护人员对任务调度过程进行实时监控或管理。
5209 , 当所述目标任务执行完成后,获取所述目标任务在当前调度周期的 实际资源消耗信息;
可选的,所述获取所述目标任务在当前调度周期的实际资源消耗信息可从 资源监控系统获取,或直接从所述资源监控系统在数据仓库集群中部署的任务 资源监控代理获取。
5210,根据所述当前调度周期的实际资源消耗信息, 更新预置的任务资源 消耗映射表中记录的所述目标任务的实际资源消耗信息;
S211 ,当所述任务集合中每个任务的所述资源消耗信息指示的资源消耗量 大于所述可用计算资源信息所指示的可用资源量时,发出提示消息以提示优化 该任务;
S212,所述任务调度图中生成的任务执行进度小于预设阈值时,发出提示 消息以提示优化该任务。
步骤 S211和 S212中, 所述发出提示消息以提示优化该任务, 具体的, 可 通过变化所述任务调度图中该任务的颜色标记等进行提示,或通过向弹出告警 提示框的形式提示该任务需开发人员或维修人员进行维护。
本发明实施例通过获取用于执行任务的可用计算资源信息,并确定任务集 合中各任务的资源消耗信息, 通过可用计算资源信息与资源消耗信息的比较, 将比较结果符合预置的任务调度条件的至少一个任务确定为目标任务;同时在 务的执行进度, 为优化任务调度提供了直观依据, 提高数据仓库的处理性能。
图 3为本发明实施例提供的又一种任务调度的方法的流程示意图,所述方 法可应用在数据仓库或云计算系统中,具体可由执行任务调度的设备或服务器 实现,本发明实施例所述方法的步骤 S301至 S303与上述实施例的 S201至 S203 相同, 这里不再详述。
当所述可用计算资源信息包括不同的功能集群类型时,本发明实施例所述 方法执行如下步骤:
S304,根据所述任务集合中每个任务的资源消耗信息指示的任务集群类型 和所述可用计算资源信息指示的可用集群类型,从所述任务集合中确定出所述 任务集群类型与所述可用集群类型匹配的任务子集合;
其中, 所述任务子集合中的任务数可以小于或等于所述任务集合。
S305 ,将所述任务子集合中任务的资源消耗信息指示的资源消耗量与所述 可用计算资源信息指示的可用资源量进行比较;
5306, 当比较结果为任务的所述资源消耗量小于所述可用资源量时, 则记 录该任务对应的比较结果满足预置的任务调度条件;
5307,将所述任务子集合中记录的比较结果满足所述任务调度条件的至少 一个任务作为当前调度周期的目标任务。
5308 , 控制所述任务集合中确定的目标任务执行;
5309,根据所述任务集合中每个任务的任务依赖关系和 /或时间依赖关系, 生成任务调度图;
其中,所述任务调度图包括标识所述任务集合中每个任务的任务标记和标 识任务间任务依赖关系和 /或时间依赖关系的关系标记。
所述任务调度图还包括所述任务集合中每个任务的资源消耗信息标记和 从所述任务集合中确定出的目标任务的执行进度; 其中,所述资源消耗信息标 记用于标识所述任务集合中每个任务的资源消耗信息;所述目标任务的执行进 度是根据目标任务的资源消耗信息和当前检测到的所述目标任务在执行过程 中的已消耗资源信息获得的。
本发明实施例的 S310至 S313与上述发明实施例的 S209至 S212的步骤 相同, 这里不再详述。
本发明实施例在可用计算资源信息包含不同的功能集群类型时,从所述任 务集合中确定出任务的资源消耗信息指示的资源消耗功能集群类型与所述可 用功能集群类型匹配的任务子集合,再从所述任务子集合中确定出至少一个目 标任务, 从而优化了数据仓库的资源利用率, 并提高了数据仓库的处理性能。
可选的,可将上述两个实施例增加判断可用资源信息是否为单一的功能集 群类型的步骤, 则上述发明实施例可构成一个技术方案以优化任务调度过程, 提高处理性能。
图 4为本发明实施例提供的一种任务调度的装置的结构示意图,所述装置 具体包括:
可用计算资源信息获取模块 1 , 用于获取用于执行任务的可用计算资源信 息;
在本发明实施例中,可用计算资源信息获取模块 1可以从数据仓库集成的 资源监控系统中获取数据仓库当前的可用计算资源信息,所述可用计算资源信 息指示的可用资源量可根据 CPU使用情况和可用内存空间等确定; 另外, 若 数据仓库包括不同的功能集群类型时, 如源数据接收、 批量数据处理、 实时数 据处理、数据传输等, 即每个集群上执行不同类型的任务, 则所述可用计算资 源信息不仅指示可用的资源量, 还指示可用资源量对应的功能集群类型。 任务资源消耗信息确定模块 2, 用于在接收到已配置完成的任务集合时, 确定所述任务集合中每个任务的资源消耗信息;
可选的,所述任务资源消耗信息确定模块 2确定所述任务集合中每个任务 的资源消耗信息具体为: 首先, 所述任务资源消耗信息确定模块 2从数据仓库 中部署的任务资源监控代理获取上一调度周期中所述任务集合中各任务的资 源消耗量; 然后, 所述任务资源消耗信息确定模块 2估算当前调度周期中各任 务的资源消耗信息。 由于同一任务相邻调度周期消耗的资源量大致相等, 因此 可将上一调度周期中各任务的资源消耗量作为各任务在当前调度周期中的资 源消耗信息。
可选的,所述任务集合中每个任务上一调度周期的资源消耗信息可以由所 述任务资源消耗信息确定模块 2从任务资源消耗映射表中查找获得, 其中, 所 述任务资源消耗映射表为预先设置的记录有所述任务集合中各任务在上一调 度周期执行后的实际资源消耗信息。
比较确定模块 3 , 用于将所述任务资源消耗信息确定模块 2确定的每个任 务的资源消耗信息与所述可用计算资源信息获取模块 1 获得的可用计算资源 信息进行比较, 并根据所述比较结果,将所述任务集合中对应比较结果满足预 置的任务调度条件的任务确定为目标任务。
可选地,所述比较确定模块 3将所述任务集合中每个任务的资源消耗信息 与所述可用计算资源信息进行比较具体为将所述资源消耗信息指示的资源消 耗量与所述可用计算资源信息指示的可用资源量进行比较;将所述比较结果为 任务的资源消耗量小于所述可用资源量的任务记录为该任务的比较结果满足 预置的任务调度条件;将所述满足预置的任务调度条件的至少一个任务作为目 标任务。
其中, 任务调度条件为只调度资源消耗量小于可用资源量的任务。
另外, 当所述可用资源量包括不同的功能集群时, 所述比较确定模块 3 还根据所述任务集合中每个任务的资源消耗信息指示的任务集群类型和所述 可用计算资源信息指示的可用集群类型(即前述的可用资源量对应的可用集群 类型)进行匹配, 从所述任务集合中确定集群类型匹配的至少一个任务, 这些 任务构成任务子集合。
所述比较确定模块 3 将匹配出的任务子集合中任务的资源消耗信息指示 的资源消耗量小于所述可用计算资源指示的可用资源量的至少一个任务作为 目标任务。
本发明实施例中,可用计算资源信息获取模块 1获取用于执行任务的可用 计算资源信息,任务资源消耗信息确定模块 2确定任务集合中每个任务的资源 消耗信息;比较确定模块 3将所述资源消耗信息与所述可用计算资源信息进行 比较,将比较结果满足预置的任务调度条件的任务确定为目标任务,根据可用 计算资源信息调度任务优化了资源利用率, 提高了数据仓库的处理性能。
图 5为本发明实施例提供的另一种任务调度的装置的结构示意图,所述装 置除包括上述实施例的可用计算资源获取模块 1、任务资源消耗信息确定模块 2和比较确定模块 3之外, 还包括:
任务调度图生成模块 4, 用于根据所述任务集合中每个任务的任务依赖关 系和 /或时间依赖关系, 生成任务调度图;
其中,所述任务调度图包括标识所述任务集合中每个任务的任务标记和标 识任务间任务依赖关系和 /或时间依赖关系的关系标记。
所述任务调度图生成模块 4生成的任务调度图还包括所述任务集合中每 个任务的资源消耗信息标记和从所述任务集合中确定出的目标任务的执行进 度;
可选地, 所述任务调度图生成模块 4可为任务调度装置的可视化模块,根 据所述任务集合中每个任务的任务依赖关系和 /或时间依赖关系, 所述任务集 合中每个任务的资源消耗信息和从所述任务集合中确定出的目标任务的执行 进度生成任务调度图, 使得这些信息在任务调度过程中可直观查看。
如图 6所示, 所述任务资源消耗信息确定模块 2, 包括:
查找单元 21 , 用于在接收到已配置完成的任务集合时, 从任务资源消耗 映射表中查找所述任务集合中每个任务在上一调度周期的实际资源消耗信息; 估算单元 22, 用于根据所述查找单元查找的实际资源消耗信息估算所述 任务集合中每个任务在当前调度周期的资源消耗信息;
其中,所述任务资源消耗映射表为预先设置的记录有所述任务集合中各任 务在上一调度周期执行后的实际资源消耗信息。
如图 7所示, 所述比较确定模块 3 , 包括:
第一比较单元 31 , 用于将所述任务集合每个任务的所述资源消耗信息指 示的资源消耗量与所述可用计算资源信息指示的可用资源量进行比较;
第一记录单元 32, 用于当所述第一比较单元的比较结果为任务的所述资 源消耗量小于所述可用资源量时,则记录该任务对应的比较结果匹配预置的任 务调度条件;
第一确定单元 33 , 用于将所述任务集合中所述第一记录单元记录比较结 果满足所述任务调度条件的至少一个任务确定为当前调度周期的目标任务。
当所述可用计算资源信息指示的可用资源量包括不同的功能集群类型时, 如图 7所示, 所述比较确定模块 3 , 还包括:
类型匹配单元 34, 用于将所述任务集合中每个任务的资源消耗信息指示 的任务集群类型和所述可用计算资源信息指示的可用集群类型进行比较,从所 述任务集合中确定出所述任务集群类型与所述可用集群类型匹配的任务子集 合;
第二比较单元 35 , 用于将所述类型匹配单元确定的任务子集合中任务的 资源消耗信息指示的资源消耗量与所述可用计算资源信息指示的可用资源量 进行比较;
第二记录单元 36, 用于当所述第二比较单元的比较结果为任务的所述资 源消耗量小于所述可用资源量时,则记录该任务对应的比较结果满足预置的任 务调度条件;
第二确定单元 37, 用于将所述任务子集合中所述第二记录单元记录的比 较结果满足所述任务调度条件的至少一个任务作为当前调度周期的目标任务。
可选的, 所述装置还包括:
控制模块 5 , 用于控制所述任务集合中确定的目标任务执行;
实际资源消耗信息获取模块 6, 用于当所述控制模块控制所述目标任务执 行完成后, 获取所述目标任务在当前调度周期的实际资源消耗信息;
更新模块 7, 用于根据所述实际资源信息获取模块获取的当前调度周期所 述目标任务的实际资源消耗信息,更新预置的任务资源消耗映射表中记录的所 述目标任务的实际资源消耗信息。
可选的, 所述装置还包括:
提示消息发出模块 8, 用于当所述任务集合中每个任务的所述资源消耗信 息指示的资源消耗量大于所述可用计算资源信息指示的可用资源量时,或者所 述任务调度图中生成的任务的执行进度小于预设阈值时,发出提示消息以提示 修改该任务或其依赖关系。
本发明实施例通过比较确定模块 3根据可用计算资源信息获取模块 1和任 务资源消耗信息模块 2的结果从所述任务集合中确定出至少一个目标任务,从 而优化了数据仓库的资源利用率, 并提高了数据仓库的处理性能。
结合图 8、 图 9和图 10介绍本发明实施例提供的一种数据仓库中任务调 度的方法,数据仓库是一个为决策者提供联机分析处理所需要信息的仓储, 其 任务之间可能存在单向依赖或不存在依赖关系或拥有不同的优先级等关系,面 对数据仓库中众多的处理任务, 如何提高数据仓库性能和资源利用率是关键, 本发明实施例提供了如图 8所示的数据仓库系统,所述数据仓库系统主要包括 任务部署系统、 数据仓库集群和任务调度系统。
任务部署系统在数据仓库集群中完成各任务部署和任务配置,并在任务调 度系统中配置各任务的依赖关系、 时序关系,数据开发人员或维护人员可通过 任务部署系统提供的接口对部署的任务进行监控和管理;所述任务部署系统还 在数据仓库集群中部署整体资源监控代理和任务资源监控代理实时获取数据 仓库中的可用计算资源信息和任务的资源消耗信息,并依据上述实施例所述的 任一种任务调度的方法对数据仓库集群执行任务调度,使各任务在数据仓库集 群中有序的进行, 并提高资源利用率。
所述任务调度系统可以包括上述实施例所述的任务调度的装置,在本发明 实施例中,所述任务调度装置中所述可用计算资源信息获取模块具体用于完成 数据仓库整体可用计算资源信息的状态管理,并保持与数据仓库资源真实情况 实时同步; 所述比较确定模块用于管理各种调度规则(除上述发明实施例所述 的任务调度方法, 还对数据仓库的任务集合进行更新、 归档, 并生成各种报表 传递给终端显示), 即比较确定模块是任务调度系统的核心; 当所述比较确定 模块确定了待调度的目标任务, 所述控制模块还可以控制所述目标任务执行; 任务调度系统中的任务调度图生成模块还实现了调度的可视化即生成任务调 度图, 通过所述任务调度图中显示的任务、 任务间的依赖关系、 任务的资源消 耗信息和目标任务的执行进度向管理人员直观的展示任务调度情况;当所述目 标任务执行完成后,任务调度系统中的实际资源消耗信息获取模块还可以实时 获取所述目标任务在当前调度周期的实际资源消耗信息;更新模块根据所述实 际资源消耗信息获取模块的结果实时更新任务资源消耗映射表中记录的信息; 另夕卜,任务调度系统还具有提示消息发出模块用于当所述任务集合中每个任务 的所述资源消耗信息指示的资源消耗量大于所述可用计算资源信息指示的可 用资源量时, 或者所述任务调度图中生成的任务的执行进度小于预设阈值时, 向终端发出提示消息以提示数据开发人员或维护人员重点优化该任务。
具体的,如图 9所示, 所述任务调度系统生成的任务调度图可用圆圈表示 每个任务, 可用任务标记命名, 如任务 1、 任务 2、 任务 3、 任务 4、 任务 5、 任务 6、 任务 7; 各任务之间的连线表示任务间的依赖关系 (排在右边的任务 依赖左边的任务 ), 如任务 4的执行依赖任务 2和任务 3的执行结果; 圆圈的 大小表示该任务预估的资源消耗信息指示的资源消耗量,如任务 1预估的资源 消耗量大于任务 2预估的资源消耗量; 圆圈的空白或阴影表示任务的执行状 态, 同时具有空白和阴影的圆圈表示目标任务正在执行, 空白与阴影的比例表 示任务的执行进度, 如任务 1、 任务 2、 任务 3、 任务 4和任务 7表示未执行, 任务 5表示已经执行, 任务 6表示正在执行, 并已执行了任务的四分之一。 所 述任务调度图也可以通过其他的方式表示任务的属性、 状态、依赖关系、 时序 关系等信息。
基于图 8的数据仓库任务调度系统, 本发明实施例还给出了如图 10所示 的一种具体的数据仓库任务调度流程, 包括:
S401 , 资源监控系统获取数据仓库当前的可用计算资源信息;
S402, 任务调度系统从所述资源监控系统获取所述可用计算资源信息;
5403 , 数据开发人员通过任务部署系统在任务调度系统中部署任务集合, 所述任务集合包括部署的各任务以及任务间的依赖关系;
5404,所述任务调度系统从任务资源消耗信息映射表中查找所述任务集合 中各任务在上一调度周期中的实际资源消耗信息,根据所述实际资源消耗信息 估算所述任务集合中各任务在当前调度周期的资源消耗信息;
可选的,所述任务调度系统也可以从所述资源监控系统实时获取所述任务 集合中各任务在上一调度周期的实际资源消耗信息。
5405 ,所述任务调度系统根据所述可用计算资源信息和各任务在上一调度 周期的实际资源消耗信息确定满足预置的待调度条件的至少一个目标任务;
5406, 将确定的所述目标任务指令发送给数据仓库;
5407 , 所述数据仓库执行所述目标任务;
5408 ,所述任务调度系统从所述资源监控系统获取所述目标任务在当前调 度周期中的实际资源消耗信息;
S409 ,根据所述目标任务以及所述目标任务在当前调度周期中的实际资源 消耗信息, 任务调度系统更新所述任务集合和任务资源消耗信息映射表。
可选的, 所述任务调度系统在控制执行完确定的目标任务后, 更新所述任 务集合,进一步地,可通过预置的任务计数器或任务扫描器检测所述任务集合 中是否还有未执行的任务;若所述检测的结果为所述任务集合中没有未执行的 任务则停止任务调度; 若所述检测的结果为所述任务集合中还有未执行的任 度方法启动任务调度。
另外, 当数据仓库每次增加或删减某个任务时, 均需执行步骤 S403。 当 所述可用计算资源信息包括不同类型的功能集群时, 所述步骤 S405所确定的 目标任务的功能集群类型还必须与可用计算资源信息指示的可用功能集群类 型匹配, 例如大数据处理任务必须在大数据处理集群上执行等。
本发明实施例根据数据仓库的可用计算资源信息和任务预估的资源消耗 信息的匹配来进行任务调度,从而可以最大限度的利用计算资源,提高数据仓 库的处理性能。
本发明实施例还提供了一种计算机存储介质, 其中,所述计算机存储介质 可存储有程序,该程序执行时包括上述图 1至图 3所述实施例中记载的任务调 度的方法的部分或全部步骤。
请参见图 11 , 为本发明实施例提供的一种任务调度设备的结构示意图, 所述任务调度设备可以包括处理器 01、通信接口 02 (所述处理器 01的数量可 以为一个或多个, 图 11中以一个处理器 01为例) 。 本发明的一些实施例中, 处理器 01和通信接口 02可通过通信总线或其他方式连接, 其中, 图 11以通 信总线连接为例。
所述通信接口 02, 用于接收数据仓库中已配置的任务集合和可用计算资 源信息;
所述处理器 01用于获取用于执行任务的可用计算资源信息; 在接收到已 配置完成的任务集合时,确定所述任务集合中每个任务的资源消耗信息; 将所 述任务集合中每个任务的资源消耗信息与所述可用计算资源信息进行比较,并 将所述任务集合中对应比较结果满足预置的任务调度条件的任务确定为目标 任务。
所述处理器 01还用于:
根据所述任务集合中每个任务的任务依赖关系和 /或时间依赖关系, 生成 任务调度图;
其中,所述任务调度图包括标识所述任务集合中每个任务的任务标记和标 识任务间任务依赖关系和 /或时间依赖关系的关系标记。
所述处理器 01生成的任务调度图还包括所述任务集合中每个任务的资源 消耗信息标记和从所述任务集合中确定出的目标任务的执行进度;
其中,所述资源消耗信息标记用于标识所述任务集合中每个任务的资源消 耗信息;所述目标任务的执行进度是根据目标任务的资源消耗信息和当前检测 到的所述目标任务在执行过程中的已消耗资源信息获得的。
所述处理器 01具体用于:
从任务资源消耗映射表中查找所述任务集合中每个任务在上一调度周期 的实际资源消耗信息;
根据所述实际资源消耗信息估算所述任务集合中每个任务在当前调度周 期的资源消耗信息;
其中,所述任务资源消耗映射表为预先设置的记录有所述任务集合中各任 务在上一调度周期执行后的实际资源消耗信息。
所述处理器 01具体用于:
将所述任务集合每个任务的所述资源消耗信息指示的资源消耗量与所述 可用计算资源信息指示的可用资源量进行比较;
当比较结果为任务的所述资源消耗量小于所述可用资源量时,则记录该任 务对应的比较结果满足预置的任务调度条件;
将所述任务集合中记录比较结果满足所述任务调度条件的至少一个任务 确定为当前调度周期的目标任务。
所述处理器 01具体用于:
根据所述任务集合中每个任务的资源消耗信息指示的任务集群类型和所 述可用计算资源信息指示的可用集群类型,将所述任务集合中确定出所述任务 集群类型与所述可用集群类型匹配的任务子集合;
将所述任务子集合中任务的资源消耗信息指示的资源消耗量与所述可用 计算资源信息指示的可用资源量进行比较;
当比较结果为任务的所述资源消耗量小于所述可用资源量时,则记录该任 务对应的比较结果满足预置的任务调度条件;
将所述任务子集合中记录比较结果满足所述任务调度条件的至少一个任 务作为当前调度周期的目标任务。
所述处理器 01还用于:
控制所述任务集合中确定的目标任务执行;
当所述目标任务执行完成后,获取所述目标任务在当前调度周期的实际资 源消耗信息;
根据所述当前调度周期的实际资源消耗信息,更新预置的任务资源消耗映 射表中记录的所述目标任务的实际资源消耗信息。
所述处理器 01还用于:
当所述任务集合中每个任务的所述资源消耗信息指示的资源消耗量大于 所述可用计算资源信息指示的可用资源量时, 发出提示消息以提示优化该任 务;
或者所述任务调度图中显示的任务的执行进度小于预设阈值时,发出提示 消息以提示优化该任务。
可选的, 本发明实施例所述的任务调度设备还包括显示器 03 ,
所述显示器 03, 用于显示所述处理器 01执行的结果, 如显示所述处理器 01生成的任务调度图。
本发明实施例通过获取用于执行任务的可用计算资源信息,根据接收到的 各任务的资源消耗信息查找与所述可用计算资源信息匹配的目标任务,优化了 任务调度过程,并且根据生成的调度图实时查看任务的资源消耗信息和执行进 度为任务调度优化提供直观依据, 从而提高数据仓库的性能。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程, 是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算 机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。 其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory, ROM )或随机存储记忆体(Random Access Memory, RAM )等。
以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之 权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。

Claims

权 利 要 求
1、 一种任务调度的方法, 其特征在于, 包括:
获取用于执行任务的可用计算资源信息;
在接收到已配置完成的任务集合时,确定所述任务集合中每个任务的资源 消耗信息;
将所述任务集合中每个任务的资源消耗信息与所述可用计算资源信息进 行比较,并将所述任务集合中对应比较结果满足预置的任务调度条件的任务确 定为目标任务。
2、 如权利要求 1所述的方法, 其特征在于, 还包括:
根据所述任务集合中每个任务的任务依赖关系和 /或时间依赖关系, 生成 任务调度图;
其中,所述任务调度图包括标识所述任务集合中每个任务的任务标记和标 识任务间任务依赖关系和 /或时间依赖关系的关系标记。
3、 如权利要求 2所述的方法, 其特征在于, 所述任务调度图还包括所述 任务集合中每个任务的资源消耗信息标记和从所述任务集合中确定出的目标 任务的执行进度;
其中,所述资源消耗信息标记用于标识所述任务集合中每个任务的资源消 耗信息;所述目标任务的执行进度是根据目标任务的资源消耗信息和当前检测 到的所述目标任务在执行过程中的已消耗资源信息获得的。
4、 如权利要求 1至 3任一项所述的方法, 其特征在于, 在接收到已配置 完成的任务集合时, 所述确定出所述任务集合中每个任务的资源消耗信息, 包 括:
从任务资源消耗映射表中查找所述任务集合中每个任务在上一调度周期 的实际资源消耗信息; 根据上一调度周期的实际资源消耗信息估算所述任务集合中每个任务在 当前调度周期的资源消耗信息;
其中,所述任务资源消耗映射表为预先设置的记录有所述任务集合中各任 务在上一调度周期执行后的实际资源消耗信息。
5、 如权利要求 1至 4任一项所述的方法, 其特征在于, 所述将所述每个 任务的资源消耗信息与所述可用计算资源信息进行比较,并将所述任务集合中 对应比较结果满足预置的任务调度条件的任务确定为目标任务, 包括:
将所述任务集合中每个任务的所述资源消耗信息指示的资源消耗量与所 述可用计算资源信息指示的可用资源量进行比较;
当比较结果为任务的所述资源消耗量小于所述可用资源量时,则记录该任 务对应的比较结果满足预置的任务调度条件;
将所述任务集合中记录比较结果满足所述任务调度条件的至少一个任务 确定为当前调度周期的目标任务。
6、 如权利要求 1至 4任一项所述的方法, 其特征在于, 所述将所述每个 任务的资源消耗信息与所述可用计算资源信息进行比较,并将所述任务集合中 对应比较结果满足预置的任务调度条件的任务确定为目标任务, 包括:
根据所述任务集合中每个任务的资源消耗信息指示的任务集群类型和所 述可用计算资源信息指示的可用集群类型,从所述任务集合中确定出所述任务 集群类型与所述可用集群类型匹配的任务子集合;
将所述任务子集合中任务的资源消耗信息指示的资源消耗量与所述可用 计算资源信息指示的可用资源量进行比较;
当比较结果为任务的所述资源消耗量小于所述可用资源量时,则记录该任 务对应的比较结果满足预置的任务调度条件;
将所述任务子集合中记录比较结果满足所述任务调度条件的至少一个任 务作为当前调度周期的目标任务。
7、 如权利要求 1至 6任一项所述的方法, 其特征在于, 所述将所述每个 任务的资源消耗信息与所述可用计算资源信息进行比较,并将所述任务集合中 对应比较结果满足预置的任务调度条件的任务确定为目标任务之后, 还包括: 控制所述任务集合中确定的目标任务执行;
当所述目标任务执行完成后,获取所述目标任务在当前调度周期的实际资 源消耗信息;
根据所述当前调度周期的实际资源消耗信息,更新预置的任务资源消耗映 射表中记录的所述目标任务的实际资源消耗信息。
8、 如权利要求 3所述的方法, 其特征在于, 还包括:
当所述任务集合中每个任务的所述资源消耗信息指示的资源消耗量大于 所述可用计算资源信息所指示的可用资源量时,发出提示消息以提示优化该任 务;
或者, 所述任务调度图中生成的任务执行进度小于预设阈值时,发出提示 消息以提示优化该任务。
9、 一种任务调度的装置, 其特征在于, 包括:
可用计算资源信息获取模块, 用于获取用于执行任务的可用计算资源信 息;
任务资源消耗信息确定模块, 用于在接收到已配置完成的任务集合时,确 定所述任务集合中每个任务的资源消耗信息;
比较确定模块,用于将所述任务资源消耗信息确定模块确定的每个任务的 资源消耗信息与所述可用计算资源信息获取模块获得的可用计算资源信息进 行比较, 并根据所述比较结果,将所述任务集合中对应比较结果满足预置的任 务调度条件的任务确定为目标任务。
10、 如权利要求 9所述的装置, 其特征在于, 还包括:
任务调度图生成模块,用于根据所述任务集合中每个任务的任务依赖关系 和 /或时间依赖关系, 生成任务调度图;
其中,所述任务调度图包括标识所述任务集合中每个任务的任务标记和标 识任务间任务依赖关系和 /或时间依赖关系的关系标记。
11、 如权利要求 10所述的装置, 其特征在于, 所述任务调度图生成模块 生成的任务调度图还包括所述任务集合中每个任务的资源消耗信息标记和从 所述任务集合中确定出的目标任务的执行进度;
其中,所述资源消耗信息标记用于标识所述任务集合中每个任务的资源消 耗信息;所述目标任务的执行进度是根据目标任务的资源消耗信息和当前检测 到的所述目标任务在执行过程中的已消耗资源信息获得的。
12、 如权利要求 9至 11任一项所述的装置, 其特征在于, 所述任务资源 消耗信息确定模块, 包括:
查找单元,用于在接收到已配置完成的任务集合时,从任务资源消耗映射 表中查找所述任务集合中每个任务在上一调度周期的实际资源消耗信息; 估算单元,用于根据所述查找单元查找的实际资源消耗信息估算所述任务 集合中每个任务在当前调度周期的资源消耗信息;
其中,所述任务资源消耗映射表为预先设置的记录有所述任务集合中各任 务在上一调度周期执行后的实际资源消耗信息。
13、 如权利要求 9至 12任一项所述的装置, 其特征在于, 所述比较确定 模块, 包括:
第一比较单元,用于将所述任务集合每个任务的所述资源消耗信息指示的 资源消耗量与所述可用计算资源信息指示的可用资源量进行比较;
第一记录单元,用于当所述第一比较单元的比较结果为任务的所述资源消 耗量小于所述可用资源量时,则记录该任务对应的比较结果匹配预置的任务调 度条件;
第一确定单元,用于将所述任务集合中所述第一记录单元记录比较结果满 足所述任务调度条件的至少一个任务确定为当前调度周期的目标任务。
14、 如权利要求 9至 12任一项所述的装置, 其特征在于, 所述比较确定 模块, 包括:
类型匹配单元,用于将所述任务集合中每个任务的资源消耗信息指示的任 务集群类型和所述可用计算资源信息指示的可用集群类型进行比较,从所述任 务集合中确定出所述任务集群类型与所述可用集群类型匹配的任务子集合; 第二比较单元,用于将所述类型匹配单元确定的任务子集合中任务的资源 消耗信息指示的资源消耗量与所述可用计算资源信息指示的可用资源量进行 比较;
第二记录单元,用于当所述第二比较单元的比较结果为任务的所述资源消 耗量小于所述可用资源量时,则记录该任务对应的比较结果满足预置的任务调 度条件;
第二确定单元,用于将所述任务子集合中所述第二记录单元记录的比较结 果满足所述任务调度条件的至少一个任务作为当前调度周期的目标任务。
15、 如权利要求 9至 14任一项所述的装置, 其特征在于, 还包括: 控制模块, 用于控制所述任务集合中确定的目标任务执行;
实际资源消耗信息获取模块,用于当所述控制模块控制所述目标任务执行 完成后, 获取所述目标任务在当前调度周期的实际资源消耗信息;
更新模块,用于根据所述实际资源信息获取模块获取的当前调度周期所述 目标任务的实际资源消耗信息,更新预置的任务资源消耗映射表中记录的所述 目标任务的实际资源消耗信息。
16、 如权利要求 11所述的装置, 其特征在于, 还包括:
提示消息发出模块,用于当所述任务集合中每个任务的所述资源消耗信息 指示的资源消耗量大于所述可用计算资源信息指示的可用资源量时,或者所述 任务调度图中生成的任务的执行进度小于预设阈值时,发出提示消息以修改该 任务的依赖关系。
17、 一种计算机存储介质, 其特征在于,
所述计算机存储介质可存储有程序, 该程序执行时包括如权利要求 1至 8 任一项所述的步骤。
18、 一种任务调度设备, 其特征在于, 包括: 处理器、 通信接口, 所述通信接口,用于接收数据仓库中已配置的任务集合和可用计算资源信 所述处理器, 用于获取用于执行任务的可用计算资源信息; 在接收到已配 置完成的任务集合时,确定所述任务集合中每个任务的资源消耗信息; 将所述 任务集合中每个任务的资源消耗信息与所述可用计算资源信息进行比较,并将 所述任务集合中对应比较结果满足预置的任务调度条件的任务确定为目标任 务。
19、 如权利要求 18所述的设备, 其特征在于, 所述处理器还用于: 根据所述任务集合中每个任务的任务依赖关系和 /或时间依赖关系, 生成 任务调度图;
其中,所述任务调度图包括标识所述任务集合中每个任务的任务标记和标 识任务间任务依赖关系和 /或时间依赖关系的关系标记。
20、 如权利要求 19所述的设备, 其特征在于, 所述处理器生成的任务调 度图还包括所述任务集合中每个任务的资源消耗信息标记和从所述任务集合 中确定出的目标任务的执行进度;
其中,所述资源消耗信息标记用于标识所述任务集合中每个任务的资源消 耗信息;所述目标任务的执行进度是根据目标任务的资源消耗信息和当前检测 到的所述目标任务在执行过程中的已消耗资源信息获得的。
21、 如权利要求 18至 20任一项所述的设备, 其特征在于, 所述处理器具 体用于:
从任务资源消耗映射表中查找所述任务集合中每个任务在上一调度周期 的实际资源消耗信息;
根据所述实际资源消耗信息估算所述任务集合中每个任务在当前调度周 期的资源消耗信息;
其中,所述任务资源消耗映射表为预先设置的记录有所述任务集合中各任 务在上一调度周期执行后的实际资源消耗信息。
22、 如权利要求 18至 21任一项所述的设备, 其特征在于, 所述处理器具 体用于:
将所述任务集合每个任务的所述资源消耗信息指示的资源消耗量与所述 可用计算资源信息指示的可用资源量进行比较;
当比较结果为任务的所述资源消耗量小于所述可用资源量时,则记录该任 务对应的比较结果满足预置的任务调度条件;
将所述任务集合中记录比较结果满足所述任务调度条件的至少一个任务 确定为当前调度周期的目标任务。
23、 如权利要求 18至 21任一项所述的设备, 其特征在于, 所述处理器具 体用于:
根据所述任务集合中每个任务的资源消耗信息指示的任务集群类型和所 述可用计算资源信息指示的可用集群类型,将所述任务集合中确定出所述任务 集群类型与所述可用集群类型匹配的任务子集合;
将所述任务子集合中任务的资源消耗信息指示的资源消耗量与所述可用 计算资源信息指示的可用资源量进行比较;
当比较结果为任务的所述资源消耗量小于所述可用资源量时,则记录该任 务对应的比较结果满足预置的任务调度条件;
将所述任务子集合中记录比较结果满足所述任务调度条件的至少一个任 务作为当前调度周期的目标任务。
24、 如权利要求 18至 23任一项所述的设备, 其特征在于, 所述处理器还 用于:
控制所述任务集合中确定的目标任务执行;
当所述目标任务执行完成后,获取所述目标任务在当前调度周期的实际资 源消耗信息;
根据所述当前调度周期的实际资源消耗信息,更新预置的任务资源消耗映 射表中记录的所述目标任务的实际资源消耗信息。
25、 如权利要求 20所述的设备, 其特征在于, 所述处理器还用于: 当所述任务集合中每个任务的所述资源消耗信息指示的资源消耗量大于 所述可用计算资源信息指示的可用资源量时, 发出提示消息以提示优化该任 务;
或者所述任务调度图中显示的任务的执行进度小于预设阈值时,发出提示 消息以提示优化该任务。
26、 如权利要求 18至 25任一项所述的设备, 其特征在于, 还包括: 显示 器,
所述显示器, 用于显示所述处理器执行的结果。
PCT/CN2014/073495 2014-03-17 2014-03-17 一种任务调度的方法、装置及设备 WO2015139164A1 (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
PCT/CN2014/073495 WO2015139164A1 (zh) 2014-03-17 2014-03-17 一种任务调度的方法、装置及设备
CN201480001794.1A CN104520815B (zh) 2014-03-17 2014-03-17 一种任务调度的方法及装置
US15/127,001 US10216542B2 (en) 2014-03-17 2014-03-17 Resource comparison based task scheduling method, apparatus, and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2014/073495 WO2015139164A1 (zh) 2014-03-17 2014-03-17 一种任务调度的方法、装置及设备

Publications (1)

Publication Number Publication Date
WO2015139164A1 true WO2015139164A1 (zh) 2015-09-24

Family

ID=52794268

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2014/073495 WO2015139164A1 (zh) 2014-03-17 2014-03-17 一种任务调度的方法、装置及设备

Country Status (3)

Country Link
US (1) US10216542B2 (zh)
CN (1) CN104520815B (zh)
WO (1) WO2015139164A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112486651A (zh) * 2020-11-30 2021-03-12 中国电子科技集团公司第十五研究所 一种基于改进遗传算法的云测试平台任务调度方法
CN113612642A (zh) * 2021-08-03 2021-11-05 北京八分量信息科技有限公司 基于通信开销进行异构任务的刻画方法、装置及相关产品

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105677455A (zh) * 2014-11-21 2016-06-15 深圳市中兴微电子技术有限公司 一种设备调度方法及任务管理器
CN106354553A (zh) * 2015-07-14 2017-01-25 咪咕音乐有限公司 一种大数据系统中基于资源估算的任务调度方法及装置
US20170017394A1 (en) * 2015-07-15 2017-01-19 Futurewei Technologies, Inc. SYSTEM AND METHOD FOR DATA WAREHOUSE AND FINE GRANULARITY SCHEDULING FOR SYSTEM ON CHIP (SoC)
CN105260005B (zh) * 2015-09-22 2018-09-14 浙江工商大学 面向能耗的云工作流调度优化方法
CN106855825B (zh) * 2015-12-08 2020-10-23 中国移动通信集团公司 一种任务处理方法及其装置
CN107025131B (zh) * 2016-02-01 2020-12-29 腾讯科技(深圳)有限公司 一种任务调度方法及装置
CN107229519B (zh) * 2016-03-25 2021-04-23 阿里巴巴集团控股有限公司 任务调度方法和装置
CN107229517A (zh) * 2016-03-25 2017-10-03 阿里巴巴集团控股有限公司 任务调度方法和装置
US10594798B2 (en) * 2016-06-16 2020-03-17 Veniam, Inc. Systems and methods for managing containers in a network of moving things
CN106201723A (zh) * 2016-07-13 2016-12-07 浪潮(北京)电子信息产业有限公司 一种数据中心的资源调度方法及装置
CN106774111B (zh) * 2016-11-28 2019-12-13 北京龙鼎源科技股份有限公司 Plc系统中的任务处理方法、装置以及plc系统
US10866829B2 (en) * 2017-01-27 2020-12-15 Lenovo (Singapore) Pte. Ltd. Performing disruptive tasks based on user state
CN106919449B (zh) * 2017-03-21 2020-11-20 联想(北京)有限公司 一种计算任务的调度控制方法及电子设备
US11334391B2 (en) * 2017-04-17 2022-05-17 Red Hat, Inc. Self-programmable and self-tunable resource scheduler for jobs in cloud computing
CN109324890B (zh) * 2017-07-31 2021-01-05 华为技术有限公司 资源管理方法、装置及计算机可读存储介质
CN107609803B (zh) * 2017-10-27 2021-03-26 国网河南省电力公司商丘供电公司 一种网络用户需求调度方法及装置
CN109783201A (zh) * 2017-11-13 2019-05-21 北京京东尚科信息技术有限公司 数据交换方法及其系统
US10509671B2 (en) 2017-12-11 2019-12-17 Afiniti Europe Technologies Limited Techniques for behavioral pairing in a task assignment system
CN109669767B (zh) * 2018-11-30 2022-09-23 河海大学 一种面向多类型上下文依赖的任务封装和调度方法及系统
CN110716800B (zh) * 2019-10-09 2021-07-09 广州华多网络科技有限公司 任务调度方法及装置、存储介质及电子设备
US11687828B2 (en) 2019-10-11 2023-06-27 International Business Machines Corporation Auto-tuning of comparison functions
CN110955516B (zh) * 2019-10-30 2023-03-03 深圳供电局有限公司 批量任务处理方法、装置、计算机设备和存储介质
CN111666324B (zh) * 2020-05-18 2023-06-27 新浪技术(中国)有限公司 一种关系型数据库之间的etl调度方法及装置
US11366687B2 (en) * 2020-05-26 2022-06-21 Bank Of America Corporation Task allocations based on color-coded representations
CN112817721B (zh) * 2021-01-29 2022-08-09 中国平安财产保险股份有限公司 基于人工智能的任务调度方法、装置、计算机设备和介质
CN113114705B (zh) * 2021-06-15 2021-09-21 杭州海康威视数字技术股份有限公司 可信可编排的视频物联网终端内生安全检测方法及装置
CN114327811A (zh) * 2021-11-19 2022-04-12 浪潮电子信息产业股份有限公司 一种任务调度方法、装置、设备及可读存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102096602A (zh) * 2009-12-15 2011-06-15 中国移动通信集团公司 一种任务调度方法及其系统和设备
US20120291036A1 (en) * 2011-01-31 2012-11-15 Toyota Jidosha Kabushiki Kaisha Safety controller and safety control method
CN103365713A (zh) * 2012-04-01 2013-10-23 华为技术有限公司 一种资源的调度和管理方法及装置

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4855655B2 (ja) 2004-06-15 2012-01-18 株式会社ソニー・コンピュータエンタテインメント 処理管理装置、コンピュータ・システム、分散処理方法及びコンピュータプログラム
FR2873830B1 (fr) * 2004-07-30 2008-02-22 Commissariat Energie Atomique Procede d'ordonnancement de traitement de taches et dispositif pour mettre en oeuvre le procede
US8125950B2 (en) * 2007-01-31 2012-02-28 Broadcom Corporation Apparatus for wirelessly managing resources
US20090024563A1 (en) * 2007-07-17 2009-01-22 Vibhuti Singh Sengar Method and system for estimating per query resource consumption
US20100131959A1 (en) * 2008-11-26 2010-05-27 Spiers Adam Z Proactive application workload management
CN103294554A (zh) 2012-03-05 2013-09-11 中兴通讯股份有限公司 片上系统soc的多处理器的调度方法及装置
CN103377075A (zh) * 2012-04-28 2013-10-30 腾讯科技(深圳)有限公司 管理任务的方法、装置及系统
US9081826B2 (en) * 2013-01-07 2015-07-14 Facebook, Inc. System and method for distributed database query engines

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102096602A (zh) * 2009-12-15 2011-06-15 中国移动通信集团公司 一种任务调度方法及其系统和设备
US20120291036A1 (en) * 2011-01-31 2012-11-15 Toyota Jidosha Kabushiki Kaisha Safety controller and safety control method
CN103365713A (zh) * 2012-04-01 2013-10-23 华为技术有限公司 一种资源的调度和管理方法及装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112486651A (zh) * 2020-11-30 2021-03-12 中国电子科技集团公司第十五研究所 一种基于改进遗传算法的云测试平台任务调度方法
CN113612642A (zh) * 2021-08-03 2021-11-05 北京八分量信息科技有限公司 基于通信开销进行异构任务的刻画方法、装置及相关产品
CN113612642B (zh) * 2021-08-03 2024-03-08 北京八分量信息科技有限公司 基于通信开销进行异构任务的刻画方法、装置及相关产品

Also Published As

Publication number Publication date
CN104520815A (zh) 2015-04-15
CN104520815B (zh) 2019-03-01
US10216542B2 (en) 2019-02-26
US20170109206A1 (en) 2017-04-20

Similar Documents

Publication Publication Date Title
WO2015139164A1 (zh) 一种任务调度的方法、装置及设备
US11307770B2 (en) Capacity forecasting based on capacity policies and transactions
US9710300B2 (en) Flow topology of computer transactions
US9098351B2 (en) Energy-aware job scheduling for cluster environments
Zheng et al. Stochastic DAG scheduling using a Monte Carlo approach
US8713578B2 (en) Managing job execution
US20130339079A1 (en) Configurable resource policies
US20090006070A1 (en) Simulation of Installation and Configuration of Distributed Software
JP2011028752A5 (zh)
CN109815007A (zh) 基于云监控的线程控制方法、装置、电子设备及存储介质
Chen et al. Predicting job completion times using system logs in supercomputing clusters
Maroulis et al. A holistic energy-efficient real-time scheduler for mixed stream and batch processing workloads
US20230109368A1 (en) Autoscaling gpu applications in kubernetes based on gpu utilization
CN106933857B (zh) 一种数据仓库中任务的调度方法、装置
CN115729687A (zh) 任务调度方法、装置、计算机设备、存储介质
US20210149726A1 (en) Scheduling device, scheduling system, scheduling method, and non-transitory computer-readable medium
US20140149169A1 (en) Impact analysis method, impact analysis apparatus and non-transitory computer-readable storage medium
JP7119882B2 (ja) 劣化予測プログラム、劣化予測方法、および劣化予測装置
Xue Improving Computing Efficiency and Reducing Carbon Footprint for Turing Cluster
CN115113983A (zh) 运维平台的节点扩展方法、装置及电子设备
CN116302331A (zh) 一种Kubernetes集群健康巡检的方法
CN111158847A (zh) 一种开源信息采集虚拟主机资源调度方法和系统
US20160124622A1 (en) User action duration
JP2011198074A (ja) It資産評価管理システム
JP2015055885A (ja) ジョブ実行所要時間推定システム

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 14886274

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 15127001

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 14886274

Country of ref document: EP

Kind code of ref document: A1