On Mon, Sep 30, 2013 at 1:38 PM, John Andersen <jsamyth@gmail.com> wrote:
On 09/30/2013 07:08 AM, Greg Freemyer wrote:
You need to say what filesystem you're using, but for XFS as an example it is optimized for placement on RAID, therefore it spreads the data out as much as it can in hopes that the data ends up split across lots of spindles and therefor the parallel nature of raid gets full benefit.
That makes no sense what so ever. Raid doesn't work that way. Everything is mirrored or everything is spread across spindles depening on which raid you choose.
I may have slightly misspoke, but it is more or less how the developers describe it. Or from: <http://oss.sgi.com/projects/xfs/papers/xfs_filesystem_structure.pdf> === Allocation Groups XFS filesystems are divided into a number of equally sized chunks called Allocation Groups. Each AG can almost be thought of as an individual filesystem that maintains it's own space usage. Each AG can be up to one terabyte in size (512 bytes * 2^31), regardless of the underlying device's sector size. Each AG has the following characteristics: • A super block describing overall filesystem info • Free space management • Inode allocation and tracking Having multiple AGs allows XFS to handle most operations in parallel without degrading performance as the number of concurrent accessing increases. === Thus you can see that XFS has an interleaved structure of superblocks, inodes and data blocks. When files are written they tend to get spread out across the disk to keep the AGs at similar levels of utilization. If you have a single 2 TB filesystem, I don't know how many AGs get created, but clearly at least 2. In a raid setup with multiple spindles, having multiple AGs is a performance boost. Of course you need to have the AGs laid out so they are on different drives. For that reason, XFS uses the RAID geometry during mkfs time to lay itself out for best performance. Greg -- Greg Freemyer -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse+owner@opensuse.org