A média de operações de entrada/saída por segundo que um disco pode sustentar é um fator muito importante no ajuste dos bancos de dados MySQL/InnoDB, já que impulsiona a velocidade com que as páginas Dirty InnoDB Buffer Pool são descarregadas de volta para o disco.
Existe um método ou uma fórmula que eu possa usar para estimar a média de operações de E/S por segundo em que minha matriz de disco RAID 10 pode ser executada?
tl;dr Sim, você pode fazer um cálculo aproximado e pronto, mas o benchmarking é aconselhável se você precisar de precisão. Existem muitos fatores além do desempenho do disco bruto que podem influenciar os IOPs, em particular o controlador RAID.
Se você tiver as especificações técnicas do disco, o cálculo rápido para determinar os IOPs é: 1 / (latência média + tempo médio de busca) = IOPs aleatórios.
Os fatores contributivos:
Embora haja variação entre os modelos de acionamento, você pode aplicar uma figura aproximada e pronta para cada uma das velocidades de rotação comuns.
Com a maioria dos controladores RAID de classe empresarial, seu desempenho de leitura para níveis de RAID comuns (1/10/5/6) estará amplamente alinhado com IOPs * número de discos. Controladores mais baratos podem impor uma penalidade. O desempenho de gravação, no entanto, é significativamente afetado pelo nível escolhido:
Por exemplo, uma matriz RAID 10 de 10 discos de 15k equivale a:
Obviamente, a maioria das cargas de trabalho é uma mistura de leitura e gravação, portanto, é necessário considerar a relação r/w para determinar a capacidade necessária.
Use esta calculadora: Calculadora de IOPs de disco
é claro que YMMV devido ao controlador, cache, tamanho de IO, etc. 16 KiB para dados e 128 KiB para log é uma boa estimativa.