Job Management Device, Job Management Method, and Program

The job management device addresses the challenge of high rollback costs by extracting dependency relationships and performing controlled rollbacks, efficiently restoring the system state before target and dependent jobs were executed.

JP7694060B2Active Publication Date: 2025-06-18NEC CORP
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
JP2021031800
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2021-03-01
Publication Date
2025-06-18
Estimated Expiration
2041-03-01

AI Technical Summary

Technical Problem

Existing job management systems face challenges in efficiently rolling back system changes made by jobs that perform different operations based on varying input data, leading to high labor and time costs.

Method used

A job management device that includes a target job reception module, a dependency relationship extraction module, and a rollback control module. This device receives a designation of a target job, extracts dependency relationships based on system state changes, and performs rollback control to restore the system state before the target job and dependent jobs were executed.

Benefits of technology

The solution effectively reduces the cost of rolling back system changes by accurately identifying and managing dependency relationships, thereby minimizing the processing time and calculation required for rollback operations.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007694060000001
    Figure 0007694060000001
  • Figure 0007694060000002
    Figure 0007694060000002
  • Figure 0007694060000003
    Figure 0007694060000003
Patent Text Reader

Abstract

To provide a job management device capable of reducing the cost required for restoring a system updated by a job for performing a different action depending on data being input to a state before execution of the job.SOLUTION: A job management device 100 includes: an object job accepting unit 17 which accepts designation of an object job being an object of re-execution among jobs for changing a state of a system; a dependence relation extracting unit 11 which extracts a dependence relation of the job to the object job on the basis of a record of changes of the state of the system by the job when the object job is executed; and a rewind control unit 14 which performs rewinding control for restoring a state of the system to the state of the system before execution of the object job and the job having the dependence relation to the object job when the object job is executed.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to a technique for managing jobs.

Background Art

[0002] Performing information processing by a job Information In a processing system, when it is desired to re-execute the processing of a job flow from a specific location, it is necessary to return the changes to the system resources made by the group of jobs executed before the re-execution to the state at the location where the re-execution is desired. In the following description, the change of the system resources may also be referred to as the change of the system state. The change of the system state includes, for example, the update of data related to the system such as a database. Similarly, in the following description, returning the system state is referred to as "rolling back", and the process of returning the system state is referred to as "rollback". Examples of techniques for performing rollback of the system state are disclosed by the following patent documents.

[0003] Patent Document 1 describes a job execution management system that re-executes, together with a specified job, a job that is the notification destination of an event from the job specified as the rollback target or a job scheduled to be executed after the specified job is executed.

[0004] Patent Document 2 describes a job management apparatus that executes a retry job including a restart step that is a job step that has ended abnormally and job steps after the restart step.

Prior Art Documents

Patent Documents

[0005]

Patent Document 1

Patent Document 2

Summary of the Invention

Problems to be Solved by the Invention

[0006] For example, in a job flow that sequentially executes jobs based on the content of input data, the executed jobs and changes in the system resources updated by the jobs may vary depending on the input data. In such a case, the operation of returning the system state to before the execution of the job requires a large cost (e.g., labor and time).

[0007] In the technologies of Patent Documents 1 and 2, when the input data is different from the input data when the job was last executed, even if the job is re-executed, the resources updated by the job at the last execution are not necessarily updated by the re-executed job.

[0008] One object of the present disclosure is to provide a job management device or the like that can suppress the cost of returning a system updated by a job that performs different operations depending on input data to the state before the execution of the job.

Means for Solving the Problems

[0009] A job management device according to an aspect of the present disclosure includes: a target job reception means for receiving a designation of a target job that is the job to be re-executed among jobs that change the state of the system; a dependency relationship extraction means for extracting a dependency relationship of the job with respect to the target job based on a record of a change in the state of the system by the job when the target job is executed; and a rollback control means for performing a rollback control to return the state of the system to the state of the system before the target job and the job having the dependency relationship when the target job is executed are executed, based on the record of the change.

