Um SSD NVMe pode ficar mais lento durante cópias de segurança de ficheiros pequenos porque os metadados, as escritas aleatórias, as barreiras de sincronização e o trabalho do CPU criam um estrangulamento diferente do de uma única cópia grande.
A palavra “estrangulamento” é frequentemente usada para qualquer redução de velocidade, mas o estrangulamento térmico é apenas uma possibilidade. As cópias de segurança de ficheiros pequenos criam repetidamente entradas de diretório, atualizam marcas temporais e permissões, abrem e fecham ficheiros, calculam somas de verificação, comprimem ou encriptam dados e confirmam metadados. O NVMe pode apresentar menos MB/s enquanto processa mais operações por segundo e apresenta uma latência mais elevada. Compare cargas de trabalho locais com o mesmo tamanho antes de alterar o arrefecimento ou substituir a unidade.
Comprove a Diferença com Testes Locais do Mesmo Tamanho
Crie um ficheiro grande e uma árvore de diretórios com ficheiros pequenos, ambos com o mesmo volume total de dados. Copie cada um localmente para o mesmo destino NVMe, registando o tempo decorrido, os IOPS, a latência, a utilização do CPU e a temperatura.
O Fio define modos de E/S sequencial e aleatória separados, permitindo isolar o tipo de carga de trabalho em vez de comparar execuções de cópia de segurança não relacionadas.
Se a cópia local grande se mantiver rápida enquanto a criação de ficheiros pequenos abranda, é provável que a ligação PCIe e o percurso NAND sequencial estejam disponíveis. Prossiga com os metadados, a latência da fila, a cache, o CPU e o calor.
Meça as Operações de Metadados em Vez de Apenas os MB/s
Acompanhe ficheiros por segundo, criações, fechos, renomeações, atualizações de diretórios, escritas de ACL, atributos estendidos e operações de sincronização. Compare estes valores com o débito dos dados.
A Red Hat descreve o armazenamento de ficheiros pequenos como intensivo em metadados, explicando por que motivo milhares de ficheiros pequenos podem produzir poucos MB/s sem atingir o limite de largura de banda sequencial do NVMe.
Assim, uma cópia de segurança pode estar ocupada e a funcionar corretamente enquanto apresenta uma taxa de bytes dececionante. Avalie-a pelo número de ficheiros concluídos, pela latência e pelos requisitos de restauro, além do débito.
Verifique se a Limpeza da Cache Aumenta a Latência de Escrita
Registe o espaço livre, os bytes escritos, a latência sustentada e se o desempenho recupera após um período de inatividade. Compare uma área de teste recentemente sujeita a TRIM com o destino normal da cópia de segurança apenas quando for seguro fazê-lo.
A Crucial explica que a recolha de lixo ativa pode afetar a velocidade do SSD, sobretudo quando o dispositivo dispõe de pouco tempo de inatividade ou de pouco espaço reutilizável.
As escritas aleatórias pequenas podem exigir mais movimentação interna do que uma única sequência de escrita. Mantenha uma margem de espaço livre e não presuma que a taxa sequencial anunciada se aplica a escritas pequenas em estado estacionário.
Analise a Latência da Fila e a Saturação do Dispositivo
Registe a latência média dos pedidos, a profundidade da fila, a utilização, as taxas de leitura/escrita e a espera de E/S do CPU durante ambos os testes. Procure uma latência elevada com poucos MB/s.
O relatório do iostat ajuda a mostrar quando o dispositivo está saturado por muitos pedidos pequenos, apesar de o débito agregado permanecer muito abaixo das especificações sequenciais.
Aumentar a simultaneidade da cópia de segurança pode melhorar o desempenho de um dispositivo pouco carregado, mas piorar uma fila já saturada. Altere apenas uma definição de trabalhador ou de fila de cada vez.
Separe os Registos do Sistema de Ficheiros dos Dados dos Ficheiros
Identifique os sistemas de ficheiros de origem e destino e os metadados preservados por cada cópia de segurança. No NTFS, registe o crescimento da MFT e se os descritores de segurança, os fluxos alternativos e as marcas temporais são copiados.
A Microsoft afirma que a MFT contém pelo menos um registo por ficheiro, ilustrando por que motivo muitos ficheiros pequenos criam muito mais trabalho relacionado com registos do sistema de ficheiros do que um único ficheiro com o mesmo tamanho total.
Se a cópia de segurança preservar ACLs, xattrs, intervalos esparsos ou somas de verificação, inclua esse trabalho na comparação. Desativar funcionalidades de integridade apenas para melhorar um teste de desempenho pode enfraquecer a cópia de segurança.
Confirme o Estrangulamento Térmico Real em Vez de o Inferir
Registe a temperatura composta do NVMe, o tempo de aviso térmico, o tempo de atividade do controlador e o desempenho antes e depois do arrefecimento. Repita o teste com um fluxo de ar estável e o mesmo conjunto de ficheiros pequenos.
A Kingston explica que o estrangulamento térmico reduz o desempenho até o SSD regressar a uma temperatura segura.
Se o débito diminuir sem atingir um limite de temperatura ou um aviso térmico, considere-o um estrangulamento da carga de trabalho e não um estrangulamento térmico. O arrefecimento não resolve a serialização de metadados nem a geração de hashes limitada pelo CPU.
Otimize a Camada da Cópia de Segurança que Está Realmente Saturada
Teste uma alteração moderada, como reduzir o número de trabalhadores de somas de verificação, adicionar um trabalhador de cópia, agrupar metadados, utilizar um manifesto local ou excluir caches regeneráveis. Preserve os metadados essenciais para o restauro.
O artigo da ZimaSpace sobre testes de cópia SMB de ficheiros pequenos aborda cópias através da rede; este artigo isola o NVMe local e o pipeline da cópia de segurança quando a cópia local grande continua rápida.
O diagnóstico está concluído quando a lentidão corresponde à taxa de metadados, à latência das escritas aleatórias, à limpeza da cache, ao trabalho do CPU ou a um estrangulamento térmico confirmado, e uma alteração direcionada melhora o mesmo teste controlado com ficheiros pequenos.
Suporte e Dicas
Mais para Ler

O Plex pode partilhar uma GPU com outro contentor Docker?
O Plex e outro contentor conseguem frequentemente aceder à mesma GPU, mas é necessário testar o suporte dos controladores, o mapeamento de dispositivos, a...

Como saber se um erro do Plex vem do cliente ou do servidor
Reproduza o mesmo item noutro cliente, compare o percurso da sessão e, em seguida, recolha provas do servidor apenas depois de o âmbito lhe...

Como configurar a cache do Plex e o armazenamento temporário de transcodificação
Proteja o estado persistente do Plex enquanto coloca os ficheiros temporários de transcodificação num armazenamento local adequado e, em seguida, verifique a limpeza, o...

