the following detailed description is of the best currently contemplated modes of carrying out the invention . the description is not to be taken in a limiting sense , but is made merely for the purpose of illustrating the general principles of the invention , since the scope of the invention is best defined by the appended claims . the present invention provides a system and method of information job management in a computer - based memory using a two - tier scheduling method at both the macro level and the micro level . the system is especially useful in large scale data management to process large amounts of data . embodiments of the invention differ from the prior art by continually planning management tasks in the future at the macro level and , at the micro level dispatching data requests for data management jobs that are controlled to ensure primary , foreground jobs are minimally impacted . embodiments of the invention differ from prior art methods by accomplishing the following : ( a ) increase system resource utilization , ( b ) decrease impact seen by the primary jobs , ( c ) achieve relaxed performance goals of the management jobs , i . e ., completion deadline , and ( d ) automate the data management . fig1 shows a block diagram of the data management software architecture 100 . the managed system information 10 may first be operated on in the procedure flow by a management job planner 15 that may schedule and plan future background management jobs based on the information available at the managed system information 10 . the jobs may be stored in a job container queue 20 . a timer 25 may be used to register a time period to execute a management job . an initial time for a first management job may be registered by the timer 25 to execute the first management job . when a first management job is dispatched , another execute time may be registered for the next immediate management job 30 . when this subsequent time period registered by the timer 25 is due , the next immediate management job 30 may be evaluated for execution based on the registered time by the timer 25 . this next immediate management job 30 may also specify a finish time deadline . for example , a first job is assigned an execute time by the timer 25 . at the scheduled time , the first job is evaluated for execution , and if the resources are available , the first job is dispatched for execution . then , the timer 25 may register an execute time for the next immediate management job 30 . the admission controller 35 may calculate the resource reservation weight ( φ 1 ) based on the time deadline and decide if the system can meet the requirement . if the system can meet the requirement as may be determined by the admission controller 35 , the management job 30 may be admitted to the stream queue 45 and the management stream queue 40 for execution . referring to the example above , during the evaluation at the execute time , the admission controller 35 may evaluate the available central processing unit &# 39 ; s current ability to perform the management job . the admission controller 35 calculates φ 1 , and if resources are sufficient , the job is admitted and dispatched . the remaining resource φ 2 , which is equal to 1 − φ 1 , may be used by the primary application ( s ). for example , a request for a management job 30 may be initiated at the managed system information 10 . the request may be admitted to the data management job container 20 under the control of the management job planner 15 , which may schedule and plan the management job . the timer 25 registers a time period within which to perform the management job 30 . this time period can include an earliest time and a latest time to start to execute the management job 30 . this time period may be used by the system to evaluate the management job 30 for execution within an execute time window beginning at the start window between the earliest and latest time to start time as registered by the timer 25 , and may also include a finish time deadline . after management job 30 is dispatched for execution , the timer 25 may register an execute time for a next immediate management job to execute according to a next the first job is dispatched for execution . then , the timer 25 may register an execute time window for a next immediate management job 30 . the primary stream queue 45 and the management stream queue 40 have their own separate queues 40 and 45 to hold bursts of management job requests . the management stream queue 40 may hold all the requests planned in advance and may take away any spare slots in the queue if any are available . the outstanding stream queue 50 may hold bursts of outstanding requests awaiting scheduled dispatch . the request scheduler 55 may compute the finish time ( ft ) timestamp tag for each request in the queues 40 , 45 , and 50 belonging to a data management job . the request scheduler 55 may dispatch the next m requests 60 belonging to a data management job in the outstanding stream queue 50 with minimum ft timestamp tags to the underlying system for execution . the initial estimate of the resource capacity 65 about the underlying system may not be accurate at all times , due to various kinds of dynamics . a resource meter 70 constantly measures the actual resource capacity 65 and feeds the information back to the request scheduler 55 on a feedback input . the resource meter 70 is piggybacked with the normal job execution . the request scheduler 55 may receive all requests belonging to a data management job and may dispatch them in a proper order to achieve resource sharing . where to place the request scheduler 55 may depend on which resources the system may be configured to manage . the invention may be designed to control the management jobs on a file system interface , such as a gpfs cluster file system . every file system operation is ft tagged and dispatched in the order tagged by the request scheduler 55 . fig2 is a timing diagram of a chained timer scheduling method 200 used for macro level scheduling to organize the management jobs . the management jobs may be composed of a number of component requests . the conglomerate of component requests belongs to one job . the management job may be scheduled at the macro level for timely execution . an ft timestamp for the very first data management job 110 may be registered by a ft timer in the system . for example , when the data management job 110 is dispatched , the system may register a ft timer for the next job in the future . the ft timer may register the ft with a timestamp on the first data management job 110 that may determine a deadline for timely execution of the first data management job 110 . so as first data management job 110 is dispatched , a second data management job 115 ft timer may be registered by a timestamp deadline for the second data management job 115 . the ft timer may be reached for the second data management job 115 , which may cause dispatch of the second data management job 115 , and may result in a third data management job 120 ft timer being registered . when that registered timestamp is reached , the third data management job 120 may be dispatched and a fourth data management job 125 ft timer registered . the timer may wake up a job executor to make sure that jobs 110 , 115 , 120 , and 125 may be executed timely . the chained timer method may avoid overloading the system with too many states and may ensure timely execution of all the planned jobs . a start time window may designate a time to start the management job that may be registered by the ft timer to provide an optimization window of a timestamp earliest start time and a latest time used by the scheduler as the best timing to start the job to meet the finish time ( ft ). the system status is fed back to the scheduler 55 as shown in fig1 . for example , in the case of a data backup procedure job performed daily , the ft time stamp may specify a 3 : 00 am best start time to perform the data backup . a second time , such as a batch data transfer to another memory cache , may be assigned a best start time of 3 : 30 am . if the system workload is over a threshold at the start time of the optimization window for each management job 110 , 115 , 120 , and 125 , the management job at issue may be delayed for a better timing later , but no later than the latest start time as determined by the ft timer to meet the ft timestamp . this method ensures that management jobs 110 , 115 , 120 , and 125 may be executed timely and may create flexibility for choosing a right timing for the system . turning again to the example above , the data backup job may be assigned a best start time of 3 : 00 am and a latest start time of 3 : 15 am , with the batch data transfer to memory cache job perhaps assigned a best start time of 3 : 30 am and a latest start time of 3 : 38 am . however , required system resources are not available at the best start time for either job , so the data backup instead starts at 3 : 08 am and the batch data transfer job at 3 : 33 am . both jobs are begun by the latest start time and timely completed as determined by the ft timestamp . the system may generate management jobs in two modes : proactive and reactive . in the reactive management job generation mode , a management job may be started in response to a system alert from a status monitor agent . for example , when the available storage capacity drops below a preset threshold , an alert may be generated for the management job planner 15 . the management job planner 15 may take actions in response to the alert , e . g ., to delete some temporary files to create more free space . in the proactive job generation mode , the jobs may be precomputed for future execution by the management job planner 15 . the benefit of proactive job planning may allow the scheduler 55 to set a time window to decide the best timing for starting the job , such as when the system has free resources . as an example , suppose a management job is generated in a reactive mode . a status monitor agent that may be implemented on job container 20 sends an alert to the management job planner 15 when the available storage capacity drops below the preset threshold , causing additional management jobs to exit from the management job planner . if a management job is generated in a proactive mode , the job may be precomputed for future execution by the management job planner 15 according to the best timing for the management job to complete the management job by a certain time . the scheduler 55 can use the precomputed time to in turn designate an earliest start time and a latest start time to meet the precomputed time to complete the time based on , for example , free resources to accomplish the management job , as further explained below . to expire a data file being managed , the system can either delete the file , or archive it to tape . to delete the file properly from the storage media , it may require multiple overwrites , which can consume considerable storage bandwidth . the system may order all the files in an expiration time order . starting from the first file to be expired , the data management process may add the files in expiration order into a single job . the formation of a job may be complete after meeting one of the following conditions : a ) the total number of bytes for all the files in this job reach a predefined threshold b , or b ) the expiration time gap between the last file in the job and the next following file to be expired is longer than a threshold t . meeting either one or both of conditions a ) and b ) may guarantee that files with close expiration time may be processed in a batch . the earliest starting time for a job is the expiration time of the last file in the job . in the periodic approach , the period is almost impossible to get right . the period can be too short when files expire sparsely and too long when files expire densely over time . compared to periodic file expiration , this proactive job generation method in the invention may effectively expire files in a more timely fashion and may avoid running too frequently . fig3 is a process flow chart showing scheduling timer method 300 used for micro level scheduling to organize the unit management jobs . micro level scheduling may schedule the conglomerate individual component requests of a management job at the micro level . the micro level scheduling may be implemented on the scheduler 55 and may use a variation of virtual clock ( vc ) scheduling , which may satisfy the goals of work - conserving and proportional resource sharing . this implemented micro level scheduling may schedule the component requests of the data management job . vc computes the timestamp of each request and dispatches them for execution in order . at step 210 , a new data management job j may start with workload w . the scheduler 55 may estimate cj and φj based on the remaining workload and c measurement in step 215 . resource capacity is reflected in throughput cj in operations per second ( ops ). cj may be equal to φj · c , where φj is the weight of resource jth stream reserves and c is the total throughput capacity . in step 220 , the scheduler 55 initiates ft 0 , j to the minimum ft of all the current pending requests . in step 225 , for each new request i of job j , an ft may be computed according to ft ( i , j )= ft ( i − 1 , j )+ 1 /( φj × c ), where ft ( i , j ) may be viewed as the finish time of the i th request of the job j ( e . g . the current request component ), and ft ( i − 1 , j ) may be viewed as the finish time for i th − 1 request of the job j ( e . g . the previous request component ). in step 230 , a new request i with ft ( i , j ) may be inserted into the scheduler 55 . the job requests for all the jobs may be served in ft order in step 235 . the scheduler 55 may be operated to dispatch m requests at a time . in step 240 , the resource meter 70 may measure c to input into the scheduler 55 and may adjust the remaining workload . step 240 may ensure a completion deadline for the management job is met . it should be understood , of course , that the foregoing relates to exemplary embodiments of the invention and that modifications may be made without departing from the spirit and scope of the invention as set forth in the following claims .