[0010] A job management method according to one aspect of the present disclosure receives a designation of a target job that is the job to be re-executed among jobs that change the state of a system, extracts the job dependency of the job with respect to the target job based on a record of the change in the state of the system by the job when the target job is executed, and performs rollback control to return the state of the system to the state of the system before the target job and the job having the dependency when the target job is executed are executed, based on the record of the change.

[0011] A program according to one aspect of the present disclosure causes a computer to execute a target job reception process that receives a designation of a target job that is the job to be re-executed among jobs that change the state of a system, a dependency extraction process that extracts the job dependency of the job with respect to the target job based on a record of the change in the state of the system by the job when the target job is executed, and a rollback control process that performs rollback control to return the state of the system to the state of the system before the target job and the job having the dependency when the target job is executed are executed, based on the record of the change.

Advantages of the Invention

[0012] The present disclosure has an effect of suppressing the cost of returning a system updated by a job that performs different operations depending on input data to the state before the execution of the job.

Brief Description of the Drawings

[0013]

Figure 1

Figure 2

Figure 3

Figure 4

Figure 5

Figure 6

Figure 7

Figure 8

Figure 9

Figure 10

Figure 11

Figure 12

Figure 13

DETAILED DESCRIPTION OF THE INVENTION

[0014] Hereinafter, before describing the embodiments of the present disclosure, jobs that perform different operations depending on the input data will be described in more detail.

[0015] In a job management system, there is a case where it is desired to re - execute the processing of a certain job flow from a specific point. In the description of this embodiment, a job flow is a set of a plurality of jobs whose execution order is defined. For example, assume there is a job flow that takes some data as input and sequentially executes jobs based on the content of that data. At this time, if it is found that there is an error in the input data, it becomes necessary to re - execute from the point where the input data is read in the job flow.

[0016] When re - doing such a job flow, problems may occur if simply re - executing from the job that reads the input data.

[0017] FIG. 3 is a diagram showing an example of a job flow and the environment in which the job flow is executed. FIGS. 4, 5, and 6 are diagrams showing examples of records updated by jobs, respectively.

[0018] For example, assume there are job flows 1 and 2 as shown in FIG. 3. Job flow 1 performs processing based on input data and updates a specific record in the DB at job C. Job flow 2 is executed in response to an event notification from job flow 1, and job D therein performs processing based on the updated data. At this time, assume that due to incorrect input data, record S is updated from record P as shown in FIG. 4 by job C. On the other hand, assume that when using correct data, records R and T are updated from record P as shown in FIG. 5. In such a case, if job flow 1 is re - executed after the execution of job flows 1 and 2 with incorrect input data, as shown in FIG. 6, all records from record P to record T will be in an updated state. Since records that should not be updated data will be input in subsequent job flow 2 when using correct input data, incorrect processing will be performed.

[0019] In order to prevent incorrect processing associated with such re - execution, it is necessary to roll back the changes to the system made by the job groups within job flows 1 and 2 due to incorrect input data, in this example, the changes to the database, to the state before the execution of the job with incorrect input data, and then perform re - execution with correct input data.

[0020] This roll - back operation needs to determine which job's changes to the system and up to which point to roll back, taking into account the dependency relationships of each job, and it was a very labor - intensive and time - consuming operation.

[0021] <First Embodiment> Hereinafter, the first embodiment of the present disclosure will be described with reference to the drawings.

[0022] <Configuration> FIG. 1 is a block diagram showing an example of the configuration of a job management apparatus 100 according to the first embodiment of the present disclosure. In the example shown in FIG. 1, the job management apparatus 100 includes a target job reception unit 17, a dependency relationship extraction unit 11, and a roll - back control unit 14.

[0023] The target job reception unit 17 receives a designation of a target job, which is a job to be re - executed among the jobs that change the state of the system. The dependency relationship extraction unit 11 extracts the dependency relationship of the jobs with respect to the target job based on the record of the change in the state of the system by the jobs when the target job is executed. The roll - back control unit 14 performs roll - back control to return the state of the system to the state before the execution of the target job and the jobs having the dependency relationship when the target job is executed, based on the record of the change.

