A computer-implemented method is provided which includes: assigning data having a first heat to a first data stream, assigning data having a second heat to a second data stream, determining an anticipated throughput of each of the first and second data streams, assigning a first number of logical erase blocks of non-volatile memory to the first data stream based on the anticipated throughput of the first data stream, and assigning a second number of logical erase blocks of non-volatile memory to the second data stream based on the anticipated throughput of the second data stream. The number of logical erase blocks assigned to the data streams may be statically assigned, or may be adjusted dynamically based on at least one of temporal stream throughput, stream stall events, a current workload, or other factors. The non-volatile memory may include NAND flash memory, and wear leveling may be performed on all open logical erase blocks prior to assigning the first and second numbers of erase blocks. Other systems, methods, and computer program products are also described herein.