A conta do Linux RAID 1 para alta latência?

3

Cenário: estamos executando uma instalação Solr grande (total de 3 TB no cluster) no EC2. Eu só estou preocupado com o desempenho do disco no lado de leitura das coisas. Suspeitamos que estamos limitados pela E / S do disco e, especificamente, obtivemos problemas quando um volume do EBS decide ficar escasso e lento.

Estou pensando em experimentar o RAID 1. Pelo que entendi, o software RAID do Linux dividirá as leituras entre discos, mas não tenho certeza de como ele é inteligente. Se um dos discos de um par RAID 1 receber backup em leituras, ele enviará mais leituras para o outro disco? Se uma leitura estiver pendente por muito tempo, ela será reprogramada para o outro disco?

Não consigo pensar em nenhuma maneira de testar esse comportamento. Eu ficaria feliz em olhar através do código, mas eu nem tenho certeza se isso seria tratado pelo agendador de I / O ou se é parte dos drivers de ataque. Eu não consigo encontrar qualquer documentação que entra em mais profundidade do que o software RAID HowTo.

    
por Kevin Peterson 23.01.2010 / 01:34

1 resposta

2

O balanceamento de leitura é tratado nos drivers md no kernel; drivers / md / raid1.c

Não é super inteligente. Ele tenta minimizar as buscas e é sobre isso. Não tenho certeza se alguma das implementações RAID é tão inteligente quanto você quer ...

Você tem memória suficiente em seus sistemas? Se for realmente pesado para leitura, o armazenamento em cache deve ajudar um pouco.

    
por 23.01.2010 / 01:53