[0024] <Operation> FIG. 2 is a flowchart showing an example of the operation of the job management apparatus 100 according to the first embodiment of the present disclosure.

[0025] In the example shown in FIG. 2, first, the target job reception unit 17 receives a designation of a target job to be re-executed, which is input, for example, by a user using an input device such as a keyboard of the job management device 100 (step S101).

[0026] The dependency extraction unit 11 extracts the job dependencies for the target job based on the state of the system, for example, the record of resource changes (step S102). The job dependencies for the target job include, for example, information on jobs that use resources based on the resources changed by the target job. The resources based on the resources changed by the target job include the resources changed by the target job and the resources changed by other jobs using the resources changed by the target job. The resources based on the resources changed by the target job further include the resources changed by other jobs using the resources based on the resources changed by the target job.

[0027] The rollback control unit 14 performs rollback control to return the resources to the state before the target job and the jobs having dependencies on the target job are executed, based on the record of changes (step S103).

[0028] <Effect> In this embodiment, there is an effect that the cost of returning the system updated by jobs that perform different operations depending on the input data to the state before the execution of the jobs can be suppressed. The cost is, for example, the processing time and the amount of calculation. The reason is that the dependency extraction unit 11 extracts the job dependencies for the target job, and the rollback control unit 14 performs a rollback process to return the state of the system to the state before the target job and the jobs having dependencies on the target job are executed.

[0029] <Second Embodiment> FIG. 7 is a block diagram showing an example of the configuration of the job management apparatus 10 according to the second embodiment of the present disclosure. In the example shown in FIG. 7, the job management apparatus 10 includes a target job reception unit 17, a dependency extraction unit 11, a system change target management unit 12, a rollback time determination unit 13, a rollback control unit 14, a job execution control unit 15, and a system change target storage unit 16. The job management apparatus 10 is communicably connected to a job execution system 20 and a system resource 30.

[0030] The system resource 30 is a device that stores a set of system resources used by the job execution system 20. In the following description, the system resource 30 is, for example, a database system including a table as a resource. Note that the system resource 30 may be, for example, a storage device that stores files as resources. The system resource 30 may be, for example, a version management system that stores objects as resources. The system resource 30 may be, for example, a storage device that stores snapshots of volumes as resources.

[0031] The job execution system 20 is a system that executes a job for changing resources such as data stored in the system resource 30. The job execution system 20 executes a job based on the definition contents of the job and the job flow.

[0032] <Target job reception unit 17> The target job reception unit 17 receives a designation of a job to be re-executed (referred to as a target job in the description of the embodiment of the present disclosure) input by a user using an input device such as a keyboard of the job management apparatus 10. Note that the designation of the target job is, for example, identification information of the target job that identifies the target job. The target job reception unit 17 sends the received designation of the target job to the dependency extraction unit 11.

[0033] <System change target management unit 12> The system change target management unit 12 acquires, from the job execution system 20, information on the history of jobs executed by the job execution system 20 (hereinafter referred to as history information), and stores the acquired history information in the system change target storage unit 16.

[0034] The history information includes, for example, information identifying a job such as a job name and job identification information, the execution time of the job, and information identifying system resources changed by the execution of the job. The history information may include the state of the resources (for example, the values of the resources) after the change by the job.

[0035] <System change target storage unit 16> The system change target storage unit 16 stores the above-described history information stored by the system change target management unit 12.

[0036] <Dependency extraction unit 11> The dependency extraction unit 11 receives a specification of a target job from the target job reception unit 17. The dependency extraction unit 11 acquires, from the job execution system 20, information for identifying jobs that have a dependency relationship with the target job. Information for identifying jobs that have a dependency relationship with the target job includes, for example, the definition of the job flow in which the target job is included, the history of event notifications from the target job and subsequent jobs of the target job, and the like.

