UFS and spreading data

Chuck Swiger cswiger at mac.com
Fri Aug 3 09:33:31 PDT 2007


Wojciech Puchar wrote:
> AFAIK UFS try to spread data quite evenly on disk to different cylinder 
> group - for large files, so small files can get it's space near inodes 
> etc..

Yes, UFS leaves some free space in each cylinder group if it can so that it 
can grow (especially small) files locally; big files will get spread across 
cylinder groups as a result.

> but i would like to clear things up:
> 
> i will set up say 3 disks with gconcat and make one partition for all 
> data on it. then i will populate it with all things and use it.
> 
> will the data be quite spread on disks, so accesses to different things 
> could be done in parallel to 3 disks, or will it rather use space on one 
> disk first, then on second then on third.
> 
> i'm asking about it as i prefer gconcat over gstripe as i can add more 
> disks to gconcat and do growfs then making system EASILY expandable.

Using a stripe is going to give reliably-balanced I/O load to the underlying 
physical disks.  If the concat is mostly empty, then no, I/O won't be evenly 
balanced.  If you mostly fill it up and are doing multithreaded I/O to lots of 
files scattered all around, than concat should be OK.

-- 
-Chuck


More information about the freebsd-questions mailing list