人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

大量の画像ファイルを配信するサーバーを作ろうと思っています。

調べていくと、
◆大量のファイルを一つのディレクトリで管理するのはディスクアクセスの低下を招き良くない
◆ext3などでは一つのディレクトリ内に大量のファイル(1万個とか)を作ると、動作が遅くなる
◆ReiserFSはext3の欠点が解消されている
など、大量のファイルを配信する難しさがわかりました。。

そこで質問です。

◇ReiserFSだと一つのディレクトリ下に(/images/)に10万個×10kbのファイルを保持していても、安定したディスクアクセスを維持できるのでしょうか?出来ない場合は解決策を教えて下さい。


よろしくお願いします。

●質問者: ikasamt
●カテゴリ:コンピュータ インターネット
✍キーワード:ext3 アクセス サーバー ディスク ディレクトリ
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● kurukuru-neko
●35ポイント

非常に小さなファイルをランダムに配信する場合

ファイルシステム上の安定性より単一ディスク上に

保存される事になるためディスクの同時ランダム

アクセス時の性能の揺らぎが問題になると思われる。

確実に安定して常に一定した速度で大量の小さな

画像ファイルを配信する目的であれば合計データ量

が高々1Gなのでディスク上のファイルに頼らず

全てメモリー上に展開した状態で配信する事をお勧め

します。

安定性とは関係ないですが、

1.局所的にアクセスが集中するので、

障害が発生した場合全滅する可能性がある。

2.コマンド処理時の動作が異常に遅い

/異常動作の弊害が考えられる。

============================================

ベンチマーク

http://www.wikihouse.com/linuxfs/index.php?%C0%AD%C7%BD%C8%E6%B3...

http://www.namesys.com/benchmarks/v4marks.html

ファイルシステム比較

http://lc.linux.or.jp/lc2002/papers/sugaya0920h.pdf

http://www.osdl.jp/osdl/docs/ks4-200304/ks4_jfs.pdf

ext2/3 診断ツール

http://www.ipa.go.jp/software/open/forum/development/download/da...

ReiserFS

http://www.atmarkit.co.jp/flinux/rensai/fs05/fs05a.html

◎質問者からの返答

なるほど。メモリを多く積むべしと。教えていただいたpdfやurlによるとXfsやReiserFSの方がext3より大量のファイルを扱うに適しているようです。信頼性に不安はあるみたいですが。

勉強になります。


2 ● 成瀬
●35ポイント ベストアンサー

ReiserFSは知らないので解決策だけ。

ファイルのMD5なりSHA1ハッシュなりを取って、

最初の何バイトかで分けるとよろしいかと。

1バイトなら均等に 00 ~ FF の 256個に分かれますから、

全部で100万ファイルくらいになるまではこれでいけるでしょう。

00/00 ~00/FF ~ FF/00 ~ FF/FF

と2段にすれば数億ファイルくらいまでいけるかと。

# その前にディスクの容量を使い切るでしょうが、

# その場合は 00-7F をディスク1などとすればよいでしょう

◎質問者からの返答

ありがとうございます。ハッシュで分けるのって便利ですね。256×256=65536個のディレクトリってことは、1ディレクトリあたり1万個入れて合計6億個って事ですか?つまり1ディレクトリに1万ファイルくらいなら余裕だと言うことですかね。

勉強になりました。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