Live data from Hacker News

Why I'm usually unnerved when modern SSDs die on us

utcc.utoronto.ca

121–130 of 258 posts

Re: Why I'm usually unnerved when modern SSDs die on us

#121
I worked at a storage company, and they reinforced to us how not only does the OS lie to us, but the hard drives also lie to the OS. So you can't take anything you get from a hard drive as reliable, you have to test the data once you get it, ex through CRC, etc. Data can get corrupt at any time.

As densities of data get higher and higher, it doesn't take much to have a catastrophic data failure. The only way to protect against this is having multiple replicas of your data.

Re: Why I'm usually unnerved when modern SSDs die on us

#122
post #21

Not that spinning HDDs are really any different, but SSDs are a perfect example of an entire computer that you attach to yours, and speak with through one of the (many) storage-oriented protocols. The device itself is a black box, and complex transformations take place between the physical persistence of the data and the logical structures that are exchanged on the wire. There are many layers of indirection, and many…

> but SSDs are a perfect example of an entire computer that you attach to yours, and speak with through one of the (many) storage-oriented protocols. These days most of what we call a computer could be described this way. Even your compiled machine language is ultimately far more abstracted from what the processor actually does than it was on, say, a 6502.

> Even your compiled machine language is ultimately far more abstracted from what the processor actually does than it was on, say, a 6502

Funny that you bring up 6502; that reminds me of 1541 disk drive for C64, which had mostly same 6502 as the host computer (albeit running at slower speed).

Re: Why I'm usually unnerved when modern SSDs die on us

#123
post #50

Earlier quoted context omitted.

I have seen some weird issues with SSDs. I had an OCZ Vertex 2 die on me multiple times, but one thing that stood out most is that after a power cycle or complete system shutdown (note: reboots were just fine) everything I had done last time - install software, update Windows, create files - was gone. The state was reverted to before the time it booted. It was like my computer contained some kind of Reborn chip, exce…

Modern SSDs have incredibly large caches. For example, HP EX920, which is a TLC (triple layer cell) SSD, in its 1TB model contains a whooping 200GB of SLC (single layer cell) cache. It's entirely possible that your changes are simply in cache only, and hasn't been committed to the actual storage.

I don't know if I'm getting exactly what you're saying, but a sudden power off isn't going to wipe your SSD's SLC cache like it would do the DRAM cache on more expensive drives.

Re: Why I'm usually unnerved when modern SSDs die on us

#124
post #91

I worked on SSD firmware for quite a long time and here is my perspective. Early flash used to fairly reliable with almost minimal error correction. However with increasing density, smaller processes and multi level cells, it has gone progressively less reliable and slower. Here are some of the things that we need to worry about: https://www.flashmemorysummit.com/English/Collaterals/Procee... To compensate for all th…

> Another problem is that the job while rewarding is not very lucrative. The chance of a multi million dollar payoff for an employee is low. I have a higher chance working on a web connected gadget to become a millionaire. So that means it is really hard to recruit those who are top notch programmers who known how to figure out the algorithms, write the code, debug the hardware. Most new grads these days are interest…

I don't know how the system could / should interface with stupid trends sucking resources (high complexity projects, smart individuals, long term).

Re: Why I'm usually unnerved when modern SSDs die on us

#125
post #91

I worked on SSD firmware for quite a long time and here is my perspective. Early flash used to fairly reliable with almost minimal error correction. However with increasing density, smaller processes and multi level cells, it has gone progressively less reliable and slower. Here are some of the things that we need to worry about: https://www.flashmemorysummit.com/English/Collaterals/Procee... To compensate for all th…

It's not any harder to recruit for that role than any other bare metal, embedded position where new grads are expected to be top notch programmers who know how to figure out the algorithms, write the code, debug the hardware, and bring decades of experience. IOW you're recruiting for unicorns and the pickings are slim.

Re: Why I'm usually unnerved when modern SSDs die on us

#126

Earlier quoted context omitted.

What's involved in recovering the data if the controller fails?