[0037] The dependency extraction unit 11 extracts the dependency relationships of other jobs with respect to the target job based on information for identifying jobs that have a dependency relationship with the target job. The dependency extraction unit 11 may extract, as information representing the dependency relationship, information representing the target job, a subsequent job of the target job, and a job that has received an event notification from the target job and the subsequent job of the target job. A subsequent job of the target job is, for example, all jobs that can be executed after the target job in the job flow in which the target job is included. A subsequent job of the target job may include jobs in other job flows that have received an event notification from the target job and the subsequent job of the target job. The other job flow is a job flow that does not include the target job.

[0038] The dependency extraction unit 11 may obtain from the job execution system 20, as information for identifying jobs that have a dependency relationship with the target job, information including the definition content of the target job and jobs executed after the target job. The definition content of a job includes, for example, information for identifying resources used when the job is executed (also referred to as resource identification information) and information for identifying resources updated when the job is executed. Information for identifying jobs that have a dependency relationship with the target job includes target input data that is data used as input by the target job.

[0039] In this case, the dependency extraction unit 11 may extract, as the dependency relationship, information representing the target job and a job that depends on a change in resources by the target job. Jobs that depend on a change in resources by the target job include jobs that use resources changed by the target job. Jobs that depend on a change in resources by the target job further include jobs that use resources changed by a job that uses resources changed by the target job. Jobs that depend on a change in resources by the target job further include jobs that use resources changed by a job that depends on a change in resources by the target job.

[0040] In this case, the dependency extraction unit 11 extracts jobs that depend on changes to resources made by the target job based on the input data used by the target job as input (in other words, when the target job uses the input data as input). The dependency extraction unit 11 acquires the resources used as input by the extracted jobs from the job execution system 20, and may extract jobs that depend on changes to resources made by the extracted jobs when the extracted jobs use the acquired resources as input. The dependency extraction unit 11 may repeat the extraction of jobs as described above until there are no more jobs that depend on changes to resources made by the extracted jobs.

[0041] The dependency extraction unit 11 may extract the above-described dependencies by any of other existing methods. The dependency extraction unit 11 sends information representing the extracted dependencies (for example, information identifying the target job and the jobs that depend on changes to resources made by the target job) to the rollback time determination unit 13.

[0042] <Rollback time determination unit 13> The rollback time determination unit 13 receives information representing the extracted dependencies from the dependency extraction unit 11. As described above, the information on the extracted dependencies may identify, for example, the target job and the jobs that are executed after the target job. The information on the extracted dependencies may be, for example, information identifying the target job and the jobs that depend on changes to resources made by the target job. The rollback time determination unit 13 identifies, from the change history stored in the system change target storage unit 16, the resources changed by the jobs identified by the information representing the dependencies and the times when the resources were changed. For each resource changed by the jobs identified by the information representing the dependencies, the rollback time determination unit 13 determines the earliest time of change as the rollback time.

[0043] When the rollback time specifying unit 13 specifies the rollback time information for each of the identified and changed resources, it sends the information to the rollback control unit 14. The rollback time specifying unit 13 may also send the information for specifying the target job to the rollback control unit 14.

[0044] <Rollback control unit 14> The rollback control unit 14 receives the rollback time information for each of the changed resources from the rollback time specifying unit 13. The rollback control unit 14 may further receive the information for specifying the target job from the rollback time specifying unit 13.

[0045] The rollback control unit 14 rolls back the resources stored in the system resource 30 and having the determined rollback time to the rollback time for each resource. In other words, the rollback control unit 14 returns the resources stored in the system resource 30 and having the determined rollback time to the state immediately before the rollback time for each resource.

[0046] The rollback control unit 14 may perform rollback, for example, by using the history information stored in the system change target storage unit 16 to identify the state of the resource immediately before the rollback time for each of the changed resources and changing the state of the resource to the identified state.

