-
1 # K星博士
-
2 # 三石生活資訊
主要是看你的網站日流量有多大,小的話還能夠解決,大了就夠嗆。xml檔案儲存的資料有限,而資料庫儲存的跟多一些。還有xml不方便資料的維護,而資料庫方便一些,還有就是資料庫裡面,資料能夠實時備份等等,好多功能xml都不能夠實現。比較如果xml和資料庫差別不大,應該還是有人會使用,但是市面上沒有那個使用xml來儲存資料的。
-
3 # 網路圈
大家首先要明白,在計算機世界裡,所有的“資料”並不是物理存在的。計算機只能理解0和1,而我們日常看見的各類檔案、圖片等只是資料的一種表現形式而己。
雖說計算機裡的資料並不是物理存在的,但如果資料無法儲存下來那計算機也就沒有存在的價值,所以為了將資料落地,計算機系統可以將資料以某種特定的形式進行落地儲存,便於後期檢視和操作資料。
對於網站而言,只要不是純靜態網頁,基本上都會將一些需要持久化儲存的資料進行落地,落地方式有很多,比如說:
將資料寫入到檔案(txt文件、xml文件、其它自定義格式的文件等)中;
將資料寫入到資料庫中;
將資料寫入到記憶體中等。
XML檔案和資料庫都可以作為資料落地儲存方案如果網站需要儲存的資料量極少,我們可以將資料以XML結構儲存到檔案中;如果網站後期資料量比較大,那就需要將資料存入到資料庫中。
對於網站而言,資料存放在哪裡並不重要,只要能保證資料“存得進去、取得出來”即可。
XML檔案和資料庫的定位不同1、XML檔案只適合簡單、輕量的資料儲存
儘管XML檔案中包含了資料,但XML檔案不是資料庫!
XML檔案它具有結構性、自我描述性,它極其簡單,只適合儲存小量的簡單資料。
2、資料庫是專業的資料儲存和查詢技術
資料庫不單單提供了資料儲存能力,還提供了豐富的資料查詢分析能力,這點是XML比不上的。
將XML檔案當資料庫使用會存在很多問題如果硬將XML檔案當資料庫來使用會存在很多問題,主要有以下幾點:
1、無法高效的透過條件查詢進行資料篩選;
2、資料載入及解析速度慢;
3、不具備擴充套件性;
4、資料冗餘情況嚴重,無法最佳化資料。
-
4 # EmacserVimer
實話實說,個人接觸到使用Xml檔案方式來儲存資料的場景少之又少。除去求學期間根據課堂要求做靜態網站時用於儲存一些展示性資料,還有就是在WPF開發中儲存一些常用但又不經常變化的離線資料。反而常使用Xml來做配置檔案(例如SpringMvc、MyBatis和LogBack)網路資料傳輸和互動標準(例如WebService)、工作流設計(例如Activiti6)等情況較為常見。
Xml用於單裝置資料儲存的情況還說得過去,例如離線資料同步可以放在Xml資料檔案中。在傳統行業電商平臺的規格,材質,產區等屬性相對固定,Xml檔案能很好勝任。再比如做一個內部使用的抽獎程式,將潛在使用者群體以Xml方式儲存也是不錯的選擇吧。所以Xml檔案充當小型離線資料庫還行。
而資料庫的範圍就比較寬泛,大致可以分為關係型資料庫和非關係型資料庫兩大類。
關係型資料庫以Oracle和MySql最為流行,學過程式設計的朋友應該耳熟能詳,也是職場面試經久不衰的考察重點。
而NoSql算是後起之秀。在業務繁多複雜的當下,一些場景下關係型資料庫應付起來相當吃力,有著更為複雜分類的非關係型資料庫孕育而生。NoSql在搜尋引擎(ElasticSearch)、鍵值(redis)、面向文件(Mongodb)和列儲存(Hbase)等方面都能做到得心應手。這些就讓其有著更強的業務針對性,相比傳統關係型資料庫有著質的提升。下面簡單列舉幾個應用場景。
Redis可用於計數、分散式鎖實現、單點登入、限流和快取資料等;
在複雜頁面的資料不便以表資料結構儲存時,使用Mongodb整頁儲存方便又簡單;
Elasticsearch就是以空間換時間典型代表,在做搜尋引擎和日誌記錄(ELK)等方面有很大優勢;
Hbase不必再像關係型資料庫那樣以行為儲存單元,而是以列為基準,非常便於資料結構拓展。
當下流行徽服務和各種解耦,連關係型資料庫都不再設計外來鍵關係,非關係型資料庫大行其道,Xml檔案用來儲存資料顯然已經不合時宜,當然也不能否認關係型資料庫的地位和Xml的作用。重要資料或某些行業的特殊性還是要以關係型資料庫為根基,畢竟事務、穩定性、安全性和技術恢復支援等方面需要考慮的重點。
-
5 # 張十八
在網站程式中,檔案一般用來儲存不需要查詢的、不經常變的資料,例如:配置資訊。
而資料庫是web2.0的標誌,是動態網站的靈魂,沒有資料庫的網站就跟從文明世界退回到原始時代一樣。
-
6 # 快樂加倍加倍
業餘解讀:xml的用法 主要的不是 資料庫的對應結構,它可以非對稱的,可以將不同的結構整到一個xml檔案中, 方便不同程式的 資料交換. 當然這個要提前約定 資料的名稱 等.
用xml做資料庫 不方便.
-
7 # 直男君Richard
原理本質上就不班門弄斧了,就從應用開發(比如做網站)上說。
1)資料的型別
你不可能把啥都放 xml 中的,不然各大廠商資料庫的存在是為了啥。
都放在 xml 中,資料量龐大時,xml 檔案本身讀取怎麼最佳化,索引又要怎麼實現..
所以一般 xml 都是放一些配置資訊,不會真正做資料持久化儲存。
也就是 xml 能儲存,資料庫能儲存,反之不一定適合。
2)不同的效果
說個具體的例子,比如想要儲存配置,這資料不會很大,所以 xml 和資料庫都可以。配置資訊一般分兩種,軟體本身執行配置(開發的框架需要)和執行之後的控制配置(主題配置、併發量控制等)。
如果是軟體本身的執行配置,一次釋出中間就不會改變,所以適合用 xml 儲存,語義化的標籤對以及解析支援較成熟。
如果是執行後的配置,適合資料庫配置,這樣就可以實現配置外接話,透過連線資料庫就可以根據需要控制軟體的執行情況。
-
8 # 資料指揮
xml是文件,建立之後不好修改。
資料庫存在的那天就是為了修改和檢索的。
xml文件針對微博,文件等這些不要求實時同步的需求還是蠻好的,因為不需要資料庫那種複雜笨重的守護程序來保持同步等情況。
而且那些需要關係型的場景,那資料庫就是不二之選了!
看你的需求而取捨二者。
再就是當下很少人使用xml了,基本都轉入json。
回覆列表
也沒有那麼玄乎。
簡單的來講xml, 能夠儲存的資料量很小。而sql儲存的資料量會比較大。
從操作上面來說,sql的查詢,過濾排序,都要比xml方便的多。
如果網站的資料量很小,確實是不需要使用sql的。
sql使用的資料庫管理系統本身就需要安裝,佔用磁碟空間和計算機資源都比較多。
當然從概念上面來講,sql屬於關係型資料庫,而xml屬於一個文字檔案。