バックアップ用に何かを書いています。非常に大きなファイル/フォルダ(100万++、100TB++)を扱っています。
スピードを上げるには、ツリー内の最大10個のフォルダを選択する必要があり、そのためにはツリーについて知っておく必要があります。
- サブツリーで最大の10〜20のフォルダは何ですか? (ディスク使用量)
- ほとんどの部分ファイルを含むフォルダーです。 (使用量は重要ではありません。4kランダムスピード)
du -kh
時間が長すぎるため、情報を取得できません。
私は最初にフォルダツリーを作成し、ファイルなしでローカルストアで計算を実行する必要があると思います。
しかし!これにより、フォルダツリーがわかります。どのフォルダに最大のファイルと最小のファイルがあるかはまだわかりません。
どちらの情報も見つからず、今では「推測方法」のオプション2を検討しています。
どうすればいいですか?
答え1
情報を保存して提供するために特別なファイルシステムを使用しない限り、ポーリングはdu
基本的に最善の方法です。
ufs / extなどの標準ファイルシステムはフォルダの内容の合計サイズを追跡しないため、(高価な)要求を行う必要があります。
ファイルが100万個を超えるとすぐに作業を実行することはできませんが、du
後で使用するために出力を実行してアーカイブできます。