私は2つのメインファイルサーバと大きなバックアップサーバを持っていますが、誰かがバックアップサーバを誤って整理してしまっているので、バックアップサーバにファイルがないことを確認する必要があります。はメインサーバー上でファイルサイズ/名前を比較するコードを高速化するにはどうすればよいですか?
Rubyには、各ドライブのすべてのファイルのリスト(File.globを使用して見つかったもの)のリストを使用して、メインドライブ上のファイルの有無をチェックするクイックコードを記述したいと思っていました。 File.sizeおよびFile.basename。
問題は時間がかかります!メインドライブとメインドライブとの間の各ファイルは、バックアップドライブと比較してそれぞれ約0.8秒かかり、数十万のファイルを含むドライブがあると、これは機能しません。
提案がありますか?私は自分の道が非常に非効率的だと思っています。
数十秒はうまくいかないように聞こえません。ただ我慢して!あなたは何百もありますか?整形されたデータ(JSON、CSV、YAMLなど)としてディレクトリ構造をダンプし、データレベルで比較するのはなぜですか? – tadman