[0047] The system resource 30 may store the change history (for example, the change time and the value after the change) for each of the stored resources. The rollback control unit 14 may identify the state of the resource immediately before the rollback time stored in the system resource 30 for each of the changed resources. The rollback control unit 14 may perform rollback by changing the state of the resource to the identified state for each of the changed resources.

[0048] When the rollback is completed, the rollback control unit 14 notifies the job execution control unit 15 of the completion of the rollback. In addition, the rollback control unit 14 may notify the job execution control unit 15 of the information for specifying the target job.

[0049] <Job Execution Control Unit 15> When the Job Execution Control Unit 15 is notified of the end of rewinding from the Rewinding Control Unit 14, it causes the Job Execution System 20 to re-execute the target job. Note that the Job Execution Control Unit 15 may receive information for identifying the target job from the Rewinding Control Unit 14. The Job Execution System 20 may be configured to re-execute the job for which re-execution is instructed according to the received instruction when it receives an instruction for re-executing a job. The instruction for re-executing a job may include information for identifying the job to be re-executed.

[0050] <Operation> FIG. 8 is a flowchart showing an example of the operation of the job management apparatus 10 according to the second embodiment of the present disclosure.

[0051] In the example shown in FIG. 8, the target job reception unit 17 receives a designation of a target job to be re-executed (step S11). Next, the dependency extraction unit 11 extracts the dependency of a job that depends on the target job executed most recently (step S12).

[0052] Next, the rewinding time specifying unit 13 classifies the extracted jobs having dependencies for each target of change by the job (i.e., resource) (step S13). When the rewinding time of all targets of change has not necessarily been specified (NO in step S14), the rewinding time specifying unit 13 specifies, for each target of change, the earliest change time by the extracted jobs as the rewinding time (step S15). In step S15, one target of change is selected, and the earliest change time by the extracted jobs for the selected target is specified as the rewinding time. After step S15, the operation shown in FIG. 7 returns to step S14.

[0053] When the rewinding time of all targets of change has been specified (YES in step S14), rewinding is executed to set all targets of change to the state immediately before the specified rewinding time (step S16).

[0054] <Effect> This embodiment has the same effect as the first embodiment. The reason is the same as the reason for the effect of the first embodiment.

[0055] <Schematic example> Next, the operation of the job management apparatus 10 of the present disclosure will be described using a schematic example.

[0056] FIG. 9 is a diagram showing a schematic example of a job flow.

[0057] In the following description, as shown in FIG. 9, there are three job flows. Job flow 1 includes jobs A, B, and C. Job flow 2 includes jobs D, E, and F. Job flow 3 includes jobs G, H, and I. Among the jobs included in these job flows, job B changes file file1. Job F changes file file2. The change of the file is mainly either file generation or appending to the file. Also, jobs C and I change table table1 in database DB1. The change of the database table is mainly record creation, update, or deletion. Further, job flow 1 and job flow 2 have a dependency relationship such that job flow 2 is started by an event notification from job C. Job flow 1 and job flow 3 have a dependency relationship such that job G uses file file1 changed by job B as an input. Also, normally, the system change target management unit 12 acquires information on the execution history of jobs from the job execution system 20 and accumulates data based on the acquired information in the system change target storage unit 16.

[0058] FIG. 10 is a diagram showing an example of data accumulated in the system change target storage unit 16.

[0059] In the following description, the target job specified by the user is job A in job flow 1. Note that, for example, if there is an error in the input data of job A, it is necessary to redo a series of processes from job A.

[0060] Before re - executing Job A, the dependency extraction unit 11 identifies, based on the information on the dependency of the flow, a group of jobs that were executed, for example, based on incorrect input data. A method for identifying a related group of jobs based on the dependency of the flow is also described in, for example, Patent Document 1.

[0061] The rollback time determination unit 13 refers to the group of jobs identified by the dependency extraction unit 11 and the change history data stored in the system change target storage unit 16, and classifies the identified group of jobs for each change target. As described above, in this exemplary pattern, the change targets are the files file1, file2, and the table table1 of the database DB1.

