170 likes | 271 Views
Efficient Compression and Querying of XML Repositories. Ramez Alkhatib University of Konstanz Box D 188 78457 Konstanz, Germany Ramez.Alkhatib@uni-konstanz.de. Marc H. Scholl University of Konstanz Box D 188 78457 Konstanz, Germany Marc.Scholl@uni-konstanz.de. 指導老師:陳志達 報告者:劉芸如. 目錄. 介紹
E N D
Efficient Compression and Querying of XML Repositories Ramez Alkhatib University of Konstanz Box D 188 78457 Konstanz, Germany Ramez.Alkhatib@uni-konstanz.de Marc H. Scholl University of Konstanz Box D 188 78457 Konstanz, Germany Marc.Scholl@uni-konstanz.de 指導老師:陳志達 報告者:劉芸如
目錄 • 介紹 • 相關工作 • SCQX Approach • 實現結果 • 結論
1. 介紹 • 最常用的查詢語言是XPath 和 XQuery • 主要是健全儲存和高效率查詢處理 • 方法分成: • 專注於降低XML儲存花費(減少XML文件資訊部分重複,透過XML樹提升查詢處理速度) • 根據編碼方法確定XML元素之間的關係
2. 相關工作 • 介紹XPath • XPath即為XML路徑語言(XML Path Language),它是一種用來確定XML文檔中某部分位置的語言。 • XPath基於XML的樹狀結構,提供在資料結構樹中找尋節點的能力。起初 XPath 的提出的初衷是將其作為一個通用的、介於XPointer與XSL間的語法模型。但是 XPath 很快的被開發者採用來當作小型查詢語言。
MonetDB是一個內存數據庫原型系統,它重於支援查詢密集型應用,如數據挖掘、即時決策支援等。它是從主存儲器觀點開展來的數據管理系統,使用一個完整分解的存儲模組,自動的標題管理,數據類型和搜索加速器的可延伸性,以及SQL和XML前台。MonetDB是一個內存數據庫原型系統,它重於支援查詢密集型應用,如數據挖掘、即時決策支援等。它是從主存儲器觀點開展來的數據管理系統,使用一個完整分解的存儲模組,自動的標題管理,數據類型和搜索加速器的可延伸性,以及SQL和XML前台。 • 功能和特點: • 支援SQL’99、SQL’03核心標準 • 支援持久儲存,觸發器 • 用戶可用C編寫所需功能 • 支援OPEN-GIS標準 • 支援SQL/XML大部分標準 • 基於內存文件存儲 • 可對數據庫進行升級 • 支持32位和64位平台 • 能對查詢進行優化
3. SCQX Approach • 主要是壓縮XML樹的結構 • Paper提出的貢獻: • 有效的演算法壓縮結構的XML文件 • 在XML文件結構中,使用標籤方法可快速透過XML標籤進行壓縮儲存 • 壓縮的XML是一個完整的儲存結構,包括存取支援結構,確保一個快速性能 • SCQX提供資料數值是唯一被存取需求 • SCQX直接壓縮方式來處理查詢
3.1 The Level-Order Numbering 方法 • 編號方法是允許快速識別結構與節點之間的關係。要達到這個目的,每個節點在樹公文標有一個唯一的標識符號。 • 在同一個公文可計算出兩個節點之間關係
Figure 1. XML document structure with level-order ids (shown inside nodes)
3.2 壓縮的原理 • 大多數資料庫查詢往往把重點放在結構方面,只是偶爾使用的符號標示內容。因此,壓縮結構的數據分開,有利於加速獲得的數據和結構,使盡可能少佔用盡可能存儲。 • 使用SCQX來進行XML壓縮(the input XML is first scanned using)例如:一個SAX解析器 • XML標記使用我們的壓縮演算法,基本上是利用了重複類似的兄弟節點的XML結構。(類似:元素是相同tag的名稱,在兄弟姐妹節點會有重複的編號) • 每個節點在壓縮的結構顯是一組節點在未壓縮樹
Figure 2. Compressed structure with unique numbers of elements and cardinality counters (in parentheses).
3.3 儲存模組 • 儲存XML文件是很重要的腳色,因為要有效率快速查詢處理要依靠選擇性儲存結構 • 儲存結構是表現的XML文件(儲存資料的值和壓縮結構訊息分開) • 使用level-order numbering,分配給每一個XML元素節點ui,給結構T獨特的整數idU(ui) ,在一個XML結構設P是所有路徑設置,每個路徑 順序為 路徑的長度,節點u0是root
3.4 查詢評估 • 用order來評估XPath查詢,(與所有的XPath軸)節點測試和基本的文字成述(與內容,數字和位置matches), XPath語法分析工具 • 利用演算法或位置matches簡化XPath查詢 • 完整的路徑或簡單的查詢,如“/”或“/ /” 容易完成一個Path目錄 • 例1:/BIB/BOOK/SECTION/TITLE,它需要在P路徑目錄下比較路徑,如果找到會回傳PathID和一個ID值結構表當作pathID的參考
路徑的表達(例2://SECTION/TITLE,類似例1它需要字尾match,因為SECTION/TITLE在路徑目錄,再次生產pathIDs和一組ID值的結構表,作為pathIDs參考)路徑的表達(例2://SECTION/TITLE,類似例1它需要字尾match,因為SECTION/TITLE在路徑目錄,再次生產pathIDs和一組ID值的結構表,作為pathIDs參考) • 例3:/BOOK/SECTION[TITLE = ”DBMSs”]一開始先參考pathID查ID值,發現ID值內容是”DBMSs”在使用matching值表,產生一組ID值,最後獲得”SECTION”回傳回去
4. 實驗結果 • The XML documents used in our experiment are listed below: • Shakespeare: a set of the plays of William Shakespeare marked up in XML for electronic publication with 7.9 MB size. • XMark: an XML file from the XMark Benchmark [10], the files with the sizes of 11 MB and 112 MB are used. • SWISS-PROT: is a protein sequence database with 110 MB size.
5. 結論 • 本論文提出SCQX,這種方法有效的查詢處理壓縮的XML結構 • 實驗結果成功的提升查詢效果,並產生一個更小緊湊的XML結構,而不會丟失任何信息