2009-08-09 22 views
5

画像を保存するためのDBデザインをまとめようとしています。あなたの多くは、画像を保存するためにdbを設計し、その画像に関連する課題を経験しているかもしれません。SQLサーバに画像を保存する

最終的に数十万の画像がデータベースに格納される可能性があります。 SQL Server 2008 dbとエンティティフレームワークを使用する予定です。画像を格納するためのFILESTREAMデータ型の使用を計画しています。次に示すのは、db内のすべてのイメージを格納すると考えた属性のリストです。

画像名、画像タイプ、画像幅、画像高さ、画像水平解像度、画像垂直解像度、画像ビット深度、そして最後に実際の画像データ。

私が理解しようとしていること: 1)イメージの他の重大な属性を見逃してしまった場合、私は不思議です。 2)FILESTREAMデータ型を使用するため、イメージがファイルシステムに保存されるため、dbバックアップを実行する際にどのような影響がありますか?

ありがとうございます! Chan

+2

私たちにアップデートを教えてもらえますか?どのように物事がうまくいった? – eschneider

答えて

0

バックアップは、トランザクション整合性を保つためにイメージを保存します。 あなたのニーズに応じて属性が異なります。私はあなたが逃している他の属性について考えることはできません。

3

1)私はここでは野生の前提を作っているかもしれませんが、あなたのイメージがデジタル写真になる場合は、Exifメタデータ属性を保存することを検討してください。

2)ファイルストリームによるバックアップの実行に影響はありませんが、SQL Serverはすべてここで重労働しています。 Filestreamのデータはデータベースの.BAKファイルの一部になるため、他のファイルシステムのバックアップは必要ありません。

  • データベース
  • レプリケーションをミラーリングが(できない:

    何が考えられていない可能性がありと、FILESTREAMは、このように新機能&あるとしてなど、いくつかの他のSQL Server機能を使用することができないということです、私もエンコーディング(JPEG、GIF、PNG、BMP ...)、MIMEタイプ(画像/ PNG)エトセトラに置く

  • データベーススナップショット
0

に)FILESTREAM列を複製毎回ファイル名を解析する必要はありません。また、ファイルのサイズ(表示する必要がある場合)。

+0

イメージタイプは、私が考える:P(彼は既に各イメージのために保存しています) – Am1rr3zA

+0

yes sir! Image Typeはエンコードされることを意図していました。私は明確にするために例を挙げることができました。 – pencilslate