內容:
XML通常有幾種闡釋的語法,例如:Schema、Metadata、Web
services、Modeling,而資料商店則包含XML
database、XML-relational
conversion、Native
XML DB。而資料之所以用XML的格式儲存,主要有幾個好處:平台獨立、易於做資料交換,同時具彈性。而XML資料庫也具備快速復原的特性,主因來自於索引編輯(indexing)的功能強大。
在XML索引的種類當中,又分成幾種導向:(1)資料庫導向方式(database-oriented
approach)-儲存在relational
DB中,且以XML
rendered XSL style sheet format呈現,還具備XML-relational的轉換特性。(2)資料復原導向方式(information
retrieval-oriented approach)-在這個方式中XML的資料會被當成文件(text
document)的格式處理,同時將索引建立在標籤(tags)上。(3)混和方式(hybrid
approach)-結合了多種技術,並且建立XPath的索引。
事實上XML的文件主要是以樹狀結構(tree
structure)來呈現,換言之,從XML中設法取回資料,就必須依循樹狀搜尋(tree
search)。而XML的查詢大多涉及一些沿著路徑搜尋的方式,此時索引必須扮演辨識父-子節點關係(ancestor-descendent
relationships)的角色。
XML索引(indexing)的方式:Value
index、Type
index、Link
index、Path
index是常見的幾種,而這些索引通常應用到由大而小(top-down)、由小而大(bottom-up),及混合的查詢計畫。其他還有ToXin、3-D
bitmap、Inverted、Index
Fabric都是具不同特性的索引方式,演講中對於2001年Li
and Moon所提出的節點編碼(node encoding)更是多所著墨。
而排序結構(Numbering
Scheme)則是另一個重要議題。由於樹狀節點都會以數字編碼,因此這樣的架構可以幫助使用者快速地辨識在XML資料中,所有成對物件的節點關係。其中特別針對Dietz’s
numbering algorithm、Li and Moon’s
numbering scheme及Proposed Numbering Scheme做了詳盡的解說,並分析其中優點及應用限制。像是Li
and Moon的方式便是保留了Dietz的優點,卻又解除其限制,讓節點中間得以有空間插入其他節點,改善了原先的排序結構。
胡教授以圖文的方式詳細說明索引及查詢結構(Indexing
& Querying Structure),藉由圖形的說明,清楚了解資料與節點的分佈、流向,甚至是原始程式碼。同時胡教授也分享了目前正在進行的實驗。實驗小組嘗試用大規模的XML資料檔案,從2.8kb到2mb,在SunOS
5.9的Sun-Blade-100 (Sun Ultrasparc-II)工作站上跑。實驗顯示run-time有相當顯著的表現。
接下來的MRI(Multi-Resolution
Index)是演講另一個重頭戲。胡教授除了詳細說明該索引方式的內涵之外,同樣也以清楚的圖文顯示MRI結構中,資料的分佈、路徑,及存取方式。它讓新的XML資料以一種叫做「價值表」(Value
Tables)的方式儲存、呈現。而實驗結果同樣顯示,MRI的方式除了在Nesting
Level的1跟4較不理想外,反應時間都比Jakarta及Saxon來得快速許多。
最後胡教授再次強調,Indexing
XML data與rational data是相當不同的,基本上他是以樹狀結構來組織資料。而樹狀節點架構則是加速父子節點的辨別以支援XPaths的查詢,同時得以彈性地插入節點以處理XML資料的更新。然而,我們仍舊需要更多相關的研究,來了解並促進不同的XML
indexing方式的run-time績效。 |