
Estou analisando o impacto de agendar um cron para execução du
em várias pastas grandes (10-20 TB de arquivos no total, # arquivos é inferior a 100.000) a cada hora.
Pelo que entendi, du
usa stats
informações de inodes que são armazenadas em cache na RAM. Isso está correto? Ou é cache de disco? Ou ambos?
Se o que foi dito acima estiver correto, posso presumir que a execução du
frequente irá:
- não afetar negativamente o desempenho do meu sistema e
- não colocar desgaste desnecessário nos fusos?isso pode ser um ponto discutível, mas apenas me agrade
Eu li sobre várias ferramentas que oferecem algum tipo de cache para du
saída, mas meu objetivo é detectar diferenças, por isso não tenho certeza se são relevantes para a discussão.
Muito obrigado!
Responder1
Pelo que entendi, você usa estatísticas que lêem informações de inodes que são armazenadas em cache na RAM. Isso está correto? Ou é cache de disco? Ou ambos?
"armazenado em cache na RAM": sim, até certo ponto. Não completamente, já que os buffers do sistema de arquivos também consomem RAM, e listas de 100.000 inodes/extensões também precisam de RAM, portanto, "ambos". ("cache de disco" faz pouco sentido: a estrutura de dados está no disco, então não é um cache, são os dados subjacentes).
Se o acima estiver correto, posso assumir que executar du com frequência irá:
- não afetar negativamente o desempenho do meu sistema e
Você não pode presumir isso. Mesmo que todo o sistema de arquivos esteja na RAM, esta ainda é uma operação com uso intenso de dados e usará tanto a CPU quanto a RAM e a largura de banda da interface da unidade.
não colocar desgaste desnecessário nos fusos? isso pode ser um ponto discutível, mas apenas me agrade
Eu nunca vi desgaste do fuso, então, hum, não? Além disso, enquanto o disco rígido está em uso, ele gira - portanto, não tenho certeza se esta questão foi bem pensada!
Eu li sobre várias ferramentas que oferecem algum tipo de cache para a saída, mas meu objetivo é detectar diferenças, por isso não tenho certeza se são relevantes para a discussão.
Se você está atrás de mudanças, provavelmente está abordando isso ao contrário. du
é provavelmentenãoa ferramenta de escolha, então!
- você poderia usar o inotify para ser notificado sobre alterações nas propriedades do arquivo. Isso é menos carregado do que percorrer todo o sistema de arquivos apenas para fazer algumas alterações!
du
no btrfsirá enganá-lo sobre o armazenamento usado. O Btrfs é inteligente – os arquivos copiados não precisam de armazenamento extra até que você os grave, as regiões de arquivos esparsas também não, e a noção de instantâneos e subvolumes torna tudo isso um pouco conceitualmente difícil.du
apenas soma todos os tamanhos de arquivo. Não é o mesmo queUso de disco!
Eu proponho que você faça uma nova pergunta (nova postagem, não em comentários) na qual descreva du
detalhadamente o problema que está tentando resolver e descreva sua abordagem atual. Sua pergunta aqui parece perguntar sobre um pequeno aspecto de uma abordagem muito específica e não tenho certeza se essa abordagem resolve seu problema real!