Comprehensive data protection for all workloads
Post Reply
swilton
Novice
Posts: 3
Liked: never
Joined: Dec 13, 2017 4:18 am
Full Name: Steven Wilton
Contact:

Linux block alignment

Post by swilton » Dec 13, 2017 4:31 am

I'm using a deduplicated filesystem in Linux with an 8kB block size, and noticed that when Veeam runs a merge operation it writes a lot of new blocks (i.e. it is not able to deduplicate the blocks as they are re-written to the filesystem). The repository has the "Align backup file data blocks" and "Decompress backup data blocks before storing" options selected. I have looked in the .vbm file, and can see BlockAlignmentSize="4096" repeated next to each file in the backup chain which would explain why the re-written data is not being deduplicated.

The first thing I would like to confirm is whether I have correctly interpreted the contents of the .vbm file regarding the filesystem block alignment?
If I am correct, I would like to know if Veeam uses the fstat() system call to determine the correct block size for the filesystem alignment, or if it's hard-coded at 4kB?
If it's not hard-coded, what alignment sizes are supported on Linux?
If it is hard-coded, would it be a big change to make it use fstat() to find the correct alignment? I know both 4kB and 64KB alignments are supported in ReFS

This question has been raised in case #02420347

foggy
Veeam Software
Posts: 17908
Liked: 1506 times
Joined: Jul 11, 2011 10:22 am
Full Name: Alexander Fogelson
Contact:

Re: Linux block alignment

Post by foggy » Dec 21, 2017 2:27 pm

Hi Steven, your support engineer should approach you with some recommendations on changing the block size used for alignment soon. Please check and share the results here. Thanks!

swilton
Novice
Posts: 3
Liked: never
Joined: Dec 13, 2017 4:18 am
Full Name: Steven Wilton
Contact:

Re: Linux block alignment

Post by swilton » Dec 06, 2018 8:23 am

The response I got back from support was that the 4kB alignment is hard coded.

We're having performance issues with GFS restore points taking a long time to create because the data is stored in 4kB chunks. One fix would be for fast clone support to be brought to Linux (as discussed here veeam-backup-replication-f2/fast-clone- ... 38841.html), and the other would be to align the data in bigger blocks for deduplication.

Assuming the fast clone operation is not easy to implement (based on the discussion in the other thread), is there any chance that the data alignment can be made dynamic by using fstat() on the newly created file?

foggy
Veeam Software
Posts: 17908
Liked: 1506 times
Joined: Jul 11, 2011 10:22 am
Full Name: Alexander Fogelson
Contact:

Re: Linux block alignment

Post by foggy » Dec 06, 2018 2:10 pm

Hi Steven, I've noted your request. Btw, just for reference, what kind of dedupe storage do you have?

swilton
Novice
Posts: 3
Liked: never
Joined: Dec 13, 2017 4:18 am
Full Name: Steven Wilton
Contact:

Re: Linux block alignment

Post by swilton » Dec 17, 2018 8:36 am

Hi Alexander, we've been using ddumbfs (http://www.magiksys.net/ddumbfs/) with some patches that improve performance. Having said this, this request would improve any deduplicated filesystem on linux (e.g. zfs/opendedup) as long as the filesystem uses a fixed block size and returns the correct block size to the fstat() system call.

Post Reply

Who is online

Users browsing this forum: Google [Bot] and 55 guests