Armazenamentos de objetos remotos são amplamente utilizados em cargas de trabalho na nuvem devido à sua alta disponibilidade, redundância e escalabilidade elástica, que permitem aos usuários transferir a gestão da infraestrutura. No entanto, acessar esses armazenamentos remotos introduz latência e custo adicionais. Para mitigar essas desvantagens, camadas de cache local são frequentemente empregadas para melhorar o desempenho e reduzir a sobrecarga de requisições. Embora caches baseados em DRAM ofereçam alto desempenho, são caros e impraticáveis para grandes conjuntos de dados. Caches baseados em Flash (SSD) fornecem uma alternativa mais econômica, mas seu desempenho pode degradar sob cargas de trabalho pesadas devido aos processos de coleta de lixo (GC) em segundo plano inerentes às arquiteturas de SSD convencionais. SSDs com Namespaces Zonados (ZNS) emergiram recentemente como uma alternativa promissora ao armazenamento flash tradicional. Ao eliminar a necessidade de GC em nível de dispositivo, os SSDs ZNS podem fornecer desempenho mais previsível. No entanto, impõem novas restrições quanto à colocação de dados e exigem mudanças significativas no design e na gestão de cache. Neste trabalho, projetamos e implementamos um sistema de cache ciente de ZNS para avaliar as trocas de desempenho entre SSDs ZNS e SSDs de interface de bloco tradicionais em cargas de trabalho de cache. Através de análise experimental, identificamos quando os dispositivos ZNS podem superar os SSDs convencionais e quando os benefícios podem não justificar a complexidade de software necessária. Concluímos fornecendo recomendações de design para desenvolvedores de sistemas de cache que consideram a adoção de SSDs ZNS.
John Ramsden (qui,) estudou essa questão.