just based on having seen data recovered from other flash devices, and the advertising copy of these devices: hot-air rework to lift all the flash chips off and get them hooked up to something (probably custom) that can read them. if the controller was encrypting everything that went to flash, you also get to try and find the key in the controller's memory.

why something custom? shouldn't you just solder the chips into an identical donor ssd?

Re: Why I'm usually unnerved when modern SSDs die on us

#127
post #93

Earlier quoted context omitted.

Users and administrators almost certainly prefer a 20 minute IO latency over data corruption. Host operating systems should probably flag an IO as failed long before 20 minutes and then you know 1) nothing made it to disk and 2) have some chance to avoid introducing additional corruption, if e.g., the OS is smart enough to kick out the drive when this happens. > Another problem is that the job while rewarding is not…

Both, and usually significantly. Last I checked it was nearly twice as lucrative to be a Ruby-on-rails developer than an embedded engineer. Embedded also attracts a certain type of engineer, usually very smart and able to manage extreme complexity with attention to detail but at the cost of anything resembling readable, let alone maintainable, software. The fact that anything at all works in the modern world is amazi…

So $SALT_MINE, a highly profitable privately held Fortune 500 just decided to revamp their pay scales. They've now decided that they want to be at the 50 percentile remuneration-wise in the durable goods sector. That is the white goods sector, washing machines and such.

I predict we will lose all of our engineers - embedded dudes included.

Re: Why I'm usually unnerved when modern SSDs die on us

#128

I worked at a storage company, and they reinforced to us how not only does the OS lie to us, but the hard drives also lie to the OS. So you can't take anything you get from a hard drive as reliable, you have to test the data once you get it, ex through CRC, etc. Data can get corrupt at any time. As densities of data get higher and higher, it doesn't take much to have a catastrophic data failure. The only way to prote…

Application to OS: Did you write that data out to disk?

OS: Yes, I did.

OS' inner voice: Nah, I didn't, but I'll do it soon, I think.

OS to drive: Those write commands, they're durable yet?

Drive: Sure!

Drive's inner voice: Nah, they're still in my RAM, but I'll probably write them out any time now.

Re: Why I'm usually unnerved when modern SSDs die on us

#129
post #122

Earlier quoted context omitted.

> but SSDs are a perfect example of an entire computer that you attach to yours, and speak with through one of the (many) storage-oriented protocols. These days most of what we call a computer could be described this way. Even your compiled machine language is ultimately far more abstracted from what the processor actually does than it was on, say, a 6502.

> Even your compiled machine language is ultimately far more abstracted from what the processor actually does than it was on, say, a 6502 Funny that you bring up 6502; that reminds me of 1541 disk drive for C64, which had mostly same 6502 as the host computer (albeit running at slower speed).

The 6502 in the 1541 runs at 1MHz, that is indeed a bit slower than the NTSC version C64 CPU (1.023MHz), but a bit faster than the PAL version CPU (0.985MHz)

Re: Why I'm usually unnerved when modern SSDs die on us

#130
post #50

A major problem with SSDs seems to be “firmware death” - where the flash chips are physically fine (or mostly fine), but the firmware (or firmware memory) has gotten corrupted due to some programming error, electrical glitch, or cosmic ray. I’ve had scores of older SSDs die after things like power outages and sudden shutdown events. This is super frustrating because the data is physically OK but the controller just i…

I have seen some weird issues with SSDs. I had an OCZ Vertex 2 die on me multiple times, but one thing that stood out most is that after a power cycle or complete system shutdown (note: reboots were just fine) everything I had done last time - install software, update Windows, create files - was gone. The state was reverted to before the time it booted. It was like my computer contained some kind of Reborn chip, exce…

Like many early adopters, I too had a bunch of failed Vertex 2 drives and sometimes observed similar things. I think this might be because the drive lost some updates to its FTL about where it wrote new data, which could plausibly lead to both new files vanishing and changes to existing ones being apparently undone.
Post reply on HN