On Tue, Apr 22, 2014 at 11:42:09AM -0600, Chris Murphy wrote: > > On Apr 21, 2014, at 3:09 PM, Duncan <1i5t5.dun...@cox.net> wrote: > > > Adam Brenner posted on Sun, 20 Apr 2014 21:56:10 -0700 as excerpted: > > > >> So ... BTRFS at this point in time, does not actually "stripe" the data > >> across N number of devices/blocks for aggregated performance increase > >> (both read and write)? > > > > What Chris says is correct, but just in case it's unclear as written, let > > me try a reworded version, perhaps addressing a few uncaught details in > > the process. > > Another likely problem is terminology. It's 2014 and still we don't have > consistency in basic RAID terminology. We're functionally in the 19th century > uncoordinated disagreement of weights and measures, except maybe worse > because we sometimes have multiple words that mean the same thing; as if > there were multiple words for the term gram or meter. It's just nonsensical > and selfish that this continues to persist across various file system > projects. > > It's not immediately obvious to the btrfs newcomer that the md raid chunk > isn't the same thing as the btrfs chunk, for example. > > And strip, chunk, stripe unit, and stripe size get used interchangeably to > mean the same thing, while just as often stripe size means something > different. The best definition I've found so far is IBM's stripe unit > definition: "granularity at which data is stored on one drive of the array > before subsequent data is stored on the next drive of the array" which is in > bytes. So that's the smallest raid unit we find on a drive, therefore it is a > base unit in RAID, and yet we have no agreement on what word to use. > > And it's not really like the storage industry trade association, SNIA, who > published a dictionary of terms in 2013, really helps in this area. I'll > argue they make it worse because they deprecate the term chunk, in favor of > the terms strip and stripe element. NO kidding, two terms mean the same > thing. Yet strip and stripe are NOT the same thing. > > strip = stripe element > stripe = set of strips > strip size = stripe depth > stripe size = strip size * extents not including parity extents > > Also the units are in blocks (sectors, not fs blocks and not bytes). The > terms stripe unit, stripe width, and stride aren't found in the SNIA > dictionary at all although they are found as terms in other file system > projects. > > So no matter how we look at it, everyone else is doing it wrong.
Also not helped by btrfs's co-option of the term "RAID-1" to mean something that's not traditional RAID-1, and (internally) "stripe" and "chunk" to mean things that don't match (I think) any of the definitions above... Hugo. -- === Hugo Mills: hugo@... carfax.org.uk | darksatanic.net | lug.org.uk === PGP key: 65E74AC0 from wwwkeys.eu.pgp.net or http://www.carfax.org.uk --- A clear conscience. Where did you get this taste --- for luxuries, Bernard?
signature.asc
Description: Digital signature