Hi! I just stood up a new system with a 9-disk RAIDZ3 pool, copied the data from a pre-established dataset on a different server (on a 3 disk RAIDZ1 pool) via zfs send.
On old server, the dataset takes 5.32TB. On the new server, it's taking 6.54TB.
As I dug in, I noticed that every file is taking up significantly more space (according to du) than it should (and did on the old system).
An example:
As you can see, du (not apparent) is showing that the file is taking up 11Kb (and in fact 11kB is the smallest size I see on any file).
I've researched as much as possible, but haven't found any explanation for why a 175 byte file would take 11kB on disk.
The new system is using a recordsize of 128K, and ashift of 12 (as these are new 4k SAS drives). So I could understand the file taking 4kB due to the sector size, but I can't figure out why it would take more. Does anyone have any idea? Happy to provide more info of course.
(I do understand that a 9 disk RAIDZ3 isn't ideal from a space-efficiency perspective, but this system is going into a remote colo that will be difficult to get out to so I wanted the maximum redundancy I could get. As far as I can tell, that shouldn't affect the output of du; my understanding is that du calculates without taking parity into account.)
Thanks in advance!
On old server, the dataset takes 5.32TB. On the new server, it's taking 6.54TB.
As I dug in, I noticed that every file is taking up significantly more space (according to du) than it should (and did on the old system).
An example:
Code:
# ls -l .wget-hsts
-rwxrwxr-x+ 1 test_user wheel 175 May 24 2019 .wget-hsts
# du -Ah .wget-hsts
512B .wget-hsts
# du -h .wget-hsts
11K .wget-hsts
As you can see, du (not apparent) is showing that the file is taking up 11Kb (and in fact 11kB is the smallest size I see on any file).
I've researched as much as possible, but haven't found any explanation for why a 175 byte file would take 11kB on disk.
The new system is using a recordsize of 128K, and ashift of 12 (as these are new 4k SAS drives). So I could understand the file taking 4kB due to the sector size, but I can't figure out why it would take more. Does anyone have any idea? Happy to provide more info of course.
(I do understand that a 9 disk RAIDZ3 isn't ideal from a space-efficiency perspective, but this system is going into a remote colo that will be difficult to get out to so I wanted the maximum redundancy I could get. As far as I can tell, that shouldn't affect the output of du; my understanding is that du calculates without taking parity into account.)
Thanks in advance!