Bacula-users

Re: [Bacula-users] Idea/suggestion for dedicated disk-based sd

2010-04-07 01:09:58
Subject: Re: [Bacula-users] Idea/suggestion for dedicated disk-based sd
From: Craig Ringer <craig AT postnewspapers.com DOT au>
To: Phil Stracchino <alaric AT metrocast DOT net>
Date: Wed, 07 Apr 2010 13:05:18 +0800
Phil Stracchino wrote:

> It is possible right now to open more than one file-based volume at a
> time.
> You simply need to define multiple storage devices under the same
> storage daemon; each device can have one volume open at a time.

Yep. My suggestion was merely a way around the inconvenience and
configuration bloat required to do this at present. I'm saying it
shouldn't be neccessary to go through all that just to achieve
concurrent disk writes.

> However, if multiple volumes are being written at a time, this merely
> exchanges volume interleaving for disk fragmentation.

Depends a lot on the file system and storage in use. I'm using a file
system with sensible delayed allocation policies, which tends to control
fragmentation.

I'm also using a striped RAID-6 volume across eight 1TB disks, which
means access patterns are going to be somewhat random anyway.
Fragmentation just isn't a big issue.

> The odds are good
> the data will actually end up in the same places on disk; it will just
> appear, from the point of view of scanning volumes, to be unfragmented,
> because the disk system hides the fragmentation from you - exactly as it
> is supposed to.  As previously mentioned, this can be overcome
> essentially only by using a complete custom filesystem and disk driver
> that treats disks like tapes.

Actually, you can do a pretty good job just by using
posix_fallocate(...) to inform the file system of how much space you
expect to need.

The sd doesn't currently appear to use posix_fallocate(...) at all.

> Bacula-5 does not automatically delete expired disk volumes; it does
> contain a feature to automatically truncate them to zero bytes.  Note
> that this feature is dangerously broken in 5.0.0 (in which it was a new
> feature), and should not be used in that version; if you want to use the
> volume truncation feature, you must run 5.0.1 or later.
> 
> Automatic volume deletion can be handled fairly simply using an admin
> job that runs a script to delete expired volumes; I've attached mine as
> an example.

Of course. I do much the same thing myself. I'm just suggesting that
perhaps this sort of thing shouldn't have to be built by each Bacula
user, but perhaps be built in to the system to make it a bit more
practical and convenient?

I don't mean to come off as a grumpy/demanding user. I'm not saying "you
should do this!", I'm seeking comments and opinion on whether these
things are worth doing. I may well tackle them myself if so, I just
don't want to waste my time on things that will get rejected.

I do, though, think Bacula's usability could use a lot of improvement.
I'm trying to throw around some ideas about some things that might help,
based on my own experiences wrangling it to get it to do what I need.

--
Craig Ringer

------------------------------------------------------------------------------
Download Intel&#174; Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev
_______________________________________________
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>