Writing and erasing data on HDD versus SSD
When you write to a data set that resides on a hard disk drive (HDD), whatever data that previously existed is replaced with the new write data. Data written to HDDs is saved in fixed-size sectors and these sectors can be rewritten repeatedly. When you delete a data set or release space, the data remains accessible on the HDD. The only way to prevent access to residual data on HDDs is to overwrite the sectors.
Solid state drives (SSD) work differently. The media is arranged in fixed-size (4 kilobyte) pages, and pages are grouped into blocks. Writes are only permitted to a blank page. Pages can never be overwritten. When you write a flash device, the device must allocate a new blank page for the new data. The new page is noted as the current location in the logical block address (LBA) table. The original page is marked as invalid.
When you delete a data set, the data remains accessible on the SSD. You might overwrite with zeros; however, this would result in a potentially large data transfer and cause the device to allocate additional pages. This is not desirable because flash devices have a finite number of “program/erase” (P/E) cycles before they need to be replaced.
Flash drives provide an UNMAP command which is a more efficient solution to prevent access to residual data. UNMAP is a SCSI command that mark pages as invalid. It requires no allocation of SSD pages and zero data transfer. By marking the pages as invalid, they cannot be read by any program running under control of an IBM operating system.
Periodically, the device erases an entire block of invalid pages which makes these pages available for new writes.