私は相当量の画像を扱うプロジェクトを実装しています。以下の2つのアプローチの短所/長所が何であるか、あなたの意見ではイメージデータをMySQLデータベースに保存していますか?
:
私はいくつかの文字列プロパティや画像などの項目の何千、各項目を格納する必要が- 。
- アプローチ1:ID(整数)
- MyISAMテーブルあなたは画像を保存する方法を
- として
- 各項目ディレクトリとID.jpg として指定された各画像の中に画像を保存
- アプローチ2:バイナリBLOBとしてデータベースに画像を保存
私は画像を直接アクセスすることができ、それはアプローチ2を使用して
<img src="same_directory/10.jpg" />
それだアプローチ1を使用して、私はまだ上記のHTMLを使用しますが、本当のを返しますPHPスクリプトへのJPGへのアクセスをリダイレクトする必要がありますすることができますDBからの画像。
パフォーマンス面ではどちらが速いと思いますか?
は、私は、画像データを使用してデータベースを乱雑には真の価値がありませんように私は、最初のアプローチを使用するように誘惑されています。1.
一般に、大きなBLOBをデータベースに格納すると、実際にはパフォーマンスが低下します。すべての画像が非常に小さいファイルであれば、それほど悪くはありません。 – Orbling
すべての画像がjpgでない場合は、データベースに保存する前に圧縮してください。 –
[写真をファイルとして保存するか、Webアプリのデータベースに保存する]の可能な複製?(http://stackoverflow.com/questions/561447/store-pictures-as-files-or-in-the-database-for- a-web-app) – shamittomar