Cópia do Windows Server para Servidor, executada remotamente, visão geral do processo

3

Ok, então eu tenho 3 servidores neste exemplo

Server_A, Server_B, Server_C

Eu quero mover dados pela rede de Server_A para Server_B executando um script em lote no Server_C, seria algo assim.

robocopy "\Server_A\Share\" "\Server_B\Share\"

1.) Como os dados são realmente gravados em Server_B, ele é copiado de Server_A para Server_C em uma pasta ou memória temporária gravada em Server_B? Ou Server_C de alguma forma realmente diz Server_A para copiar o arquivo para Server_B diretamente.

Meus pensamentos seriam os dados devem ser lidos para uma pasta temporária ou memória no Server_C antes que possa ser gravada em Server_B, o que significaria que você efetivamente dobra a quantidade de dados viajando pela rede usando Server_C para gerenciar o transferência torna-se um salto adicional?

2.) É mais rápido executar esta cópia de dados no server_A vs executando no Server_B assumindo que todos os aspectos de ambos os servidores são os mesmos? Ou seja: quando você copia de um servidor para outro, o gerenciamento da cópia no servidor de origem versus destino tem algum impacto no mundo real?

Eu acho que executar a cópia do servidor de origem é mais rápido porque tem o acesso mais rápido às tabelas de alocação de arquivos, uma vez que elas são armazenadas localmente, ao consultar um servidor remoto.

Agradecemos antecipadamente por qualquer contribuição que você possa fornecer.

    
por Shadowfox 24.10.2014 / 19:18

1 resposta

3

Rodar o comando robocopy que você mostra na sua pergunta a partir de "Server_C" faz com que os dados sejam lidos pela mensagem "Server_A" e enviados para "Server_B" por "Server_C". Todos os dados percorrem a (s) interface (s) de rede em "Server_C". Os dados se movem através de buffers na RAM - não há "pasta temporária" ou algo assim - é mais efêmero do que isso.

Você está correto, no entanto, em que está criando um "salto" que faz com que mais tráfego seja gerado no geral. "Server_C" não precisa de particular para que os dados passem por ele se "Server_A" e "Server_B" puderem se comunicar diretamente.

Nesse cenário, seria mais rápido executar o comando robocopy em "Server_A" ou "Server_B". Você não estará criando um "salto" que o tráfego passe desnecessariamente. Há definitivamente um "impacto no mundo real", embora a diferença prática na velocidade visível dependa da quantidade de dados que você está movendo e da topologia da rede.

A execução do comando no servidor de origem versus de destino não faz nenhuma diferença especial, porque os mesmos dados serão lidos do disco e transferidos pela rede. Não há nada sobre o "acesso às tabelas de alocação de arquivos" sendo mais rápido para a origem versus o destino - os mesmos dados estão sendo movidos, independentemente de onde você iniciou a cópia nesse caso.

    
por 24.10.2014 / 19:36