ハードドライブに連続して物理的に配置される一連のファイルのコピー


1

実際にフレームで分割されたビデオである限り、できるだけ速く読み取る必要がある画像ファイルシーケンスがあります。したがって、イメージシーケンスがハードドライブに連続して書き込まれないと、ディスクアームが各ファイルのシークを継続的に移動するため、パフォーマンスが低下します。コピーするとき、ハードドライブに物理的に正しい順序でファイルを書き込む方法を知る必要があります。OSX、Linux、およびWindowsの手順が必要です。ありがとう。


ソフトウェアに個別のファイルが必要ですか、それとも単一の「アーカイブ」ファイル(tarまたは非圧縮zipなど)に対応できますか?
-grawity

各ファイルを元の場所にコピーする必要があります。ドライブ上のファイルを注文する必要があります。圧縮する必要はありません。
アブラハム

SSD /フラッシュメモリカードを使用して、問題を回避してください。また、AFAIK Linuxファイルシステムは、単一のファイルを連続させてすべてのイメージをアーカイブファイルに入れてから、archivemountユーティリティを使用してアーカイブをマウントできるようにしています
キセノイド

選択肢ではありません。ハードウェアもファイルシステムも変更できません。ハードドライブ上のファイル位置を並べ替えるのに適切なツールのみが必要です。
アブラハム

1
@dirkt iは、tiff、dpx、tgaファイルのようないくつかの画像ファイルを意味していました。これらはすべて映画の一部であり、シーケンスになります。したがって、ハードドライブに次々と配置するのが最適であるため、シークタイムが遅れてパフォーマンスが低下することはありません。
アブラハム

回答:


2

Sysinternalscontigユーティリティは、HDDストレージを備えたWindowsシステムで一度に1つのファイルに対してこれを行うように特別に設計されています。MacOSまたはLinuxでcontigに相当するものは見つかりませんでした。

ただし、SSDを使用する場合は、ファームウェアがファームウェアを配置する場所を決めるたびにSSDのセル内にデータが保存されることに注意してください。したがって、NTFSに従ってファイルが連続して書き込まれる利点は無効になります。


sysinternalsのcontigユーティリティは、その目的のためではありません。単一のファイルのみをデフラグします。ハードドライブでファイルのシーケンスを順番に並べ替えることはありません。ところで、私が明らかにしたことはSSDではないことだと思います。私が投稿したように、ハードドライブ(ソリッドステートドライブではありません)であり、アームがヘッドを連続的に移動することを伝えました。SSDにはアームもヘッドもありません。元の意味を失い、ロールバックする必要がある限り、投稿を編集しないでください。
アブラハム

0

特にLinux、Windows、およびMacについては、これに本当に答えることはできないと思います。なぜなら:

  • それぞれの異なるファイルシステムは、ディスク上の異なる場所にファイルを置くことができます。ext3 / 4ファイルシステムを作成してみて、簡単に識別できるファイル(たとえば、すべてaのファイルを含む)が終わる場所を見てください。おそらく、デバイス全体に「ストライプ」で書き込まれます。
  • 異なるハードドライブにはそれぞれ、未知の数のプラッターとヘッドがあり、セクターにマップする方法が不明です。
  • オペレーティングシステムまたはハードドライブ自体が、セクタを別のディスク上の場所に静かに「再マップ」する可能性があります。

一般に、ファイルの断片化を避けたいだけのように思えますが、ファイルを書き込むときにファイルシステムを空(またはほぼ空)にすることでそれを行うことができます。


特定のファイルを任意の順序で次々に書き込みたいだけの場合(ただし、OSは最終的にそれらをディスク上のどこに配置するかを決定します)、次のようなループを使用できます(Linuxなど)

while read filename
cp filename destination
sync
done

またはdd、バッファキャッシュをスキップして、同期も実行します。

dd if=filename of=destination/filename oflags=direct,sync

これを実現する商用ソリューションがあるので、Brisght TechnologiesのData Moverを確認できます。システムはすべての情報を書き込む前にディスク上のスペースを予約すると思います。私はすべてのOSの解決策を求めているのではなく、それぞれの解決策を求めています。ファイルシステムとOSに依存することを知っています。rsyncがそのようなものを作ることができるというベルを鳴らしますが、よくわかりません。
アブラハム

データムーバーは、ボリュームを直接マウントし、独自のセクター書き込みを行うように聞こえないため、最初に書き込むファイルを選択し、OSに通常の書き込みを行わせる必要があります。いくつかの機能があることをサポート:「配列を認識し、彼らは単一のファイルであるかのようにあなたは、ファイルベースのシーケンスを管理することができます積極的に初めに、断片化された無作為化およびインターリーブされたファイルのレイアウトを防ぐDATAMOVERその方法」とは、ちょうどに1つのファイルを作成しようとtime 「必要に
応じて

誤解したと思います。このソフトウェアは、ファイルシーケンスの断片化(およびもちろんファイルの断片化)を回避するように設計されています。
アブラハム

しかし、OSはファイルの書き込みを行います。プログラムは、OSにファイルの書き込み先を正確に伝えることはできません。次に書き込むファイルだけです。ブライトテクノロジーズはマーケティングで少し創造的な文章を書いているかもしれません;-)
Xen2050

直接IOの概念を確認してください。驚かれるでしょう:「ダイレクトI / Oは、ファイルシステムの機能であり、オペレーティングシステムの読み取りおよび書き込みキャッシュをバイパスして、ファイルの読み取りと書き込みがアプリケーションからストレージデバイスに直接送られます。直接I / Oは、アプリケーションによってのみ使用されます(データベースなど)独自のキャッシュを管理します。」
アブラハム
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.