A partir da sua descrição, sua carga de trabalho será um acesso altamente aleatório, portanto, o fator limitante é a operação de E / S aleatória por segundo. Em um RAID-5, você obterá (na prática) um pouco menos de uma leitura / gravação de E / S por revolução do disco por fuso físico. Nessa situação, mais discos físicos e RPM mais rápido significam maior taxa de transferência.
Em uma situação de E / S altamente aleatória, em que o conjunto de trabalho das solicitações de dados estourar o cache, a taxa de transferência do sistema é uma função do número de discos físicos x da velocidade do disco. Quanto mais discos, melhor, quanto mais rápido, melhor.
Em sua questão teórica, os discos suportam um recurso conhecido como ' tagged command queuing '. Isso permite que o controlador despache solicitações de E / S para os discos e receba as solicitações de forma assíncrona. A placa interna no disco está ciente da posição das cabeças de disco e pode otimizar as operações, completando-as na ordem que decidir ser a ideal. O algoritmo para isso é uma variante em ' Buscador do Elevador '
Os resultados podem ser retornados fora de ordem, mas são marcados com o número da solicitação, de modo que o controlador RAID saiba qual solicitação corresponde à resposta (portanto, a "tagged"). O SATA tem um protocolo ligeiramente diferente conhecido como ' enfileiramento de comandos nativos ' que faz algo semelhante.
Nesse caso, o controlador RAID não precisa estar ciente da posição física dos cabeçotes do disco, pois isso é gerenciado pelo firmware no próprio disco.
Em uma carga de trabalho de acesso altamente aleatório, um único par de loops FC suportará muitos discos. Para uma carga de trabalho de streaming, como o FC de vídeo, o gargalo será mais rápido.
Alguns controladores podem suportar tamanhos de cache impressionantemente grandes. Você pode querer estimar o tamanho do conjunto de trabalho e ver se você pode realmente atualizar o cache do seu controlador para acomodá-lo. Se você tiver experiência em estatísticas, poderá construir um modelo de monte-carlo com base nas estatísticas de uso coletadas das solicitações.
Outra possibilidade de melhorar o desempenho pode ser usar uma camada de discos de estado sólido para armazenamento rápido, embora isso dependa do fato de o seu controlador suportar essa configuração.