Bacula-users

[Bacula-users] resubmission of feature request: dynamic job priorities (bias for restores)

2009-05-14 13:24:21
Subject: [Bacula-users] resubmission of feature request: dynamic job priorities (bias for restores)
From: mark.bergman AT uphs.upenn DOT edu
To: bacula-users AT lists.sourceforge DOT net
Date: Thu, 14 May 2009 13:00:43 -0400
The following is a feature request that I submitted in 2007. I have edited it
in an attempt to explain the request a bit better.

Perhaps I'm overlooking something, but I couldn't find any email response
explaining why this request was not accepted initially and does not appear on 
the
current feature list.

Please let me know if there's anything in the request that needs
clarification.

----
Mark Bergman                              voice: 215-662-7310
mark.bergman AT uphs.upenn DOT edu                 fax: 215-614-0266
System Administrator     Section of Biomedical Image Analysis
Department of Radiology            University of Pennsylvania
      PGP Key: https://www.rad.upenn.edu/sbia/bergman 

------- Forwarded Message

X-Mailer: exmh version 2.7.2 01/07/2005 with nmh-1.1
To: bacula-users AT lists.sourceforge DOT net
Bcc: 
Dcc: 
Subject: feature request: dynamic job priorities (bias for restores)
Mime-Version: 1.0
Content-Type: text/plain
Reply-To: mark.bergman AT uphs.upenn DOT edu
From: mark.bergman AT uphs.upenn DOT edu
X-GPG-Key: 
http://pgpkeys.pca.dfn.de:11371/pks/lookup?search=mark.bergman%40.uphs.upenn.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Date: Mon, 22 Jan 2007 19:11:24 -0500
Message-ID: <21814.1169511084@piquin>

Item  1:  the numerical priority of restore jobs should be dynamically set to 
        make them happen sooner

  Date:   22 Jan, 2007 

  Origin: Mark Bergman 

  Status: unknown

  What:  
        Change the handling of job priorities so that more important jobs
        (a lower priority) are run more promptly, by treating them as if
        they were in the same priority class as currently executing jobs.

        At this time, bacula will not run a job of higher importance
        (lower priority) until all jobs at the level of the currently
        running job complete. By masquerading the more important job to
        have the same priority as the current jobs, the more important
        job can run concurrently.

        Within a queue of jobs of the same real (or effective--masqueraded)
        priority, the jobs that have the lowest real priority would be
        scheduled first.

  Why:  
        The reason for the existance of bacula (and any backup software)
        is to restore data when needed. Currently, bacula's method of
        scheduling prevents a restore job of greater importance (lower
        numerical priority) from running at the same time as other
        jobs of less importance (higher priority), even when resources
        (a tape drive) are free.

        An example scenario is the following:

                a backup of "slow_client1" is running at priority 10,
                using tape drive 0 in the autochanger
                
                backups of "slow_client2" through "slow_client10" are
                queued, all with priority 10, all scheduled to use the
                media that's in tape drive 0

                I attempt to run a restore of "senior_directors_PC",
                using media that's already in the autochanger, and give
                the restore job priority 6. Unfortunately, the restore
                will not begin until all backups are complete, though
                tape drive "1" is idle.

                Even if I manually set the priority of the restore job to "10"
                (matching the running backups), the restore would be executed
                after the backups that are already in the queue.

        In the enhanced version, the restore job of files from 
"senior_directors_PC"
        would be assigned an effective priority of 10. Since the real priority
        of the restore job is "6", that also signals that the job should be 
placed
        at the front of the queue of jobs in priority 10. If there was also a
        restore scheduled of "corporate_presidents_PC", with priority 4, the
        "corporate_presidents_PC" job would be given an effective priority of
        10, but would be queued ahead of the job with an effectivie priority
        of 6 and the jobs with a real priority of 10.

  Notes:
        Obviously, this would be subject to resource constraints (ie, you
        can't work with two different volumes simultaneously in a single
        device) and to the date/timestamp specified for job scheduling.

        This change would be a tremendous improvement in managing
        multi-drive storage devices. This method of scheduling would
        make bacula more efficient, allowing higher importance (lower
        numerical priority) jobs to make use of physical resources as
        soon as they become available.

        In some ways, this request is really a hack--the alternative
        (and arguably better) method would be to change the way bacula
        uses resources, so that multiple of jobs of different types &
        priorities can use different physical tape drives within an
        autochanger at once, but I suspect that's a much more difficult
        problem.

-----
Mark Bergman                      mark.bergman AT uphs.upenn DOT edu
System Administrator
Section of Biomedical Image Analysis             215-662-7310
Department of Radiology,           University of Pennsylvania

http://pgpkeys.pca.dfn.de:11371/pks/lookup?search=mark.bergman%40.uphs.upenn.edu



------- End of Forwarded Message




The information contained in this e-mail message is intended only for the 
personal and confidential use of the recipient(s) named above. If the reader of 
this message is not the intended recipient or an agent responsible for 
delivering it to the intended recipient, you are hereby notified that you have 
received this document in error and that any review, dissemination, 
distribution, or copying of this message is strictly prohibited. If you have 
received this communication in error, please notify us immediately by e-mail, 
and delete the original message.

------------------------------------------------------------------------------
The NEW KODAK i700 Series Scanners deliver under ANY circumstances! Your
production scanning environment may not be a perfect world - but thanks to
Kodak, there's a perfect scanner to get the job done! With the NEW KODAK i700
Series Scanner you'll get full speed at 300 dpi even with all image 
processing features enabled. http://p.sf.net/sfu/kodak-com
_______________________________________________
Bacula-users mailing list
Bacula-users AT lists.sourceforge DOT net
https://lists.sourceforge.net/lists/listinfo/bacula-users

<Prev in Thread] Current Thread [Next in Thread>
  • [Bacula-users] resubmission of feature request: dynamic job priorities (bias for restores), mark . bergman <=