1. A method of controlling storage of content on a storage device, the method comprising: in a storage device having a controller in communication with non-volatile memory, wherein the non-volatile memory comprises a first type of non-volatile memory and a second type of non-volatile memory, the controller: receiving data for storage in the non-volatile memory; upon determining that a fullness of the storage device has reached a proactive defragmentation threshold, only writing sequentially addressed logical groups of received data to the second type of non-volatile memory, wherein only writing sequentially addressed logical groups of received data to the second type of non-volatile memory comprises the controller: determining if the received data contains at least a threshold number of sequentially addressed logical groups and, when the received data is determined to contain at least the threshold number of sequentially addressed logical groups, bypassing the first type of non-volatile memory and writing the sequentially addressed logical groups of received data directly into the second type of non-volatile memory; and when the received data is determined to contain less than the threshold number of sequentially addressed logical groups, writing the received data into the first type of non-volatile memory; and upon determining that the fullness of the storage device has reached a reactive defragmentation threshold automatically defragmenting data already written into the second type of non-volatile memory in response to a triggering event.