O Dell PowerEdge 2950 com duas NICs de 1 Gbps passando por duas portas de 1 Gbps em um comutador que passa para uma NetApp com quatro NICs de 1 Gbps que se apresentam como uma interface virtual. 24 unidades, 7200k SATA, NetApp RAID-DP. Mapeei cada NIC de host para a NetApp usando MPIO no iniciador iSCSI da Microsoft. Testando com SQLIO, minha taxa de transferência de gravação parece razoável em cerca de 200 MBs, mas minhas leituras estão mais próximas de 100 MBs.
Minhas leituras não deveriam ter mais de 200 MB, assim como minhas gravações? Isso é um problema de configuração ou há um problema fundamental de armazenamento que não entendo?
Atualização: Aqui estão IOPS para a carga de trabalho aleatória. As leituras fazem sentido, no entanto, não sei o que fazer com 20000 para as gravações. O cache da SAN é de 3,2 GB. Os testes do SQLIO são contra um arquivo de 25 GB.
fonte
Respostas:
As gravações em disco estão realmente indo para a memória (NVRAM) no arquivador, para serem liberadas no disco posteriormente - em um arquivador ocioso, elas serão incrivelmente rápidas e IOPs de 20.000 são bastante confiáveis (você verá velocidades semelhantes na maioria dos SSDs) .
As leituras, por outro lado, precisam vir do disco, a menos que já estejam no cache de leitura do arquivador (que, diferentemente das gravações, estão na memória volátil).
É difícil definir os fornecedores de armazenamento nos IOPs para discos giratórios, mas para uma unidade de 7200RPM, 80-120 Iops é bastante crível. Considerando que você provavelmente perdeu alguns discos para o RAID-DP e / ou peças sobressalentes da NetApp, 2.200 iops estão próximos do que você poderia esperar de 22 discos executando cerca de 100 iops cada.
Isso pode não explicar sua velocidade de leitura (seus discos podem não estar executando os 2200 pulos completos quando você está executando uma leitura seqüencial), mas pode pelo menos ajudar a explicar seu desempenho de gravação.
fonte
Para a posteridade, após muitas tentativas e erros, descobrimos como obter o rendimento esperado.
Como mencionado acima, a NetApp tinha uma interface virtual suportada por quatro NICs físicas. O host possui duas NICs e eu configurei o MPIO por meio do MS iSCSI Initiator para que houvesse um caminho de cada NIC para a interface virtual. Os resultados foram a taxa de transferência acima - as gravações faziam sentido a quase 200 MB ou a velocidade de duas NICs, mas as leituras eram metade disso ou a velocidade de uma NIC.
Após uma inspeção mais detalhada, nosso funcionário da SAN notou que o tráfego estava fluindo apenas através de uma das NICs físicas para as leituras. Não tenho certeza se houve algum erro de configuração, mas tentamos duas coisas e obtivemos nossa taxa de transferência. Uma era mudar de uma interface virtual suportada por quatro NICs para duas interfaces virtuais, cada uma suportada por duas NICs. Em seguida, mapeie uma NIC de host para uma interface virtual. A outra coisa que tentamos foi usar o "aliasing" no lado da SAN para apresentar várias interfaces virtuais. (Eu não sou um cara da SAN, espero ter dito isso corretamente.)
Minha opinião é que precisávamos que a SAN apresentasse mais de uma interface para que o Iniciador realmente visse vários caminhos. Aqui está o nosso rendimento agora:
fonte