2009-08-09 142 views
5

我想把數據庫設計放在一起存儲圖像。你們許多人可能有設計數據庫來存儲圖像的經驗以及與之相關的挑戰。在SQL服務器中存儲圖像

db最終可能會存儲數以十萬計的圖像。我打算使用SQL Server 2008數據庫和實體框架。計劃使用FILESTREAM數據類型來存儲圖像。以下是我考慮爲db中的每個圖像存儲的屬性列表。

圖像名稱,圖像類型,圖像寬度,圖像高度,圖像水平分辨率,圖像垂直分辨率,圖像位深度以及最終的實際圖像數據。

我試圖弄清楚的事情: 1)我很好奇,如果我錯過了圖像的任何其他關鍵屬性。 2)由於使用FILESTREAM數據類型,圖像存儲在文件系統中時,可能會對數據庫備份造成什麼影響?

謝謝! Chan

+2

你能給我們一個更新嗎?事情如何解決? – eschneider 2012-08-13 15:10:51

回答

0

備份將存儲圖像以保持事務一致性。 至於它依賴於你的需求。我想不出任何其他屬性,但你錯過了。

3

1)我可能在這裏做一個瘋狂的假設,但是如果你的圖像是數碼照片的話,那麼你可能要考慮存儲所有(如果不是99%)數碼相機產生的元數據屬性。

2)在使用文件流執行備份時沒有影響,SQL Server在這裏完成所有繁重工作。 Filestream數據將成爲數據庫.BAK文件的一部分,因此您不需要執行任何其他文件系統備份。

你可能沒有考慮的是,作爲FILESTREAM是一項新功能&因此不能與其他一些SQL Server的功能,例如可以使用:

  • 數據庫鏡像
  • 複製(不能複製FILESTREAM列)
  • 數據庫快照
0

我還要把在編碼(JPEG,GIF,PNG,BMP ......),MIME類型(圖片/ PNG)諸如此類,所以你不必每次都解析文件名;也是文件大小(如果你需要顯示它)。

+0

圖像類型意味着編碼我認爲:P(他已經爲每個圖像保存) – Am1rr3zA 2009-08-10 15:55:43

+0

是的先生!圖像類型是爲了編碼。爲了清晰起見,我可以舉個例子。 – pencilslate 2009-08-10 22:09:31