tar/sshを使ったリモートバックアップはgzipする効果はあるのか?
ちょっと気になったので実験。
理想的な環境ということで、localhost内で測ってみることに。
普通はこんな感じでやるかな。
$ (cd sendpath && tar cf - .) | ssh user@hostname "(cd getpath && tar xfp -)"
あんまりファイルが少なくてもイマイチなので、手元のkernelツリーを使うことにする。
この環境では、ssh-agentは入っていないので、パスワードは手入力。
zありの結果。
$ time tar zcf - ./ | ssh kinneko@localhost "(cd /home/kinneko/arctest/ && tar zxfp -)" Password: real 10m17.287s user 1m19.476s sys 0m13.611s
zなしの結果。
$ time tar cf - ./ | ssh kinneko@localhost "(cd /home/kinneko/arctest/ && tar xfp -)" Password: real 12m20.505s user 0m24.771s sys 0m17.088s
素のファイルを送るときには、圧縮したほうが効率がいいってことね。
元と先に十分なパワーがあることが前提かもしれないけど。
純粋なアーカイブのオーバーヘッドと、通信のオーバーヘッドでは、理想環境であっても通信のほうが効くということで。
$ time tar cf - ./ | (cd /home/kinneko/arctest/ && tar xfp - ) real 12m24.017s user 0m3.998s sys 0m33.537s $ time tar zcf - ./ | (cd /home/kinneko/arctest/ && tar zxfp - ) real 12m5.361s user 1m27.352s sys 0m40.626s
ネットワークを経由しないと、あんま変わらないというか、ネットワーク経由するときより長くなっているな... なんで?