追記 テスト結果貼っておこう
適当に差分を作ったデータの同期を取ったときのものです。実行したコマンドはこんな感じ。
# time rsync -a --delete --stats --password-file=./pass src_host::module dest/
サーバ側2、クラアント側3*1
Number of files: 538382 Number of files transferred: 97531 Total file size: 7818933673 bytes Total transferred file size: 1451918989 bytes Literal data: 30571717 bytes Matched data: 1421347272 bytes File list size: 13192246 File list generation time: 82.409 seconds File list transfer time: 0.000 seconds Total bytes sent: 9555716 Total bytes received: 52833182 sent 9555716 bytes received 52833182 bytes 98018.69 bytes/sec total size is 7818933673 speedup is 125.33ost 19.09s user 30.13s system 7% cpu 10:44.21 total
サーバー側3、クライアント側3
Number of files: 538382 Number of files transferred: 97531 Total file size: 7818933673 bytes Total transferred file size: 1451918989 bytes Literal data: 30571717 bytes Matched data: 1421347272 bytes File list size: 12674102 File list generation time: 0.001 seconds File list transfer time: 0.000 seconds Total bytes sent: 9259457 Total bytes received: 52161847 sent 9259457 bytes received 52161847 bytes 100608.20 bytes/sec total size is 7818933673 speedup is 127.30 18.78s user 29.38s system 7% cpu 10:10.08 total
見ての通り、最終的にかかった時間はほとんど変わりません。
3-3の組み合わせでは"File list generation time"がほぼ0ですね。これは--verboseオプションを付けて実行すると良くわかります。2-3のほうは転送開始までかなり待たされるのに対して、3-3では差分が見つかった時点で直ぐに転送を始めています。しかし差分を取るタイミングが違うだけでトータルでは同じ処理をしてるので、かかる時間も同じになるのかな。
*1:他の新オプション、機能についてははどうか解らないけど、リアルタイムで差分取得、同期は3-3の組み合わせでしか使えません。