我正在ASP.NET MVC3中實現文件共享系統。我想大多數文件共享網站會以標準的二進制格式將文件存儲在服務器的文件系統中,對吧?文件共享站點的文件存儲格式
我有兩個選擇存儲明智 - 一個文件系統,或數據庫中的二進制數據字段。
將文件(包括大文件)存儲在數據庫中,而不是文件系統中有什麼優勢?
更多信息:
預期平均文件大小爲800 MB。通常要求每分鐘3個文件反饋給正在下載的用戶。
我正在ASP.NET MVC3中實現文件共享系統。我想大多數文件共享網站會以標準的二進制格式將文件存儲在服務器的文件系統中,對吧?文件共享站點的文件存儲格式
我有兩個選擇存儲明智 - 一個文件系統,或數據庫中的二進制數據字段。
將文件(包括大文件)存儲在數據庫中,而不是文件系統中有什麼優勢?
更多信息:
預期平均文件大小爲800 MB。通常要求每分鐘3個文件反饋給正在下載的用戶。
如果文件的大小如此之大,那麼使用文件系統幾乎肯定是更好的選擇。數據庫旨在包含分組爲小行的關係數據,並且針對這些關係中的值進行諮詢和比較進行了優化。文件系統針對存儲相當大的blob進行了優化,並將其作爲字節流進行了名稱調用。
將大的文件放入數據庫也會使管理數據庫佔用的空間變得困難。查詢文件系統中使用的空間以及刪除和替換數據的工具更好。
使用文件系統的唯一警告是您的應用程序必須在具有必要權限的帳戶下運行,以便編寫用於存儲這些文件的(部分)文件系統。
使用的FileStream時:正在存儲,平均而言
這裏是MSDN鏈接https://msdn.microsoft.com/en-us/library/gg471497.aspx
如何使用它:https://www.simple-talk.com/sql/learn-sql-server/an-introduction-to-sql-server-filestream/
什麼是存儲文件的平均大小?預計使用情況統計是什麼?我的意思是%INSERT/UPDATE/DELETE/SELECT? – sll 2012-04-05 20:51:26
@sll - 我已經在加載參數上添加了說明。 – 2012-04-05 20:55:32
DB == Microsoft Sql Server?如果是這樣,請查看[FILESTREAM概述](http://technet.microsoft.com/zh-cn/library/bb933993.aspx) – sll 2012-04-05 21:03:00