[0062] FIG. 11 is a diagram showing an example of the group of jobs classified for each change target and the change time.

[0063] Subsequently, the rollback time determination unit 13 determines the rollback time for each classified change target. When there are multiple jobs that change the system resources, the rollback time determination unit 13 sets the earliest time as the rollback time.

[0064] FIG. 12 is a diagram showing an example of the determined rollback time.

[0065] The rollback control unit 14 rolls back the group of system resources to be rolled back determined by the rollback time determination unit 13 until immediately before the determined rollback time. The rollback control unit 14 performs the rollback using existing technologies. The rollback control unit 14 may perform, for example, a rollback using the journal function of the file system. The rollback control unit 14 may perform, for example, a rollback using the point - in - time recovery function of the database.

[0066] The job execution control unit 15 causes the job execution system 20 to re - execute the job to be re - executed specified to the dependency extraction unit 11.

[0067] <Other Embodiments> The job management device 10 and the job management device 100 can be realized by a computer including a memory into which a program read from a storage medium is loaded and a processor that executes the program. The job management device 10 and the job management device 100 can also be realized by dedicated hardware. The job management device 10 and the job management device 100 can also be realized by a combination of the aforementioned computer and dedicated hardware.

[0068] FIG. 13 is a diagram showing an example of the hardware configuration of a computer 1000 that can realize the job management device according to an embodiment of the present disclosure. In the example shown in FIG. 13, the computer 1000 includes a processor 1001, a memory 1002, a storage device 1003, and an I / O (Input / Output) interface 1004. Further, the computer 1000 can access a storage medium 1005. The memory 1002 and the storage device 1003 are storage devices such as a RAM (Random Access Memory) and a hard disk, for example. The storage medium 1005 is a storage device such as a RAM, a hard disk, a ROM (Read Only Memory), or a removable storage medium, for example. The storage device 1003 may be the storage medium 1005. The processor 1001 can read and write data and programs to and from the memory 1002 and the storage device 1003. The processor 1001 can access, for example, the job execution system 20 and the system resource 30 via the I / O interface 1004. The processor 1001 can access the storage medium 1005. A program for operating the computer 1000 as the job management device according to the embodiment of the present disclosure is stored in the storage medium 1005.

[0069] The processor 1001 loads into the memory 1002 a program that causes the computer 1000 to operate as the job management device 10 and that is stored in the storage medium 1005. Then, by executing the program loaded into the memory 1002, the processor 1001 causes the computer 1000 to operate as the job management device 10.

[0070] Further, the processor 1001 loads into the memory 1002 a program that causes the computer 1000 to operate as the job management device 100 and that is stored in the storage medium 1005. In this case, by executing the program loaded into the memory 1002, the processor 1001 causes the computer 1000 to operate as the job management device 100.

[0071] The dependency extraction unit 11, the system change target management unit 12, the rollback time specifying unit 13, the rollback control unit 14, the job execution control unit 15, and the target job reception unit 17 can be realized, for example, by the processor 1001 that executes the program loaded into the memory 1002. The system change target storage unit 16 can be realized by a storage device 1003 such as the memory 1002 or the hard disk device included in the computer 1000. Part or all of the dependency extraction unit 11, the system change target management unit 12, the rollback time specifying unit 13, the rollback control unit 14, the job execution control unit 15, the system change target storage unit 16, and the target job reception unit 17 can be realized by dedicated circuits that realize the functions of the respective units.

[0072] Also, part or all of the above embodiments can be described as follows in the appended claims, but are not limited thereto.

[0073] (Appended Claim 1) Target job reception means for receiving a designation of a target job that is the job to be re-executed among jobs that change the state of the system; Dependency extraction means for extracting the job dependencies for the target job based on a record of the change in the state of the system by the job when the target job is executed; Based on the record of the change, rollback control means for performing rollback control to return the state of the system to the state of the system before the target job and the job having the dependency when the target job is executed are executed; A job management device comprising the same.

