亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 開發 > XML > 正文

基于關系型數據庫引擎的"XML"索引技術

2024-09-05 20:54:32
字體:
來源:轉載
供稿:網友

XML(可擴展標記語言)已成為Web應用中數據表示和數據交換的標準,隨著Internet的快速發展,尤其是電子商務,Web服務等應用的廣泛使用,XML類型的數據成為當前主流的數據形式。因此XML數據的管理技術尤其是XML數據查詢技術成為當前的研究熱點。

相比起關系型數據,XML有著各種各樣的優點,但有個最大的缺陷就是它的效率。因為關系型數據文件中,數據的字段名只需出現一次即可,而XML數據文件中,元素名將反復出現,這必須會影響到查詢的效率。為了盡可能的提高XML的查詢效率,需要為XML類型提供了索引功能。

萬維網聯盟于2007年1月23日將XPath2.0和XQuery1.0確定為推薦標準,結束了此前各種查詢語言群雄逐鹿的局面。 基于此標準, 除傳統廠商外,各科研機構紛紛提出了對XPath和XQuery的實現(文獻中提及的有十數種),其存儲模型不同,查詢算法各異,優化途徑也各有所長,在這樣的背景下,達夢數據庫公司根據自身發展戰略,也提出了自己的XML查詢引擎模型,目前,達夢的XML查詢引擎正在緊張開發中,而對XML數據建立有效的索引是影響XML數據查詢性能的重要因素。在深入分析當前已有的數據庫產品的索引技術基礎上為達夢XML查詢引擎設計一種較為合理的索引結構,以使該引擎能發揮較優性能。

XML索引技術簡介

目前,人們對XML的研究主要分為兩個方面。一個是對XML這種半結構化數據的存儲、查詢和管理的的原生數據庫,其中的數據和元數據完全采用XML結構表示,與其底層的數據存儲格式(如對象模型、關系模型等)無關。另一個是它與關系數據庫之間的相互轉換,利用關系數據庫的成熟技術對XML數據進行處理。由于后一個方向比較有現實意義,因此成了XML研究中的重點。

而除了存儲方案之外,索引技術也是決定一個數據庫系統最重要的因素之一。如果對XML文檔不構建索引結構,那么針對XML數據的任何查詢都很可能導致對整個文檔樹的遍歷,隨著XML數據集的增大,這種開銷是不可忍受的。故此,對XML索引技術的研究具有較高的理論和實用價值。

雖然傳統的索引技術經過長期的積累已經相對成熟,但是,這類索引技術針對的主要是根據值(而不是具有某種關系的模式)定位數據記錄的功能,不太關注數據記錄間的邏輯關系;而 XML 數據查詢的基本特征就是根據模式特征(正則路徑表達式形式描述的結構關系)的輸入提取符合該模式的數據,所以,XML 索引的主要內容就是設計適用于模式匹配的技術。

XML索引分類

基于路徑的XML索引

基于路徑的索引是以XML樹結構中節點的路徑信息為基礎,采取某種約簡方式,使得約簡后的樹結構只維護不同的路徑信息,而不會存在具有相同路徑的兩個節點。 已經提出的這類索引有:DataGuides索引、Index Fabric索引、XML數據的自適應路徑索引(Adaptive Path Index for XML Data, APEX )

Dataguides 索引是從根結點為起始的精練路徑的一種結構摘要。邊標簽串聯在一起形成的字符串路徑在 Dataguides 中只描述一次。Dataguides 減少了遍歷路徑查詢時所需的部分結點,它對從根部遍歷 XML文檔是有效的。但對于含有通配符的路徑查詢或對帶有XPath標準中定義的descendant-or-self軸的路徑查詢要進行多次的連接操作,查詢效率較低,并且存在數據冗余。

然后編寫關于這2個大字段的Java對象文件TestLob.java,分別定義類型為CLOB和BLOB屬性字段為String和byte[]類型,其中由于CLOB是處理大文本類型所以它對應了Java中的String類型,BLOB是處理一些以二進制流形勢存儲的沒有嚴格定義的大文件所以讓它使用byte[]類型,然后分別定義這2個屬性的Getter和Setter方法,相關代碼如下:

Dataguides 索引是從根結點為起始的精練路徑的一種結構摘要。邊標簽串聯在一起形成的字符串路徑在 Dataguides 中只描述一次。Dataguides 減少了遍歷路徑查詢時所需的部分結點,它對從根部遍歷 XML文檔是有效的。但對于含有通配符的路徑查詢或對帶有XPath標準中定義的descendant-or-self軸的路徑查詢要進行多次的連接操作,查詢效率較低,并且存在數據冗余。

