2011-11-09 13 views
0

サブディレクトリにグループ化する前に、ドライブにイメージを保持する最適なディレクトリ数がありますか。ベストプラクティス - ディレクトリ構造

例:私は約6000000のイメージファイルのコレクションを持っています これらをいくつかのレイヤーに論理的にサブグループ化することはできますが、最も高速な検索には最適ではありません。私は絶対パスを知っているので、ディスクを検索する必要はありません。

私の基本的なオプションは次のとおりです。

1ディレクトリ60万のファイルが(!私の本能が、これはよくない私に教えてくれ) OR 200最大最小400個のファイルの平均で1500のサブディレクトリごとと 1ディレクトリ( 600) OR 75個のサブディレクトリを持つ1つのディレクトリで、それぞれ平均20個のサブディレクトリと平均400個のファイルがあります。

2番目のシナリオは私の理想的な選択ですが、この数のサブディレクトリがパフォーマンスに影響することに懸念しています。

お願いします!選択肢#1(「ちょうど一つの場所ですべてをダンプ」)ほぼ確実に貧弱であることを行っていることを除いて、私の経験で

ロジャー

+3

私たちはどんなファイルシステムについて話していますか? – themel

+0

申し訳ありません - これはRAID5アレイを搭載したWindows Server 2008 OS上にあります – RogerDodge

答えて

0

これはファイルシステム(とさえストレージ・ベンダー)依存しています...パフォーマー。

私たちは同様の問題に直面し、#2の変形に行きました。私たちのケースでは、数千人のユーザーがいて、それぞれが10〜1000個のファイルを持っていました。私たちは、このように見えた構造になってしまった:\ EF \ all_the_files

AB部分がマウントポイントを指定

ABの\ CD、およびCDの\ EFは、下のサブフォルダの二つのレベルでした。

大量のIO負荷が発生する場合は、大規模に使用する予定のハードウェアとネットワークの設定をテストすることを強くお勧めします。また、必要に応じて、データの一部のバックアップや復元をどのように行うことができるかを考えてください。

0

このprevious questionは、実験後にNTFS上のフラットファイルを優先します。現代のファイルシステムは、ログの検索時間を持つ構造体にディレクトリの内容を格納するので、log(n)と> 2 log(sqrt(n))の間で選択することができます。

関連する問題