2013-05-06 152 views
0

我正在創建一個項目,在其中創建很多圖像(潛在的x,000,000s)。將圖像保存爲blob或轉換爲實際圖像

創建它們時,它們即時創建並且是斑點。例如

data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAO... etc 

它是安全和有效的拯救他們,因爲他們是在MySQL或你會建議它們保存在一個目錄實際圖像存儲,然後只是路徑?爲什麼?

對我來說這是一個全新的問題。我正在使用PHP和MySQL數據庫。

+0

如果您將路徑存儲在數據庫中,您仍然需要調用數據庫來獲取路徑。不妨將整個圖像存儲在那裏。 – crush 2013-05-06 14:58:55

+3

這兩種方法的優缺點已經討論過了。 – Strawberry 2013-05-06 14:59:32

+1

除了你以外,沒有人能說出來。將它們保存爲base64絕對會浪費8位中的2個。如果將它們存儲在數據庫中,則每當備份數據庫時都會自動獲取備份,但移動完整的數據庫備份會變得更加困難,因此需要使用文件。真的是你的選擇。 – Adder 2013-05-06 15:01:08

回答

0

如果將所有文件存儲在目錄中,則必須處理文件系統的限制。對於某些文件系統(即FAT32),大量文件可能成爲問題

+0

儘管在服務器上使用FAT32的可能性不大。 – 2013-05-06 15:23:46

+0

@RichBradshaw Windows Server 2003 +上的任何東西都使用NTFS和Linux ...可用的文件系統範圍,你可能會碰觸FAT32(最後我檢查過,這個FS被大多數Linux支持),這是不可思議的 – 2013-05-06 16:15:46

+0

我甚至不能想到我上次看到FAT32以外的SD卡/記憶棒。 – 2013-05-06 16:31:04

0

看起來像用兩個保存(blob和path)搞亂了雙重工作。只需將圖像保存爲最有效的圖片格式即可。

但是,較早的答案表明這個問題已經討論過很多次了;只是指那些討論。