Flash storage is a form of solid state storage, which is persistent computer storage made up of flash memory. Flash memory, integral in many storage devices, like USB flash drives, SD cards, solid-state drives (SSD), is a non-volatile computer memory storage that uses circuits instead of the electromechanical spinning disks that are found in typical hard drives. Non-volatility means that flash storage is persistent, and data remains when power is shut off, unlike random-access memory (RAM), which erases when powered down. The two main advantages for flash memory is speed of memory access, and lack of moving parts (disk platters, actuator arms, etc.). These two qualities have made flash memory more expensive than other storage options, but also significantly more versatile since flash memory enables many smaller and more rugged computers and devices today.
In fact, flash storage within the enterprise cloud context is replacing spinning disk technology in many applications faster than anticipated, especially as costs for solid-state memory continue to reduce. To be sure, Amazon Web Services (AWS), Microsoft Azure and Google Cloud Platform (GCP) are investing heavily in solid-state storage as well, but the superscalers like Facebook and Google will continue to utilize spinning disks, they are simply cheaper at scale. The speed that flash storage enables will also become critical as these companies' pursue high performance object-based storage. Moreover, flash storage can help to enhance the performance of virtual machines, making it easier to migrate workflows from on-premise machines to the cloud.
There are two types of non-volatile memory used for flash memory, each with their own properties that make it suitable for particular use cases. The two forms are NOR and NAND flash. NOR memory is slower than NAND memory in writing and erasing, but allows for byte level random access, because of this reason, it’s suitable for ROM use cases. But NAND, being faster, and providing more dense storage capacity, are used in flash storage use cases, such as solid-state drives.
As technology improves there is more applicability for solid state storage and memory than mechanical alternatives, which have many small moving parts that are prone to damage. But solid state still has some drawbacks, first the advantages of using flash storage.
Many of the typical storage units have flash counterparts, where spinning disks are replaced with flash memory.
Flash storage is utilized in data centers mainly to bolster performance, and is becoming more common as the price tag for flash memory continues to reduce. However, capacity limitation for solid-state devices still challenges data centers, and therefore will continue to use cheaper and more spacious spinning drives. In the data center, flash storage helps to:
Because flash memory lifespan depreciates faster than other storage devices, specifically designed flash file systems are used to extend that life by managing read and write operations different than would be for other storage. Technically this is achieved through the use of a memory technology device (MTD) layer. The MTD provides the abstraction layer between applications and hardware drivers. Through this, when flash storage is updated, a fresh block is written over, and file pointers are remapped to accommodate the change in data. At a later time, when memory management determines that it is most economical, it will then rewrite over older used blocks. Essentially, fresh flash memory will become full before rewrites are considered in an attempt to help extend life. This wear leveling method, however, does not apply to flash memory found in most popular removable devices, such as USB sticks, MMCs, SD cards, and CompactFlash memory, and instead these devices use a flash translation layer (FTL) and block storage. FTL metadata is stored in the flash space. The risk this poses is that the portions of memory that the mapping table resides on may wear out before the rest of the device. This risk is less so for enterprise flash storage which takes measures to ensure mapping tables are protected from wear, such as by allocating extra space for spares.