數據庫表或XML
回答
如果您認爲最終需要的不僅僅是少量的CRUD,或者您的網站將超出少數用戶,使用數據庫。
搜索或更新XML文件可能會導致性能和未來可擴展性下降。
我正在處理一個與100%XML一起用於數據存儲的應用程序。原因是允許在許多不同的其他應用程序中進行文本搜索。有時,當您需要在其他應用程序中共享數據時,XML更好。
XML可用於共享數據,但這並不意味着它需要作爲XML存儲在後端。 – 2008-10-21 19:15:27
我會選擇使用數據庫表時併發寫入可能發生,即在任何情況下,當你無法保證只對單一數據的變化將在任何一個時間發生。
此外,如果數據是關係型的,我會使用數據庫。
對於小事情,很可能是低流量的,XML是好的。
IMO:當你的數據有很多寫事務時使用DB。如果您主要編寫配置類型文檔,那麼大多數情況下只讀,而不是XML。作爲數據存儲的XML並不是您的最佳解決方案,因爲使用數據庫可以獲得更好的結果。特別是當你開始有很多記錄(行)時,數據庫開始變得更容易處理。
您可以使用XML,如果你不打算用法師許多記錄的變化(標籤,配置等),否則它更適合使用的表。
我設計了我的表格並用選擇的屬性(FOR XML)生成XML文檔。
我想,如果我遇到性能問題,我可以改變我的DB庫。
這是更好地做多變的設計,如果性能問題或發生等。
我不同意Stephen的觀點。特別是在應用程序間共享數據時,應該使用數據庫。
數據庫用於共享數據。這就是他們發明的,這就是他們擅長的。即使在併發更新沒有問題的情況下,數據庫也比XML文件更正式。 XML的非正式性從一開始就很誘人,但最終導致不可用性。
儘管可能很難解決某些應用程序與數據和/或SQL接口的關係模型之間的阻抗不匹配問題,但您仍然可以獲得比XML更高的靈活性和穩定性。
我將保留對XML的情況,其中正式的數據分析是有點不恰當,或正式的數據庫設計超出了開發團隊的覆蓋面。
我完全同意。如果您想共享數據,請使用數據庫。我們使用XML,但保留它作爲配置文件,這些文件無非是美化ini文件。 – SWD 2008-10-21 14:21:28
考慮數據的性質,並限制數據存儲對數據的影響。如果您的數據與記錄相似而不是文檔,結構規則和層次結構很小,並且數據元素之間可能存在許多橫向關係,那麼通常您會比使用某種本機XML存儲獲得更好的RDBMS性能和健壯性。如果您的數據採用文檔形式,並且具有不規則的順序結構和不確定的層次結構,那麼您可能不會在RDBMS中對這些數據進行建模,並且您可能希望探索原生XML數據存儲。開源的例子包括
商業XML數據庫包括
我沒有使用任何這些產品我自己呢。
無論哪種情況,都可以使用XML作爲數據交換格式。
XML應該用於數據傳輸 - 即在應用程序之間移動數據(當其他應用程序由於某種原因無法觸摸數據庫時)。
有[幾乎]有一個理由不是然而,使用數據庫驅動一個網站。
您也可以考慮混合方法,如由萊斯大學的Connexions項目中使用:他們使用的Plone(和其他的東西在它的上方),從已在CNXML方言創建自己的數據庫顯示數據。
- 1. 數據庫或XML
- 2. XML數據庫或PostgreSQL
- 3. oracle XML到數據庫表
- 4. 數組或數據庫表?
- 5. xml或sql的小型android數據庫?
- 6. XML或數據庫? Asp.net網頁
- 7. 數據庫同步 - XML或JSON
- 8. 用於自動生成表單的XML或數據庫
- 9. 用於存儲設置的XML或數據庫表
- 10. Wordpress插件,XML文件或數據庫表..這兩個?
- 11. 數據庫或XML在WP7中表現不錯?
- 12. XML或CSV爲「表格數據」
- 13. Android Xml數據庫
- 14. XML與數據庫
- 15. 數據庫對XML
- 16. XML Oracle數據庫
- 17. 存儲巨大的數據;數據庫,XML或純文本?
- 18. ASP.NET和存儲動態數據 - XML或數據庫?
- 19. 將數據保存在XML或數據庫中會更好嗎?
- 20. 數據庫模式,1表或2表
- 21. 從數據庫表創建xml
- 22. 寫出數據庫表到XML
- 23. 將xml導入到oracle數據庫表
- 24. 爲圖表庫準備XML數據
- 25. 使用數據表將xml數據載入數據庫
- 26. Xml或Sqlite,何時刪除數據庫的Xml?
- 27. 數據庫表:數量或冗餘
- 28. 如何在xml或xslt或xpath中創建數據庫
- 29. MySQL刷新表 - 當前數據庫或每個數據庫?
- 30. 在java或android中使用數據庫表獲取表id的數據庫表
這一點不能強調,我之前回答了這樣的問題......但我找不到鏈接。有統計數字也有差異。 – 2008-10-21 13:52:27