Long Block Data Standard Finalized 199
An anonymous reader writes "IDEMA has finally released the LBD (Long Block Data) standard. This standard, in work since 2000, increases the length of the data blocks of each sector from 512 bytes to 4,096 bytes. This is an update that has been requested for some time by the hard-drive industry and the development of new drives will start immediately. The new standard offers many advantages — improved reliability and higher transfer rates are the two most obvious. While some manufacturers say the reliability may increase as much as tenfold, the degree of performance improvement to be expected is a bit more elusive. Overall improvements include shorter time to format and more efficient data transfers due to smaller overhead per block during read and write operations."
Higher Reliability? (Score:4, Insightful)
Re:Higher Reliability? (Score:4, Insightful)
Re: (Score:2)
Re: (Score:3, Interesting)
They can take what would have been per-block overhead with smaller sector sizes and reuse that data space for more robust error correcting codes, while maintaining the same capacity.
But, good question, since in terms of absolute reliability I can't picture anything in the current spec which would prevent private (not visible at the i
Re: (Score:3, Insightful)
In the real world this translates into, "more reliability". Reliability has always been relative to dollars spent. This means given the same dollars you are more reliabile. This means, given absolute dollars, you are more reliable.
Error correction better over larger blocks (Score:5, Informative)
Let's suppose you can fix one error per 512 byte block or 6 errors per 4096 byte block. Intuitively that might seem like a step back because 6/8 is smaller than 1, but that is not so. If you have 512-byte blocks and get two errors in a 512-byte sequence then that block is corrupt. However if instead you're using 4096 byte blocks then a 512-byte sequence within that block can have two errors since we can tolerate up to 6 errors in the whole block.
Or put another way, consider a 4 k sequence of data, represented by a sequence of digits dependent on the number of errors in each 512 bytes. 00000000 means no errors, 03010000 means 3 errors in the second block and 1 in the fourth block (ie a total of 4 errors in the whole 4096 bytes). With a scheme that can fix only one error per 512 bytes, the block with 3 errors cannot be corrected (because 3 > 1), but in the system which fixes up to 6 errors per 4096, the errors can be fixed because 4 6. This means that the ECC is far more reliable.
Re: (Score:2)
Parity data is parity data. It doesn't matter where it's stor
Re: (Score:2, Informative)
Re: (Score:2)
No, the logic is not flawed. (Score:3, Informative)
Let's say you have 4096 bytes arranged as 8x512-byte blocks and each block can correct one error. Now lets say that we RANDOMLY (ie statisticly independently) introduce, say, 4 errors into that set of 8 blocks. Sometimes the errors will fall so that there are at most one error per block. That is correctable. Sometimes the errors will fall so that there are more than one per block. In that case data will be lost.
However, if we can correct up to, say, 6 arbitrarily placed errors per 4096
Re: (Score:2)
I think ten-fold may be an exaggeration, but I could believe an eight fold increase.
Re:Higher Reliability? (Score:5, Informative)
The longer block sizes add reliability because the error correcting codes have more to work with at a time (more data bits, but also more ECC bits).
As for wasted space, that's under the filesystem's control, not the drive's.
Re: (Score:3, Funny)
Re: (Score:2)
OTOH, maybe checksumming could improve from the larger blocksize.
Re: (Score:2)
At least half the reason that CDs are resistant to error is that the laser is not in focus when it passes through their surface.
CD error recovery unrelated to block size (Score:3, Informative)
Re:CD error recovery unrelated to block size (Score:5, Interesting)
The easy answer is this: in order to do ECC-like data checking on a larger set of data (say, a group of eight 512-byte sectors), it means that if you want to write sector three of that eight, you end up having to re-read the whole thing before you do anything else - thus basically giving you 4,096-byte "sector" anyway.
The other half of that answer is this: do you know what the "real" storage capacity of a CD is, without all the error checking? It's a bit less than double. Even most of the enterprise folks wouldn't accept a 40% hit in data density in return for what works out to not that big an increase in reliability (data redundancy doesn't buy you that much unless that data is on different spindles). They'd just rather get the whole data space and do a RAID, especially since that's what they're going to do anyway.
Re: (Score:2)
Re: (Score:2, Informative)
Re: (Score:2, Informative)
Re: (Score:2)
Why 4096? (Score:4, Insightful)
Is there a good reason why 4096 was chosen? Is that just an artifact of this being designed in 2000? At this point very few files on the average system would be smaller than this. It seems to me they could have quite safely chosen something like 16k which would have improved things more, future proofed them more, yet still have been small enough as to not waste a tremendous amount of space (like if they chose 512k).
Why not make it variable, in that each drive can have it's own value (limited to a power of 2, between 512 and say 512k)? That way one drives today could be 4k, with drives in a few years being more without requiring another 7 years for a new standard?
Re:Why 4096? (Score:5, Insightful)
Re:Why 4096? (Score:5, Insightful)
Re:Why 4096? (Score:4, Informative)
Re: (Score:2)
One word: Vista.
Re: (Score:2, Informative)
AMD64/x86-64 uses 8KB pages. ARM uses 1KB pages.
Re:Why 4096? (Score:4, Informative)
So it would be better to say... (Score:2)
(1k being more popular for embedded systems that don't have HDs anyway)
Re: (Score:3, Funny)
You may be sure that it might but I'm unsure that it won't...
Re:Why 4096? (Score:5, Funny)
Way to ruin the curve.
Re: (Score:2)
Large blocks also provide a clear path for future gains through further increases in block size.
Seems to imply that the standard does perhaps address variable block sizes.
Re: (Score:2)
Do you actually have any data to back up that assertion? On my system there are tons of small (< 1 KB even) files around; of course lots of large files too, but it's certainly not obvious that your claim is true.
Morever, even if say the average file was, say, 16KB, using smaller blocks helps reduce wasted space in file tail blo
Oh noes! (Score:2, Funny)
Heh, glad to see this is finally going through!
-Rick
Re: (Score:3, Informative)
Re: (Score:2)
Yeah, but when you ask it, it will deny any knowledge of the whereabouts of the file in question.
Re: (Score:2, Interesting)
Thats a lot a bits (Score:5, Funny)
Mod it Funny/Redundant! (Score:2)
-Rick
Re: (Score:2)
Not all good.... (Score:2)
Re:Not all good.... You said it! (Score:2)
This will just encourage Microsoft to stop using INI and XML files and to store more settings the in the big REGISTRY...
Re: (Score:2)
Hopefully it will... but as I put my entire CD collection onto my machine, that will only alleviate MS's part in the wasted space issue... :-(
Much of the other issues a larger sector size alleviate would also be addressed if MS would revise NTFS so it wouldnt fragment. They know how, as they have access to the HPFS internals (HPFS rarely exceeds 1 or 2% fragmentation). That is something else I dont understand... they have the answers to many complaints about Windows (that being only one of them) and do not
Well you're already wasting your disk space.... (Score:3, Funny)
Re: (Score:2)
:-)
Only on my gaming machine... my servers are all eComStation, and one or two will become some variant of Linux soon. Problem I will run into is that HPFS (eComStation) has a fixed block size of 512 bytes.
Re: (Score:2)
No, it doesn't. it'll be something like 0.1% of a 3.5MB MP3, which is probably saved by having smaller file allocation tables anyway. The only way it could possibly matter is if you have an extreme amount of small files, like say hundreds of megs of source code and even then it's a pittance on a HDD from the last decade.
Re: (Score:2)
Hmmmm, obviously you never stopped to do the math. Lets say I have 900,000 files (I have partitions with more actually). That is an average of 1,843,200,000 bytes wasted using a 4K block size. Compare that to a 512 byte block size with 230,400,000 bytes wasted.
Please explain to me how:
1.8GB
is not much different than
230MB
Or are you claiming that the file allocation table on a 512byte sector drive would be over a gig and a half? Mine is using a whopping 80MB for file tables and extended attributes and r
Re: (Score:2)
But, you know, good troll and all.
Re: (Score:2)
Yes, but you are forgetting three factors...
1 - Any file that doesnt end on a block size boundary (ie: multiples of 4096) will waste space (ie: a 6144 byte file - which is larger than the block size - wastes 2048 bytes).
2 - What files nowadays are smaller than 4K? (keep in mind the quantity of files that fit that criteria and read #3)
3 - The quantity of files is what exasperates the situation. (Quantity x free space at end of last block).
NTFS does nothing to alleviate this.
So, I guess my post wasnt a t
Re: (Score:2)
Well, Vista I only use at work (because I have to), and OS/2 is still in active development under the name eComStation, and still has a better threading model than Linux (which from what I understand is being addressed by the Linux community, so that may change). Also, I prefer the WorkPlace Shell to any other GUI I have used (though OSX comes close) - I like being able to extend the GUI in an infinite number of ways with very small and simple coding, and I like the fact that it is object oriented unlike th
Re: (Score:2)
Um, go read my post again where (1) I indicate my knowledge of the default block size and the ability to change it, and (2) indicate that on my eComStation servers, the default (and only) block size is 512 bytes.
Sorry if my post confused you...
What about the MBR? (Score:5, Funny)
Re:What about the MBR? (Score:4, Interesting)
Re:What about the MBR? (Score:4, Informative)
Re: (Score:3, Informative)
Plan for the future! (Score:3, Funny)
Bootloader now 4096 bytes? (Score:4, Interesting)
Longer != Better (Score:4, Funny)
I have to disagree with the whole premise here. I know that people always say that longer is better when it comes to hard drives, but I've never had any reliability problems with my smaller one. Not only that, but I've had very fast transfer rates under all sorts of strenuous loads.
Wait, we're talking about storage devices? Never mind...
Already Obsolete (Score:2)
Re: (Score:2)
blocks and clusters (Score:4, Informative)
Re: (Score:2, Informative)
Thank you, Captain Obvious! (Score:2, Interesting)
512 bytes was good for floppy disks. I think we should have started upping the sector size around the same time as we hit the 528mb 1024-cylinder limit back in the early 90's. Considering that a modern hard drive has anywhere from one-half to two billion sectors, and that's some serious overhead for no reason. Error-correction is "easier" if it's spread over larger blocks. Why ? Because most files are quite large, and corrupting a 512 byte chunk is just as bad as corrupting a 409
Slashdot Article in 2010 (Score:3, Funny)
Re: (Score:3, Interesting)
Shortcuts can easily be 512 bytes long.
For example I've got a shortcut to a file on C:\, which is 391 bytes actual size, 4096 bytes on the disk.
Re: (Score:3, Informative)
Sure, on a multi-GB file that's not going to matter too much, as even on a TB drive you can only have a few hundred of those, and who's going to miss that 1MB?
If you need to put millions of tiny files on disk (Score:2)
Re:If you need to put millions of tiny files on di (Score:2)
I mean, it's not relational, but it's pretty damn powerful.
Re:Sounds like a good idea to me. (Score:5, Insightful)
Re: (Score:2)
But as to the hardware itself, I don't know why they don't make the size user selectable by jumper or software. "One size fits all" is no longer relevant. Many people have many different needs, uses and applications. Some people have lots of little files. Some people have lots o
Re: (Score:3, Interesting)
What's so hard about that?
Go read the Linux Kernel mailing list, and you'll find interactions between the block layer and the virtual memory are one of the most difficult things to make work right in an operating system. The size of the block on the hard disk matters most to the driver, its mostly transparent to the rest of the operating system. The only thing it changes on actual file systems is the minimum filesystem block should be 4K minimum.
For USB hard drives? (Score:3, Interesting)
Re: (Score:2)
Hopefully, the filesystems, which can pack multiple short files into a block, will become more popular... ReiserFS [namesys.com] does this, supposedly — I wonder, if anything else does...
Re: (Score:2)
Re: (Score:2)
Re: (Score:2)
Re: (Score:2)
Re: (Score:2)
Re: (Score:2)
Yes it did, as of (if I recall correctly) BSD 4.2 for VAX -- at the same time it made the jump to a 4K block size.
Re: (Score:2)
It's EXT3 for me, at least right now. Like I said earlier, I hope to convert to ZFS sometime this year.
Re: (Score:2, Informative)
It's in the table "Allocation and layout policies". Look at both tail packing and block suballocation.
There are a few others that do, but not many. (JFS, QFS, NWFS, and VMFS are marked yes; NTFS and ZFS are marked partial.)
Re: (Score:2)
I think that sorta proves his point, though. With today's filesystems and other equipment, even a 391 byte file ends up taking over 4k bytes on disk, and nobody really seems to care. At least when you're talking about storage, virtually nothing is that small in terms of actual space-on-disk on a modern system.
Re: (Score:2)
For standard usage, you are correct.
Maildir-based IMAP servers are all that I can think of which would really benefit from tail packing, although there will also obviously be some custom apps that need or make use of millions of small files.
Re: (Score:2)
It's not just 512 bytes, it's MULTIPLES of it. For example, on a usb flash drive, low cluster size is important to avoid wasting space and fitting as much data as possible.
Which brings up the question, what's the difference between sector size and allocation cluster size? I assume the former is hardware while the latter is software, but anything else? Does the sector size limit the minimum allocation cluster size?
As an example of the reason why you might want to keep cluster/sector size low, this one
Re: (Score:2)
Honestly on a 200GB disk, how many file systems allocate blocks smaller then 4k right now? This seems like a good thing in general.
Re: (Score:3, Funny)
Unless you've got a powerful fetish for ASCII pr0n
Re: (Score:2)
Sunet ascii-girl [sunet.se]
Sunet vicki [sunet.se]
Both around 8 kB.
A lot of files are smaller than 512b... (Score:2)
Re: (Score:2)
0 bytes = 0 blocks (Score:2)
Re: (Score:2)
Yes, I (incorrectly) was (Score:2)
Re: (Score:2)
Re: (Score:2)
Re: (Score:3, Informative)
So... 2 gigabytes?
Re:Discussed Since 2000? (Score:5, Insightful)
You're talking about interacting with likely hundreds of companies trying to come up with a single standard that 1) they can all agree on and 2) won't make any of them lose money. Good luck.
-Rick
Re:Discussed Since 2000? (Score:4, Funny)
2001 Chair: "How about we double it?" Vote: Nay
2002 Chair: "How about we triple it?" Vote: Nay
2003 Chair: "How about 4x?" Vote: Nay
2004 Chair: "How about 5x?" Vote: Nay
(minutes from intervening years were tragically lost)
2007 Chair: "How's about 8x?" Vote: Yay
Re:Oh great (Score:4, Informative)
Re: (Score:3, Interesting)
If it's already transparent, then what is the big deal? If what you say is true, they could make blocks/sectors as long as they want and we won't need to know (except the driver writers need to know what constraints exist in the interface to send the read and write commands to the drive).
Sorry to bust YOUR bubble, but I do know how the OS works, and how it's interface works. The issue depends on what blocksize the commands between driver and hardware require. If you cannot instruct the hardware at a fin
Sector Size vs Cluster Size (Score:2)