Index Fabric是在Patricia Trie樹上發展而來的一種索引結構,它把到每個元素節點的每條標記路徑都用一個字符串編碼,再將這些編碼值插入到Patricia Trie樹中去,從而將按照路徑方式對XML數據的查詢轉化為對字符串的查詢。在查詢時先將查詢路徑編碼成字符串的形式,再在索引樹中進行查找。Index Fabric索引優點是存儲了XML數據的層次結構信息,統一處理了有模式和無模式信息情況下的XML數據的檢索,并且使對XML數據的查詢和更新所需要的時間與層次相關而不是與索引關鍵字的長度相關。Index Fabric索引的缺點在于丟失了元素節點間的結構關系,因為它只保留了有文本值的元素節點的信息。因此,與DataGuides索引類似,Index Fabric索引處理帶有XPath標準中定義的descendant-or-self軸的部分匹配查詢表達式效率不高

為此,APEX[14]引入了依賴于XML數據查詢分布的信息:將經常出現的XML查詢語句對應的標簽節點預先保存在一個哈希結構中。它的作用類似于Cache的功能:當有新的查詢要求處理時,首先在哈希表中搜索是否有滿足的節點集合。但它對于帶有元素值或屬性值的查詢表達式的處理效率較低。

基于節點的索引

基于節點的索引本質上即是將XML數據分解為數據單元的記錄集合,同時在記錄中保存該單元在XML數據中的位置信息。與基于路徑的索引不同,基于節點的索引打破了必須通過標簽路徑查找節點這一限制,將XML數據分解成規范形式的節點記錄。由于保存了節點的位置信息,而且能夠很好地結合到成熟的關系數據庫管理系統中,因此它是目前應用最廣泛的一種索引。

根據對位置信息的編碼方式不同,基于節點的索引一般可以分為一下幾類:

1. 基于前綴的索引

基于前綴的索引主要是根據Dewey[12]編碼生成的索引,文獻[13]的 ORDPATH 編碼采用的也是類似的方法,并給出了壓縮 ORDPATH的方法,該方法已應用于SQL Server 2005的索引組織中。


前綴編碼的基本思想是直接將一個節點的雙親節點的編碼作為該節點編碼的前綴,對于前綴編碼,要判斷一個節點v是否另一個節點u的后裔,只要判斷u的編碼是否v的編碼的前綴。前綴編碼索引的一個重要性質是它們的字典有序:以節點r為根的子樹中的任意一個節點u,它的前綴編碼c(u)大于(小于)它的左兄弟子樹(右兄弟子樹)中所有節點的前綴編碼。因此,基于前綴的索引不僅能夠有效地支持包含關系的運算,而且能夠有效地支持文檔位置關系的計算。

2. 基于區間編碼的索引

對于區間編碼索引,樹T中的每一個結點被賦予一個區間編碼[begin,end],滿足:一個結點的區間編碼包含它的后裔結點的區間編碼.也就是說,樹T中 的節點u是節點v的祖先,當且僅當start(u)

第一個區間編碼方案是Dietz編碼,樹T中的每一個結點被賦予一個具有先序遍歷序號和后序遍歷序號的二元組.由于樹T中的一個祖先結點u在先序遍歷(后序遍歷)中必然出現在它的后裔結點v之前(之后),因此, 節點u和v是祖先/后裔關系,當且僅當pre(u)

另一個區間編碼索引的典型例子是XISS索引,它為每個節點賦予一個數字對,其中order為擴展的前序編碼,size為節點的子孫的范圍。對一棵文檔樹中的任意節點X和Y,當且僅當order(x)

XISS索引通過將原始查詢語句分解為子表達式。然后分別針對這些子表達式實現查詢,最后對這些中間結果進行聯結獲得查詢結果集。從而能較好地支持含通配符的查詢語句。不過,它是對每一個中間結果進行聯結后得到最終查詢結果。雖然這樣一種方法的確能夠解決所有的通配符問題,可是,這種中間結果的聯結很有可能是非常耗時的,特別是對于長路徑的簡單表達式。

兩種索引機制的比較

基于路徑的索引主要基于節點合并的策略,通過節點等價、路徑等價等技術,得到比原始文檔小得多的索引結構,它的結構仍然是樹型的,所以在處理查詢時,基本上仍須遍歷整個索引樹才能得到結果。基于路徑的索引可以很好地支持簡單路徑表達式的查詢,但是對于正則路徑表達式,它效果不是很理想。

基于節點的索引通過編碼技術索引每一個節點,節點之間的結構關系通過編碼可以在常數時間內確定它可以很好地支持正則路徑表達式,但是對于長的路徑表達式,尤其是在查詢產生的中間結果很多的時候,節點索引的連接操作代價高昂。

