Bacula-users

Re: [Bacula-users] Plans for support block-based dedupe?

2013-01-18 07:00:17
Subject: Re: [Bacula-users] Plans for support block-based dedupe?
From: Radosław Korzeniewski <radoslaw AT korzeniewski DOT net>
To: Silver Salonen <silver AT serverock DOT ee>, bacula-users <bacula-users AT lists.sourceforge DOT net>
Date: Fri, 18 Jan 2013 12:57:04 +0100
Hello,

2013/1/4 Radosław Korzeniewski <radoslaw AT korzeniewski DOT net>
Hello,


2013/1/4 Silver Salonen <silver AT serverock DOT ee>
3. Partial restores can only be made to the client that did the backup, not to another client if necessary(redirected recover).

Not true. In our implementation we can restore any file to any deduplication enabled bacula client. No restrictions here.

He meant PARTIAL restore and in this case it's totally valid. But I don't think it can be considered as a downside of client-side deduplication as such - partial restore is always possible only to the client that already has some portion of the original data.

OK, what is a PARTIAL restore?
Does it mean a client during restore reads a block of recovered but existing file and if a digest of a read block is the same like from a restore then no data is transferred from backup server? If yes, OK you are right.


I think I can do partial restore even with redirected recover to another client :). I've designed some functionalities and start to implement it.
In our current implementation we have a digest cache which store information about already saved data block digests. It boost a deduplication process on client by avoiding repeating digest queries to backup server (deduplication storage engine). So, we can use this information and digest cache to find if restore of the particular block from backup server is required or not (we have a local copy of it). I think this functionality could boost a general restore of deduplicated stream. In this case we will transfer only unique data blocks from backup server to restore client not all required. If some block is already available on restore client we can use (simple local copy the block from one location to another) it to restore required block. Sure we have to check if local block has the same digest as requested to restore a valid data. I think this functionality will not support plugins. I will share information about it when it will be implemented and tested.

Best regards
--
Radosław Korzeniewski
radoslaw AT korzeniewski DOT net
------------------------------------------------------------------------------
Master HTML5, CSS3, ASP.NET, MVC, AJAX, Knockout.js, Web API and
much more. Get web development skills now with LearnDevNow -
350+ hours of step-by-step video tutorials by Microsoft MVPs and experts.
SALE $99.99 this month only -- learn more at:
http://p.sf.net/sfu/learnmore_122812
_______________________________________________
Bacula-users mailing list
Bacula-users AT lists.sourceforge DOT net
https://lists.sourceforge.net/lists/listinfo/bacula-users