Acelerar mongodump + mongorestore

1

Eu criei um script para copiar um banco de dados MongoDB para minha máquina. Estou criando um túnel SSH ( ssh -L ... ), então eu conecto à porta tunnelled com mongodump , então cano sua saída para mongorestore :

mongodump --host=127.0.0.1:##### --db=***** --archive | mongorestore --host={mongo_dest} --drop --archive

Eu gostaria de acelerar a cópia. --gzip não faz sentido para ser usado neste caso - porque a mesma máquina e memória são usadas por mongodump e mongorestore . Os dados são descompactados pelo soquete SSH.

Existe uma maneira de executar mongodump na máquina com SSH e canalizar sua saída para um processo na minha máquina?

Claro que eu poderia despejar o banco de dados, arquivar, copiar em SSH e restaurá-lo. Mas eu não quero ocupar espaço temporário.

    
por warvariuc 07.11.2017 / 17:56

1 resposta

1

Não sei porque não pensei nisso:

ssh *** ". /etc/profile; mongodump --host=127.0.0.1:27017 --db=**** --archive --gzip" | mongorestore --host=127.0.0.1:27017 --drop --archive --gzip

foi 1603.96 real 45.24 user 43.57 sys .

Agora 209.52 real 7.25 user 6.03 sys .

    
por 07.11.2017 / 19:10