Webアプリによって生成されるページで画像を表示する際、

画像の保存場所はファイルシステムが良いですか?
それとも、データベースが良いですか?
それぞれの利点と欠点を教えてください。

回答の条件
  • 1人3回まで
  • 登録:
  • 終了:2006/08/03 19:15:03
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答4件)

id:bonlife No.1

回答回数421ベストアンサー獲得回数75

ポイント23pt

ファイルシステムが良いです。

Webサーバのキャッシュを有効活用できるからです。

通常の Web サーバセットアップを使用する場合は、画像をファイルとして格納する。言い換えると、データベース内にはファイル参照のみを格納する。この主な理由は、通常の Web サーバのほうがデータベースコンテンツと比較してファイルのキャッシュに優れているためである。このため、ファイルを使用したほうがシステムの高速化を容易に図れる。 

[参考URL]

あえてDBに格納する利点をあげるならば、確実に変更管理ができ、他の情報と同様に一元管理できることぐらいだと思います。

id:btk84 No.2

回答回数1ベストアンサー獲得回数0

ポイント23pt

画像ファイルの量が多い場合や、アクセス数が多い場合などに画像ファイルの格納先サーバを分散したい場合は、DBに格納することでDB側の分散機能を利用できるという利点があるかと思います。


あとは、セキュリティ上画像に簡単にアクセスされたくない場合(認証等が必要な場合)はファイルとして持っておくよりDBに格納することでアクセスはされにくくなるかと思いますが。


ただ、どちらの場合もファイルシステム側で保存した場合でも対応ができないことはないので、よほど厳しい要件(画像ファイルを公開するサーバ側に格納してはいけない等)が無い限りファイルシステム側に保存する方が良いと思います。

id:kurukuru-neko No.3

回答回数1844ベストアンサー獲得回数155

ポイント22pt

・ファイルシステム

  煩雑に利用される画像に利用。

  データベースで画像を管理する場合でも

  マスターをデータベースに保存して頻度の高い

  ものは複製をファイルシステムに保存する方が

  管理がしやすい。

 例:アイコンや、背景、画面のレイアウト用

・データベース

 著作権があったり、検索システムと関連

 づけられたデータの管理をしたい場合、

 一括管理したり、複数のサービスで共有する

 または、データベースそのものがWebアプリを実行

 をサポートしている場合全てのデータがデータベース

 上に格納した方がよい。

 例:電子透かしを動的に生成

   

id:ssig33 No.4

回答回数217ベストアンサー獲得回数1

ポイント22pt

ほとんどbtk84さんの回答で不足はないかと思いますが、データベースに収納すれば、その他もろもろのデータと同時に一気にバックアップが取れるという利点があります。

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません