BackupPC-users

Re: [BackupPC-users] why hard links?

2009-06-02 11:59:12
Subject: Re: [BackupPC-users] why hard links?
From: "Jeffrey J. Kosowsky" <backuppc AT kosowsky DOT org>
To: "General list for user discussion, questions and support" <backuppc-users AT lists.sourceforge DOT net>
Date: Tue, 02 Jun 2009 11:54:36 -0400
Les Mikesell wrote at about 08:51:38 -0500 on Tuesday, June 2, 2009:
 > Peter Walter wrote:
 > > Les Mikesell wrote:
 > >> Josh Rubin wrote:
 > >>   
 > >>> I hope this question isn't too dumb, but why does backuppc need to use
 > >>> hard links?
 > >>> Of course, nobody wants to change a widely used program in a way that
 > >>> breaks everything,
 > >>> so this is really a question about some new, future program.
 > >>> Isn't the pool just a form of hash table that could be implemented lots
 > >>> of ways?
 > >>>     
 > >> Creating a link is an atomic operation in the fileystem.  With anything 
 > >> else you would have to add the overhead of some locking mechanism (with 
 > >> the potential for deadlocks) to be sure that the equivalent to the link 
 > >> and the count of them stayed in sync.   And, not too surprisingly it 
 > >> turns out that filesystem operations are actually a pretty good way to 
 > >> deal with storing files - it might not be impossible to do it better but 
 > >> it wouldn't be easy.
 > >>   
 > > 
 > > Locking mechanisms aren't always necessary. One of the advantages of 
 > > hashed database systems, such as linear hash technology, is that 
 > > collisions are easily managed, and semaphores are usually adequate as 
 > > simple locking mechanisms if they are needed.
 > 
 > Collisions aren't quite the point - you have to manage that anyway.  The 
 > hard part is knowing that the final target you link to is the one that 
 > you wanted, not a something created simultaneously by a different 
 > process doing the same computations, and knowing that the count of 
 > existing links always matches the actual copies.  The kernel manages 
 > this automatically when using links.  If you have to add an extra system 
 > call to lock/unlock around some other operation you'll triple the overhead.

I'm not sure how you definitively get to the number "triple". Maybe
more maybe less. Even more importantly, it all depends on what is the
critical bottleneck on a backup system. Is it network bandwidth? Is it
disk reads/writes? Is it internal cache/memory? Is it computational
overhead? For your argument to be a true obstacle, one would have to
assume that computational overhead is the bottleneck which I would
think is very unlikely since most systems are probably most limited by
either disk speed or network bandwidth.

Les - I'm really not sure why you seem so intent on picking apart a
database approach. I can understand someone arguing that it would take
too much effort to implement but I don't see the point of challenging
the workability of a database approach, particularly when most high
end enterprise backup systems do just exactly that (and for good
reason!).

 > 
 > -- 
 >    Les Mikesell
 >     lesmikesell AT gmail DOT com
 > 
 > ------------------------------------------------------------------------------
 > OpenSolaris 2009.06 is a cutting edge operating system for enterprises 
 > looking to deploy the next generation of Solaris that includes the latest 
 > innovations from Sun and the OpenSource community. Download a copy and 
 > enjoy capabilities such as Networking, Storage and Virtualization. 
 > Go to: http://p.sf.net/sfu/opensolaris-get
 > _______________________________________________
 > BackupPC-users mailing list
 > BackupPC-users AT lists.sourceforge DOT net
 > List:    https://lists.sourceforge.net/lists/listinfo/backuppc-users
 > Wiki:    http://backuppc.wiki.sourceforge.net
 > Project: http://backuppc.sourceforge.net/
 > 

------------------------------------------------------------------------------
OpenSolaris 2009.06 is a cutting edge operating system for enterprises 
looking to deploy the next generation of Solaris that includes the latest 
innovations from Sun and the OpenSource community. Download a copy and 
enjoy capabilities such as Networking, Storage and Virtualization. 
Go to: http://p.sf.net/sfu/opensolaris-get
_______________________________________________
BackupPC-users mailing list
BackupPC-users AT lists.sourceforge DOT net
List:    https://lists.sourceforge.net/lists/listinfo/backuppc-users
Wiki:    http://backuppc.wiki.sourceforge.net
Project: http://backuppc.sourceforge.net/