- - PR -
大量にファイルを格納する場合のフォルダデザイン
投稿者 | 投稿内容 | ||||||||
---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2005-02-17 23:36
janon と申します。
一つのフォルダに大量のファイルやフォルダを置く場合の 目安などについておうかがいできればと思います。 環境はWindows XP Professional を利用しています。 例えば、十万個のファイルを保存したい場合 いくつのフォルダに分けた方が良いでしょうか? 一つのフォルダに保存する、ファイルやフォルダの数について 目安などがありましたら、教えていただければと思います。 宜しくお願いいたします。 | ||||||||
|
投稿日時: 2005-02-18 02:35
> 例えば、十万個のファイルを保存したい場合
> いくつのフォルダに分けた方が良いでしょうか? 何個まで格納できるかは知りませんね。 先日Exchange Server の不正Mail Directoryを覗いたら 18万個のFileが存在しました。 こういった場合、Explorerで開くのは現実的ではない (応答が停止しているように見える)ので、そういった面は 考えたほうがいいかもしれません。 まあ、GUIで扱わなければいいだけの話ですが・・・ | ||||||||
|
投稿日時: 2005-02-18 09:21
ファイルが多いと、GUIでなくても、プログラムから開く場合でも遅くなりますので、適宜、分けた方がいいでしょう。どうやって分けるかは、ケースバイケースだと思います。
| ||||||||
|
投稿日時: 2005-02-18 10:21
コメントをありがとうございます。
経験的にファイルシステムの反応が遅くなったり プログラムが停止しているように見えたりすることはわかるのですが その目安がわからずにおります。 >どうやって分けるかは、ケースバイケースだと思います。 システムエンジニアの方がフォルダ構造をデザインするとき 例えば、大量のログファイルですとか、 大規模な企業のファイルサーバですとか、 何を目安にデザインするかなあ、と思いまして こちらに書き込んでみました。 基本的にはGUIでなくプログラムからの ファイルアクセスを想定しています。 宜しくお願いいたします。 | ||||||||
|
投稿日時: 2005-02-18 11:42
こんにちわ、雲山というものです
定義的(常識的?)なことから申し上げると
とま、これを踏まえて考慮されるといいかと 経験的には格納単位にファイルの種類分けして、大容量・多数化しそうならさらに単位を小さくしてます。 ・フォルダ分けの例 ログ :システム→年→月→日→時間 ファイル:システム→大項目→中項目→小項目 ある意味、単位化というのは日常的にみなさんがやっていることではないでしょうか あんまり参考にならないかもしれませんでした、はい # そういえば超整理術とか一時期はやったな・・・ [ メッセージ編集済み 編集者: 雲山 編集日時 2005-02-18 12:28 ] | ||||||||
|
投稿日時: 2005-02-21 18:14
コメントをありがとうございます。
うーん。 現在のところ、 階層分けをしなければ 10万個のフォルダに90万個のファイルを 分類せねばならない状況です。 まずはその通り実装してみようと思います。 で階層わけがどのようにパフォーマンスを改善するか また、こちらの掲示板にフォローアップしてみようと思います。 コメントありがとうございました。 | ||||||||
|
投稿日時: 2005-02-21 18:24
フォルダ数が10万というのも多い気がします。
ファイル数およびフォルダ数の個数にアクセス時間が比例するとする場合、 階層が2階層(すなわち、AAA/BBB.txtなど)ならば、総アクセス時間は、 フォルダを約950(=√90万)に分けたときに最小になるかと思います。 とはいえ、普通は自由に分けれませんから、950に近いような分け方を工夫 する必要があるでしょう。 | ||||||||
|
投稿日時: 2005-02-21 18:38
unibon です。こんにちわ。
これだと、平均すると1個のフォルダに9個のファイル、でしょうか? なお、昔(FAT12 や FAT16)は、ひとつのフォルダーにたくさん(おおよそ1千個以上)入れると、エントリーの管理が複雑なためかアクセスに極端に時間がかかりましたが、最近のファイルシステム(FAT32/NTFS)ならば、数万個位ならぜんぜん平気のようです。 したがって、プログラムからアクセスする分には問題にはならないことがほとんどでしょう。ただし Explorer などで覗くと、依然としてとても時間がかかります。(ソートしちゃうためかも?) #「このフォルダーは決して開いてはいけません」と注意すれば良いのでしょうけど。
以下、あたりまえですが、ファイル管理のロジックを、書き込む側と読み出す側で共通のロジックを持つようにして差し替えが容易なようにしておけば、大丈夫でしょう。 |