Unlike disk storage, solid state storage devices (SSD) have no moving parts. Hard disks use a spinning platter and a moving disk controller to read and write data. Unlike a hard disk drive (HDD), you can drop a SSD and kick it about without losing data. (Some laptops with HDDs include sensors that tell the computer when it is falling, then the HDD stops spinning to minimize damage.)
SSD uses NAND flash memory. It is also possible to use random-access memory (RAM), but that loses all data when it is powered off, so you need batteries. Memory which retains its information when it is powered off is called “non-volatile”–at that point it can safely be called “storage.” HDD’s uses magnetic disks. Obviously magnets hold an electrical charge without the need for electric power, which is why they were put to use to store data many years ago.
SSDs read one byte or word at a time (“Word” is a number of bits whose size depends on the processor.), but in order to write anything new, it has to erase an entire block first (A “block” is a large collection of bits.). That sounds odd and may seem like a waste of space, but that is how it works. The SDD can then reuse that block as long as it can find ways to express bytes and words there without setting all the bits to 1 (meaning it is erased again). For example, you can take a block that says 1111 (erased) and change that to 1110 or 0111 or any combination, but when you get to 1111 again that data is considered “erased.”
In the case of a data update, the SSD controller marks the old data as invalid and writes the updated data to a new location (block). Now we have new and obsolete data stored in two places, again something that is strange.
Although it is counterintuitive, NAND memory can wear out. How is that possible? Memory is made of silicon chips (semiconductors). The average memory cell can withstand 100,000 write and erase operations before it wears out. These write and erase operations are called “programming,” hence the name programming/erase (“P/E”) cycles to give an estimate of the life of the memory. To extend the life of the device, the SDD controller keeps track of which cells are worn out so that they are not used to store data.
There is a tradeoff between memory density and life span. More memory can be crammed into the same space using multiple level memory cells (holding 2, 3, or 4 bits) than single level memory cells (1 bit). Increased density means lowering expected lifespan.
The SSD, like HDDs, has a controller, although there are no moving parts, since it too is solid-state. The controller keeps track of what data is stored where plus calculates error correction codes (ECC) to verify that data is stored correctly. ECC data is stored in the NAND memory as well. When the ECC data does not match the data contents then something went wrong writing the data. The data is corrected if possible, otherwise an error is reported to the operating system.
There are some improvements in the technology that will boost their SSD capacity. Samsung recently announced 3D Vertical NAND (V-NAND) chips. Crossbar said it has created resistive random access memory (RRAM). Both promise to boost storage on smartphones and other mobile devices by manifold, such that the storage on the cellphone could grow to hundreds of gigabytes. How that will affect enterprise storage systems remains to be seen.