Como posso medir IOPS RAM / tmpfs de um aplicativo específico?

1

Estou executando um aplicativo baseado em hadoop (hadoop 1.2.1 ), onde descobri um gargalo no disco rígido; monitorar as IOPS do disco rígido com iotop resultou em ~ 160 MB / s, que foi a velocidade de gravação que obtinha comparando o disco com dd .

Procurando eliminar o gargalo, montei todo o meu hadoop HDFS e a saída dos mapeadores para tmpfs usando:

mount -t tmpfs -o size=5G none /app/hadoop

/app/hadoop é onde o HDFS é armazenado, assim como a saída intermediária dos mapeadores. O conjunto de dados de entrada no HDFS é de 680 MiB, a saída é de 318 MiB, enquanto a saída total dos mapeadores é de 2.30 GiB; todos estes divididos em 2 datanodes / tasktrackers, portanto, eu tenho espaço suficiente em RAM para o aplicativo executar e executar corretamente.

Nesta configuração, estou tentando medir o IOPS para esse diretório, ou seja, a velocidade de gravação. Como li neste tópico , as ferramentas de monitoramento tradicionais não funcionarão com tmpfs , não sendo um dispositivo de bloco. Como eu poderia medir a velocidade de gravação?

Soluções como pv , como proposto em outro thread, infelizmente não funcionariam; A alteração do código-fonte do hadoop não é uma opção viável e o pv introduz seus próprios gargalos ao gravar na RAM, conforme medi com dd .

    
por Adama 28.06.2017 / 05:27

0 respostas

Tags