1. A method for writing data to a data storage system, comprising: receiving, at a storage device, a plurality of write commands from a host device; storing, at the storage device, the plurality of write commands in an internal command queue unique from a host command queue; determining whether a depth of the internal command queue exceeds a predetermined command queue depth, the predetermined command queue depth based on an average amount of power consumed by the storage device when executing write commands; upon determining that the depth of the internal command queue exceeds the predetermined command queue depth: performing one or more write commands in the internal command queue, wherein each performed write command writes data to a primary non-volatile memory of the data storage system and causes the depth of the internal command queue to decrease and wherein the one or more write commands are performed until the depth of the internal command queue reaches a minimum threshold; and upon determining that the depth of the internal command queue does not exceed the predetermined command queue depth: causing the storage device to not perform a write.