基于路徑的索引和基于節點的索引各有優缺點,但可以優勢互補。目前在實際應用中,基于節點的索引應用更為廣泛,研究得也比較成熟,因此,達夢公司有關XML索引結構研究主要以基于節點的索引為主,并適當參考基于路徑的索引加以改進。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
黑人巨大精品欧美一区免费视频| 一区二区三区 在线观看视| 91久久精品日日躁夜夜躁国产| 日韩av手机在线看| 精品欧美国产一区二区三区| 亚洲社区在线观看| 日韩中文字幕欧美| 久久国产精品久久久久久久久久| 欧美日韩成人网| 亚洲国产三级网| 亚洲成人久久久久| 国产精品盗摄久久久| 亚洲自拍小视频免费观看| 亚洲高清久久久久久| 亚洲国产精品久久精品怡红院| 亚洲男人的天堂网站| 91网在线免费观看| 91麻豆国产语对白在线观看| 最新日韩中文字幕| 亚洲人成电影在线| 中文字幕精品久久久久| 97久久伊人激情网| 欧美黄色小视频| 国产午夜精品理论片a级探花| 高清一区二区三区四区五区| 免费97视频在线精品国自产拍| 国产在线视频2019最新视频| 国产91精品最新在线播放| 久久久久久久久久久av| 国产不卡av在线| 国产精品久久久久免费a∨| 91香蕉嫩草神马影院在线观看| 亚洲人成网站免费播放| 亚洲欧美日韩国产精品| 欧美精品手机在线| 日韩免费看的电影电视剧大全| 日韩欧美成人免费视频| 亚洲男人的天堂在线播放| 国产精国产精品| 精品久久久久久久中文字幕| 国产成+人+综合+亚洲欧美丁香花| 91久久久在线| 久久成人在线视频| 性亚洲最疯狂xxxx高清| 国产精品久久久久久久天堂| 91精品久久久久久久久久另类| 91高潮精品免费porn| 欧美区在线播放| 97香蕉久久超级碰碰高清版| 午夜精品理论片| 日韩精品免费在线观看| 亚洲欧美日韩另类| 在线观看国产精品日韩av| 91久久嫩草影院一区二区| 精品二区三区线观看| 欧美成人亚洲成人| 国产国语videosex另类| 欧美亚州一区二区三区| 成人精品福利视频| 1769国内精品视频在线播放| 亚洲欧美三级伦理| 久久久精品影院| 美乳少妇欧美精品| 亚洲色图综合网| 国产97色在线| 色悠久久久久综合先锋影音下载| 51色欧美片视频在线观看| 日韩电影大全免费观看2023年上| 久久99精品久久久久久琪琪| 性欧美在线看片a免费观看| 亚洲第一男人天堂| 欧美乱大交xxxxx| 国产精品羞羞答答| 国产欧美精品一区二区| 夜夜嗨av一区二区三区四区| 国模私拍视频一区| 国产欧美日韩专区发布| 精品国偷自产在线| 国产亚洲精品91在线| 国产精自产拍久久久久久蜜| 日韩成人黄色av| 国产99久久精品一区二区永久免费| 久久夜精品va视频免费观看| 伊人精品在线观看| 日本亚洲欧洲色α| 丝袜亚洲另类欧美重口| 亚洲网站在线看| 欧美在线免费视频| 91免费看视频.| 国产在线久久久| 夜夜嗨av一区二区三区免费区| 国产精品日韩在线| 久久久久久久久久国产精品| 欧美日韩国产精品一区二区不卡中文| 亚洲加勒比久久88色综合| 韩国三级电影久久久久久| 亚洲天堂精品在线| 国产日韩欧美在线观看| 91精品国产91久久久久福利| 国产午夜精品理论片a级探花| 在线日韩第一页| 日韩欧美在线第一页| 成人免费在线视频网站| 欧美一级成年大片在线观看| 国产女精品视频网站免费| 日韩欧美福利视频| 91成人天堂久久成人| 日本精品免费一区二区三区| 日本不卡免费高清视频| www国产精品视频| 精品久久久久久久久久久久久| 国产成人在线播放| 久久精品视频中文字幕| 成人黄色激情网| 亚洲人成欧美中文字幕| 91最新在线免费观看| 精品无人国产偷自产在线| 日韩中文字幕网| 久久久成人精品| 亚洲第一页自拍| 久久精品91久久香蕉加勒比| 国产成人精品综合| 精品国产精品自拍| 中文字幕亚洲一区二区三区五十路| 成人精品视频久久久久| 久久精品2019中文字幕| 欧美性猛交xxxx黑人猛交| 精品国产91久久久| 欧美成人精品一区二区| 欧美精品电影免费在线观看| 国产精品www网站| 亚洲第一精品久久忘忧草社区| 国产视频福利一区| 欧美另类xxx| 欧美精品videossex88| 9.1国产丝袜在线观看| 亚洲free嫩bbb| 色婷婷综合久久久久中文字幕1| 日韩电影免费观看在线观看| 亚洲剧情一区二区| 国产原创欧美精品| 久久国产精品影片| 88国产精品欧美一区二区三区| 一本色道久久88亚洲综合88| 久久这里有精品视频| 欧美性猛交丰臀xxxxx网站| 欧美成人第一页| 78m国产成人精品视频| 欧美性少妇18aaaa视频| 欧美成人手机在线| 久久久视频精品| 日韩欧美一区二区在线| 久久久免费观看视频| 精品偷拍各种wc美女嘘嘘| 中文字幕日韩精品在线| 青青草精品毛片| 91精品视频观看| 91嫩草在线视频| 97久久精品在线| 亚洲视频网站在线观看| 欧美日韩一区二区三区| 亚洲电影免费观看高清完整版| 91久久久久久久一区二区| 国产精品jvid在线观看蜜臀|