熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> .NET編程 >> 正文

如何用XML實現高效管理數據

2013-11-13 10:06:16  來源: .NET編程 

  XML數據是Web上數據交換和表達的標准形式和關系數據庫相比XML數據可以表達具有復雜結構的數據比如樹結構的數據正因為此在信息集成系統中XML數據經常被用作信息轉換的標准

  管理三大領域數據

  基於XML數據的特點XML數據的高效管理通常有著以下的應用

  復雜數據的管理

  XML可以有效地表達復雜的數據這些復雜的數據雖然利用關系數據庫也可以進行管理但是這樣會帶來大量的冗余比如說文章和作者的信息如果利用關系數據庫需要分別用關系表達文章和作者的信息以及這兩者之間的關系這樣的表達在文章和作者關系的關系中分別需要保存文章和作者對應的ID如果僅僅為了表達文章和作者之間的關系這個ID是冗余信息在XML數據中對象之間的關系可以直接用嵌套或者IDIDREF的指向來表達此外XML數據上的查詢可以表達更加復雜的語義比如XPath可以表達比SQL更為復雜的語義因此利用XML對復雜數據進行管理是一項有前途的應用

  互聯網中數據的管理

  互聯網上的數據與傳統的事務數據庫與數據倉庫都不同其特點可以表現為模式不明顯經常有缺失信息對象結構比較復雜因此在和互聯網相關的應用特別是對從互聯網采集和獲取的信息進行管理的時候如果使用傳統的關系數據庫存在著產生過多的關系關系中存在大量的空值等問題而XML可以用來表達半結構數據對模式不明顯存在缺失信息和結構復雜的數據可以非常好的表達特別在許多web系統中XML已經是數據交換和表達的標准形式因此XML數據的高效管理在互聯網的系統中存在著重要的應用

  信息集成中的數據管理

  現代信息集成系統超越了傳統的聯邦數據庫和數據集成系統需要集成多種多樣的數據源包括關系數據庫對象關系數據庫以及網頁和文本形式存在的數據對於這樣的數據進行集成XML這樣既可以表達結構數據也可以表達半結構數據的形式成為首選 而在信息集成系統中為了提高系統的效率需要建立一個cache把一部分數據放到本地在基於XML的信息集成系統中這個cache就是一個XML數據管理系統因此XML數據的管理在信息集成系統中也有著重要的應用

  開發難點解決之道

  在實際的XML數據庫以及基於XML的信息集成系統的開發過程中筆者遇到了一些技術難點在解決這些難點的過程中有一些經驗是值得借鑒的參考的

  關系數據庫中復雜查詢的優化

  在基於關系數據庫的XML數據管理系統中在沒有建立索引的情況下系統的性能非常低為了提高系統的性能我們在編碼上建立了索引經過分析由於在系統中最常做的操作是ax by的join操作最好的選擇是建立二維索引由於我們的後端數據庫沒有對二維索引的支持我們選擇了在x和y屬性上分別建立B+樹的方法使得系統性能得到了提高此外我們發現在對嵌套查詢進行翻譯的過程中如果嵌套查詢的結果可能過大對嵌套查詢的結果建立臨時表可以提高系統的性能

  經驗總結對於一個數據庫應用需要對其workload進行分析根據workload建立索引對於執行效率很慢的查詢或查詢集合可以通過分析查詢計劃找出系統的瓶頸進行處理

  復雜數據庫系統的調試

  在調試XML數據的管理系統中多次出現了小規模數據執行准確效率很高而大規模數據執行錯誤或執行效率很低的情況對於這種情況我們采取了定位錯誤猜測錯誤 繼而加以解決的策略也就是首先確定出現錯誤的操作使得錯誤的出現具有可重復性然後通過逐步刪減數據確定數據出現在哪些數據上這樣就使得調試設計的操作和數據的規模大大減小了然後根據經驗對錯誤進行猜測逐步排除錯誤

  經驗總結對於數據規模大操作復雜的數據庫系統的調試首要任務是讓錯誤可以重現然後把次要因素逐步排除最後發現問題的所在

  復雜數據庫系統的測試

  由於系統需要處理各種各樣的XML上的查詢為了確保系統的健壯性需要選取多種具有代表性的查詢對系統進行測試為了選取這樣的查詢我們考察了XML上影響查詢的不同參數包括查詢的長度查詢中包含的關系種類查詢的選擇性和查詢中約束條件的選擇性根據這些參數我們分別選擇有代表性的查詢對系統進行測試

  經驗總結對數據庫系統的測試集合的選擇必須考慮到可能查詢的多種因素在數據庫系統的設計和測試過程中對數據庫系統可能用於處理的查詢集合需要有深入的了解


From:http://tw.wingwit.com/Article/program/net/201311/12558.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.