保存圖片到數(shù)據(jù)庫(kù)還是文件系統(tǒng)?linuxman | 2005年01月03日, 20:47 在WEB系統(tǒng)設(shè)計(jì)中,經(jīng)常遇到保存圖片、多媒體資料等到文件系統(tǒng)還是數(shù)據(jù)庫(kù)的問(wèn)題。從一些討論的結(jié)果看,保存大對(duì)象到數(shù)據(jù)庫(kù):
優(yōu)點(diǎn): 1,維護(hù)方便,備份、恢復(fù)只需要對(duì)付數(shù)據(jù)庫(kù)即可。備份恢復(fù)雖然有些耗時(shí),但我不用擔(dān)心自己在文件系統(tǒng)上還拉了什么東西,非常方便; 2,文件元數(shù)據(jù)檢索速度快,如果你需要列出所有文件名,數(shù)據(jù)庫(kù)肯定比文件系統(tǒng)快; 3,發(fā)展方向,其實(shí)現(xiàn)在有postgresqlFS,是linux的一個(gè)用戶(hù)層的文件系統(tǒng)擴(kuò)展,和M$的winFS概念類(lèi)似,整個(gè)文件系統(tǒng)就是一個(gè)數(shù)據(jù)庫(kù); 4,一定范圍內(nèi),性能可以提高,尤其是大并發(fā)的范圍,比文件系統(tǒng)性能好; 5,應(yīng)用擴(kuò)展更容易,因?yàn)槌绦蛱幚淼臅r(shí)候省缺了一系列FILE *的操作,數(shù)據(jù)庫(kù)有現(xiàn)成的接口(還有處理片斷的東西)。 缺點(diǎn): 1,另外一些范圍內(nèi)性能會(huì)變差些,比如單用戶(hù)大量文件的拷貝,差距大概在10%左右; 2,數(shù)據(jù)庫(kù)大小增長(zhǎng)比較明顯,并且目前沒(méi)有很好的擴(kuò)展方式;文件系統(tǒng)可以利用NFS、NAS、SAN等方式擴(kuò)展,而postgresql目前還是建議用RAID。不過(guò)這一點(diǎn)將來(lái)肯定會(huì)得到改進(jìn)。 laser估計(jì): 在100T以下的庫(kù)(文檔、圖片),還是用數(shù)據(jù)庫(kù)存儲(chǔ)好,超過(guò)100T(比如存儲(chǔ)監(jiān)控視頻流),可能文件系統(tǒng)更好些。 以上資料摘自: http://laser.dyndns./index.php?t=msg&th=5204&start=0&rid=&S=777821ad263a5b5cb0edcc07319e505c 另外的一個(gè)討論在: http://www./phpBB2/viewtopic.php?p=12912#12912 |
|