Windows Server 2008 R2ディレクトリが安全に保持できるファイルの数はいくつですか?
画像ギャラリーのあるウェブサイトで考えています。すべてのサムネイルを保持する1つのディレクトリと、フルサイズの画像を保持する別のディレクトリがあるとします。安全に保存できる画像のペアはいくつですか?
または、適切なカットアンドドライの答えがない場合は、30,000枚の画像で試してみるべきですか?
Windows Server 2008 R2ディレクトリが安全に保持できるファイルの数はいくつですか?
画像ギャラリーのあるウェブサイトで考えています。すべてのサムネイルを保持する1つのディレクトリと、フルサイズの画像を保持する別のディレクトリがあるとします。安全に保存できる画像のペアはいくつですか?
または、適切なカットアンドドライの答えがない場合は、30,000枚の画像で試してみるべきですか?
サーバーがボリュームファイルシステムにNTFSを使用している場合、ディレクトリ自体あたりのファイル数に制限はありませんが、ボリュームあたりのファイル/ディレクトリの数に制限されます。
NTFSの場合、サイズの制限は次のとおりです。
NTFSサイズ制限
ボリュームあたりのファイル数4,294,967,295(2 ^ 32マイナス1ファイル)
もちろん、それはパフォーマンスについては何も述べていません。また、関係する可能性のある他の考慮事項があります。30000を使用すれば、心配する必要はありません。あなたが数百万に入るとき、あなたはリストラを始めなければならないかもしれません。
スケーリング/パフォーマンスに対処するために編集
技術的に言えば、NTFSファイルシステムはすべてのファイルを追跡するグローバルMFTを使用します(ディレクトリはファイルであり、主にエンドユーザーへの論理表現に使用されます)。そのため、ボリュームを変更するたびに、その変更がMFTに反映されます。
多数のファイルを含む単一のディレクトリを作成する場合、推奨される手順の1つは、8.3名の自動生成を無効にすることです。上でリンクしたtechnetの記事から:
長いファイル名でファイルを作成するたびに、NTFSは同様の8.3短いファイル名を持つ2番目のファイルエントリを作成します。短いファイル名が8.3のファイルには、1〜8文字のファイル名と、1〜3文字のファイル名拡張子が付いています。ファイル名とファイル名拡張子はピリオドで区切られます。
したがって、大量のファイルを含む単一のディレクトリを絶えず変更している場合、システムはその短い名前を生成する必要があります。これにより、単一のディレクトリの内容を絶えず変更している場合、パフォーマンスが低下する可能性があります。画像を保存しているので、imageblahblahblahのように、多くのファイルの最初に同じようなファイル名が付いている可能性があります。
ファイルルックアップのパフォーマンスについては、大規模なディレクトリの場合でも、基盤となるB-Treeの実装により、NTFSは適度に高速である必要があります。
このスレッドもチェックしてください:NTFSパフォーマンスと大量のファイルとディレクトリ