大規模ディレクトリでのフォルダ比較が遅い問題を解決 — RcloneViewガイド
設定が最適化されていないと、数万ファイルを含むディレクトリの比較には時間がかかることがあります。大規模なクラウドディレクトリに対してRcloneViewのフォルダ比較を調整する方法を紹介します。
RcloneViewのフォルダ比較は最も強力な機能の一つです。2つの場所の間でどのファイルが異なるか、どちらか一方にしか存在しないか、そして同一であるかを正確に表示します。しかし、50万ファイルを含む2つのS3バケットや、NASディレクトリとクラウドアーカイブを比較する場合、ワークロードに合わせて設定が調整されていないと非常に時間がかかることがあります。以下の調整により、比較にかかる時間を数時間から数分に短縮できます。

すべてのクラウドを一か所で管理・同期
RcloneViewはrcloneのクロスプラットフォームGUIです。フォルダを比較し、ファイルを転送・同期し、クリーンなビジュアルインターフェースでマルチクラウドのワークフローを自動化できます。
- ワンクリック操作: コピー · 同期 · 比較
- 信頼性の高い自動化のためのスケジューラーと履歴
- Google Drive、OneDrive、Dropbox、S3、WebDAV、SFTPなどに対応
コア機能は無料。Plusで自動化機能を利用可能。
比較前にフィルタで範囲を絞り込む
フォルダ比較を高速化する最も簡単な方法は、比較対象のファイル数を減らすことです。Folder Compare with Filter(PLUSライセンス)を使用して、データ整合性の評価に影響しないファイルタイプを除外しましょう。例えば .tmp、.log、.DS_Store ファイルなどです。また、フォルダ名でフィルタリングして、大規模なツリーの中の特定のサブディレクトリのみを比較することもできます。
フィルタの構文はrcloneのフィルタルールに従います。.tmp はその拡張子を持つすべてのファイルを除外し、/.git/* はルートの .git ディレクトリ内のファイルを除外し、/archive/ はトップレベルのフォルダ全体をスキップします。比較を開始する前にこれらのルールを適用することで、rcloneが列挙・ハッシュ化する必要のあるアイテム数を大幅に削減できます。
遅いバックエンドに対してチェッカーの並行数を調整する
RcloneViewのジョブ設定にはNumber of equality checkersという項目があり、デフォルトは8です。遅延の大きい、またはAPIレート制限の厳しいクラウドバックエンドの場合、このデフォルト値が高すぎるとチェッカーがAPIレスポンス待ちで滞留し、逆に処理が遅くなることがあります。Google Drive、OneDrive、または低速なWebDAVサーバーのようなプロバイダーでは、チェッカー数を2〜4に減らしてみてください。
逆に、WasabiやCloudflare R2のような高速なS3互換バックエンドでは、チェッカー数を16以上に増やすことで、大規模バケットの一覧取得を大幅に高速化できます。最適な値はプロバイダーやネットワーク状況によって異なるため、いくつかの値を試してみてください。
初回パスにはサイズのみモードを使用する
デフォルトでは、rcloneはファイルをサイズと更新日時の両方で比較します。非常に大規模なディレクトリの初回パスを素早く行いたい場合は、サイズのみの比較を使用することで、チェックサム検証のオーバーヘッドをかけずに明らかな不一致(片側にのみ存在するファイルや、サイズが明らかに異なるファイル)を特定できます。
RcloneViewでは、比較セッションのSettings → Embedded Rclone → Global Rclone FlagsでGlobal Rclone Flagとして --size-only を指定できます。これは精度と引き換えに速度を得る方法です。大規模な初期監査にはこれを使用し、疑わしいファイルについては後で完全なチェックサム比較を行いましょう。
はじめに
- rcloneview.comからRcloneViewをダウンロードします。
- 比較前にFolder Compare with Filter(PLUS)を使用して、無関係なファイルタイプを除外します。
- 遅いバックエンドではチェッカーの並行数を2〜4に下げ、高速なS3プロバイダーでは増やします。
- 非常に大規模なディレクトリの初期監査には、サイズのみモードを使用します。
適切な設定を行うことで、フォルダ比較は不要な遅延なく、複数のクラウドプロバイダーにまたがる数百万ファイルにも対応できるようになります。
関連ガイド: