2013-07-05 65 views
0

我有我試圖決定是否保存在文件系統SQL XML文件標準文件大小變化從1MB到2MB 。 sql可以處理這樣大小的單個記錄嗎?任何人都可以在決定存儲如下的XML數據時,純粹基於數據大小來指導Filesystem vs Sql。1至2 MB的XML文件/尺寸基於存儲的XML文件

Datasize  IdealStorage 
0 to 100kb  SQL 
100kb to 1MB Filesystem/ other methods 

回答

0

這取決於有多少XML文件要存儲,100? 1000?或1000萬?

但IMO,文件系統將是最好的。

Can sql handle a single record of such size? 

是,SQL Server可以處理,沒有一點問題都沒有,但真正的問題是如何有效的SQL可以處理..?

Filesystem vs Sql 

我會說
- 如果文件大小小於1 MB,去爲SQL Server存儲 - 如果超過2 MB,選擇文件系統

我已經回答了相同的排序問題,你可以在此處詳細瞭解

你可以閱讀更多這What are the different possibilities to store a large number of files in a SQL Server 2008 Database?

希望這將有助於

+0

這些文件是僅供用戶使用的個人信息。目前我有100個用戶,但我預計它會超過10000條記錄。 –

+0

然後,我看不到任何問題將它們存儲在Sql中......您可能會考慮varbinary數據類型或XML列。 XML數據類型是在SQL Server 2005中首次引入的。最值得注意的是XQuery語言的功能是分析和查詢包含在XML實例中的值。 – Microtechie

0
  1. 2 MB的不應該是一個問題。我認爲二進制的最大限制是2 GB。不確定,可以檢查MSDN上的參考。如果您正在處理大量文件,Filestream或BLOB存儲也是一種選擇。

  2. 你所要求的指南並不是解決方案,因爲那裏會有許多不同的思想學派。僅基於尺寸的指導可能不是。

  3. 這裏有幾個提示,供大家參考。有點老了,但相關的:

http://blog.sqlauthority.com/2009/07/13/sql-server-blob-pointer-to-image-image-in-database-filestream-storage/

SQL Server Express database size/BLOB storage

+0

您應該知道,在XML字段大於1 MB時,SQL Server 2008 R2(以及可能還有其他版本)存在已知的缺陷,導致快照失敗。如果您的數據庫需要複製,您可能需要查看諸如文件系統等替代方法。當然,如果你需要複製文件系統,你還有其他問題需要解決。 –

+0

@OskarAustegard感謝您的信息。任何來源,我可以瞭解這個問題?我想你的評論應該是爲了上面的答案?因爲我沒有在這裏討論XML列,所以只有二進制。但是,XML列對於中等大小的XML來說是最適合的。 – Abhitalks

+0

@abhitalks遲來的回答:對不起,這是從我們自己的用例收集的經驗信息,並由MS支持人員確認 –