One or more non-transitory machine readable media storing instructions which, when executed by one or more processors, cause the one or more processors to perform operations to manage a deduplicated storage tier of a primary storage array, the operations comprising:
- receiving a request for storing a unit of deduplicated data at a second storage tier of the primary storage array, the unit of deduplicated data received from a first storage tier of the primary storage array, wherein the first storage tier includes a set of semiconductor memory storage devices in a first sub-tier and a set of magnetic storage devices in a second sub-tier, wherein the second storage tier includes a set of storage devices and the deduplicated data;
- determining an aggregate input/output (I/O) workload associated with the unit of deduplicated data, the aggregate I/O workload determined based on a level of duplication in the second storage tier and an I/O operations per second (IOPS) density of the second storage tier;
- in response to determining that the aggregate I/O workload for the unit of deduplicated data exceeds a first threshold, creating one or more additional instances of the unit of deduplicated data in the set of storage devices in the second storage tier;
- determining that the TOPS of the second storage tier falls below a second threshold;
- and
- in response to determining that the IOPS of the second storage tier falls below the second threshold, reallocating one or more semiconductor memory based storage devices storage devices in the second sub-tier of the first storage tier to the set of storage devices in the second storage tier.