如果您在選擇保存上傳到服務(wù)器的文件的最佳方式時猶豫不決,如果您習(xí)慣于將文件存儲在文件系統(tǒng)中并認為文件系統(tǒng)是為了保存文件而創(chuàng)建的,或者如果您不擔(dān)心在某些情況下使用數(shù)據(jù)庫保存文件的優(yōu)勢,那么是時候重新考慮你的選擇了。
網(wǎng)站建設(shè)哪家好,找創(chuàng)新互聯(lián)!專注于網(wǎng)頁設(shè)計、網(wǎng)站建設(shè)、微信開發(fā)、重慶小程序開發(fā)、集團企業(yè)網(wǎng)站建設(shè)等服務(wù)項目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了湖口免費建站歡迎大家使用!
文件系統(tǒng)
文件系統(tǒng)的優(yōu)點
性能可能比在數(shù)據(jù)庫中執(zhí)行時更好。為了證明這一點,如果將大型文件存儲在數(shù)據(jù)庫中,則可能會降低性能,在文件系統(tǒng)中,訪問文件非常簡單,重量輕。保存文件并將其下載到文件系統(tǒng)中比在數(shù)據(jù)庫中簡單得多,因為簡單的“另存為”功能可以幫助您??梢酝ㄟ^使用已保存文件的位置尋址URL來完成下載。遷移數(shù)據(jù)是一個簡單的過程。您可以將文件夾復(fù)制并粘貼到所需目標位置,同時確保為目標提供寫入權(quán)限。
文件系統(tǒng)的缺點
1)松散包裝。關(guān)系映射中沒有ACID(原子性,一致性,隔離性,持久性)操作,這意味著無法保證。考慮一種情況,您手動或通過一些***家伙從手中刪除您的文件。您可能不知道該文件是否存在。
2)安全性低。由于您的文件可以保存在您應(yīng)該提供寫入權(quán)限的文件夾中,因此很容易出現(xiàn)安全問題并引發(fā)麻煩,例如******。如果您無法在安全性方面做出妥協(xié),最好避免保存在文件系統(tǒng)中。
數(shù)據(jù)庫
數(shù)據(jù)庫的優(yōu)點
ACID一致性,包括在文件存儲在數(shù)據(jù)庫外部時更新的回滾。文件將與數(shù)據(jù)庫同步,不能孤立,這在跟蹤事務(wù)時占上風(fēng)。備份自動包含文件二進制文件。它比保存在文件系統(tǒng)中更安全。
數(shù)據(jù)庫的缺點
可能必須將文件轉(zhuǎn)換為blob才能將它們存儲在數(shù)據(jù)庫中。數(shù)據(jù)庫備份將更加沉重和沉重。通常,RDBMS是由RAM驅(qū)動的,因此所有數(shù)據(jù)必須首先進入RAM。當(dāng)RDBMS必須查找和排序數(shù)據(jù)時會發(fā)生什么?RDBMS跟蹤每個數(shù)據(jù)頁 - 即使讀取和寫入的數(shù)據(jù)量最少 - 它必須跟蹤它是否在內(nèi)存中,或者它是否在磁盤上,是否已編入索引或是否在物理上進行了分類等。