[0074] (Appendix 2) The dependency extraction means extracts, as the dependency, information including information on the job that depends on the change of the system by the target job based on the record of the change. The job management device according to Appendix 1.

[0075] (Appendix 3) The job management device further comprises rollback time specifying means for specifying a rollback time which is the time when the state of the system was a state in which the target job could be re-executed based on the record of the change. The rollback control means, as the rollback control, returns the state of the system to the state of the system at the rollback time based on the record of the change. The job management device according to Appendix 1 or 2.

[0076] (Appendix 4) The rollback control means, as the rollback control, returns the state of the system changed by the target job and the job having the dependency to the state of the system before the target job is executed. The job management device according to any one of Appendices 1 to 3.

[0077] (Appendix 5) The dependency extraction means extracts the dependency further based on target input data which is data used as input by the target job when the target job is executed. The job management device according to any one of Appendices 1 to 4.

[0078] (Appendix 6) The dependency extraction means extracts the dependency including information on a job that uses data that depends on a change in the state of the system by the target job when the target input data is used as input. The job management device according to Supplementary Note 5.

[0079] (Supplementary Note 7) Job execution control means for re-executing the target job after the rollback control ends. The job management device according to any one of Supplementary Notes 1 to 6, further including the same.

[0080] (Supplementary Note 8) Receiving a designation of a target job that is the job to be re-executed among jobs that change the state of the system, extracting a dependency of the job on the target job based on a record of a change in the state of the system by the job when the target job is executed, performing rollback control to return the state of the system to the state before the target job and the job having the dependency when the target job is executed, based on the record of the change. Job management method.

[0081] (Supplementary Note 9) As the dependency, extracting information including information on the job that depends on the change in the system by the target job based on the record of the change. The job management method according to Supplementary Note 8.

[0082] (Supplementary Note 10) Identifying a rollback time that is the time when the state of the system was in a state where the target job could be re-executed, based on the record of the change, As the rollback control, returning the state of the system to the state of the system at the rollback time, based on the record of the change. The job management method according to Supplementary Note 8 or 9.

[0083] (Supplementary Note 11) As the rollback control, the state of the system changed by the target job and the job having the dependency is returned to the state of the system before the target job is executed. The job management method according to any one of Appendices 8 to 10.

[0084] (Appendix 12) Based on the target input data which is the data used as input by the target job when the target job is executed, the dependency is extracted. The job management method according to any one of Appendices 8 to 11.

[0085] (Appendix 13) The dependency is extracted including information on the job that uses data depending on the change in the state of the system by the target job when the target input data is used as input. The job management method according to Appendix 12.

[0086] (Appendix 14) After the rollback control ends, the target job is re-executed. The job management method according to any one of Appendices 8 to 13.

[0087] (Appendix 15) A target job reception process that receives a designation of a target job which is the job to be re-executed among the jobs that change the state of the system, A dependency extraction process that extracts the dependency of the job on the target job based on the record of the change in the state of the system by the job when the target job is executed, A rollback control process that performs rollback control to return the state of the system to the state of the system before the target job and the job having the dependency when the target job is executed are executed, based on the record of the change. A program for causing a computer to execute.

[0088] (Appendix 16) The dependency extraction process extracts information including information on the job that depends on the change to the system by the target job based on the record of the change as the dependency. The program described in Supplementary Note 15.

[0089] (Supplementary Note 17) The computer is further caused to execute a rollback time specifying process for specifying a rollback time which is the time when the state of the system was in a state where the target job could be re-executed based on the record of the change. The rollback control process, as the rollback control, returns the state of the system to the state of the system at the rollback time based on the record of the change. The program described in Supplementary Note 15 or 16.

[0090] (Supplementary Note 18) The rollback control process, as the rollback control, returns the state of the system changed by the target job and the job having the dependency to the state of the system before the target job was executed. The program described in any one of Supplementary Notes 15 to 17.

[0091] (Supplementary Note 19) The dependency extraction process further extracts the dependency based on target input data which is data used as input by the target job when the target job is executed. The program described in any one of Supplementary Notes 15 to 18.

