There’s a lot of “Fear, Uncertainty, and Doubt” – FUD – circulating about SSDs and their penchant for failure. NAND flash wears out after a set number of erase/write cycles, a specification known as the flash’s endurance.
While some caution is warranted, a good understanding of how SSDs really behave will help to allay a lot of this concern. Continue reading “What Happens when SSDs Fail?”
One of the thorniest issues in SSD design how to manage erasing blocks that are no longer in use. That’s saying a lot, because NAND flash presents so very many difficult challenges like wear leveling, bad block management, error correction, and write amplification.
The difficulty stems from the fact that all of today’s software was written for HDDs which don’t behave like the flash in an SSD. An HDD can over-write existing data with new data. In a flash SSD, a block must be erased before being over-written and this can take a half a second – a huge amount of time in the world of computing. Since the software doesn’t accommodate flash’s “erase-before-write” needs, the controller inside the SSD must take care of this bit of housekeeping. Unused and unerased blocks are moved out of the way and erased in the background. This is called the “garbage collection” process. Continue reading “SSD Garbage Collection”