現時点では、合計250 GBの220万個のファイルに対してrsyncを実行しており、6時間で700,000個のファイルが保存されます。
誰かが複数のスレッドでこれを行うことができるように高速化するrsyncのようなツールを知っていますか?
現時点では、合計250 GBの220万個のファイルに対してrsyncを実行しており、6時間で700,000個のファイルが保存されます。
誰かが複数のスレッドでこれを行うことができるように高速化するrsyncのようなツールを知っていますか?
回答:
ここではcpuが制限要因だとは思いません。転送のためのネットワーク帯域幅とディスクIOの両方によって制限されている可能性が高いです。特にこれらすべてのstat呼び出しのレイテンシ。
ファイルシステム階層をより小さなチャンクに分割して、並行して処理できますか?
ソースファイルとは何か、またそれらを書き込んだり変更したりしているものは何ですか。アプリケーションレベルで発生した変更を送信することはできますか?
受信サーバーのディスクサブシステムが複数のディスクを持つアレイである場合、複数のrsyncプロセスを実行するとパフォーマンスが向上します。3つのrsyncプロセスを実行して、ファイルをNFSサーバー(RAIDグループごとに6つのディスクを持つRAID6)にコピーして、ギガビットイーサネットを飽和させています。
この男は、複数のrsyncプロセスを生成する基本的なpythonハーネスについて報告します http://www.reliam.com/company/featured_geek
Linux(オープンソース)のマルチスレッド化されたcpクローンをチェックアウトすることを検討してください:http : //static.usenix.org/event/lisa10/tech/slides/kolano.pdf