[0092] (Supplementary Note 20) The dependency extraction process extracts the dependency including information on the job that uses data that depends on the change in the state of the system by the target job when the target input data is used as input. The program described in Supplementary Note 19.

[0093] (Supplementary Note 21) A job execution control process for re - executing the target job after the rewinding control ends The program according to any one of Appendices 15 to 20, which further causes a computer to execute

[0094] As described above, the present invention has been described with reference to the embodiments, but the present invention is not limited to the above - described embodiments. Various changes that can be understood by those skilled in the art can be made to the configuration and details of the present invention within the scope of the present invention.

Explanation of Reference Numerals

[0095] 10 Job management device 11 Dependency extraction unit 12 System change target management unit 13 Time determination unit 14 Control unit 15 Job execution control unit 16 System change target storage unit 17 Target job reception unit 20 Job execution system 30 System resources 100 Job management device 1000 Computer 1001 Processor 1002 Memory 1003 Storage device 1004 I / O interface 1005 Storage medium

Claims

1. Target job receiving means for receiving a designation of a target job, which is a job among jobs for changing the state of a system and has an error in input data and is a target for re-execution; Dependency relationship extraction means for extracting a dependency relationship of the job with respect to the target job based on a record of a change in the state of the system caused by the job when the target job is executed; Rollback control means for performing rollback control to return the state of the system to the state of the system before the target job and the job having the dependency relationship when the target job is executed, based on the record of the change; Job execution control means for re-executing the target job with correct input data after the rollback control ends; A job management device comprising:

2. The dependency relationship extraction means extracts, as the dependency relationship, information including information on a job that depends on a change in the state of the system caused by the target job based on the record of the change. The job management device according to claim 1.

3. Further comprising rollback time specifying means for specifying a rollback time, which is a time when the state of the system is a state in which the target job can be re-executed, based on the record of the change; The rollback control means, as the rollback control, returns the state of the system to the state of the system at the rollback time based on the record of the change. The job management device according to claim 1 or 2.

4. The rollback control means, as the rollback control, returns the state of the system changed by the target job and the job having the dependency relationship to the state of the system before the target job is executed. The job management device according to any one of claims 1 to 3.

5. The dependency extraction means extracts the dependency based on the target input data which is the data used as input by the target job when the target job is executed. The job management device according to any one of claims 1 to 4.

6. The dependency extraction means extracts the dependency, including information on the job that uses data that depends on the change in the state of the system by the target job when the target input data is used as input. The job management device according to claim 5.

7. Among the jobs that change the state of the system, accept the designation of a target job which is the job with an error in the input data and is the target for re - execution, Based on the record of the change in the state of the system by the job when the target job is executed, extract the job dependencies for the target job, Based on the record of the change, perform rollback control to return the state of the system to the state before the target job and the job having the dependency when the target job is executed are executed, After the rollback control ends, perform re - execution of the target job with correct input data. Job management method.

8. As the dependency, based on the record of the change, extract information including information on the job that depends on the change in the state of the system by the target job. The job management method according to claim 7.

9. A target job reception process for accepting the designation of a target job which is the job with an error in the input data and is the target for re - execution among the jobs that change the state of the system, and A dependency extraction process for extracting the job dependencies for the target job based on the record of the change in the state of the system by the job when the target job is executed, Based on the record of the change, perform rollback control to return the state of the system to the state of the system before the target job and the job having the dependency when the target job was executed are executed, and a rollback control process for performing rollback control; After the rollback control is completed, a job execution control process for re-executing the target job with correct input data; A program that causes a computer to execute.

Citation Information

Patent Citations

  • Synchronizing method of parallel processing

    JP1994028199A

  • Business progress controller and method thereof, business progress control program, and recording medium recorded with the program

    JP2003242313A

  • Job execution management system, job reexecution method, and job re-execution program

    JP2015204036A

  • Job management device, job management method and job management program

    WO2017046939A1