版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、OrientX3.0及其改進(jìn)之處XML小組大綱 OrientX3.0的體系結(jié)構(gòu) OrientX3.0的主要特征 OrientX3.0的查詢處理問題【系統(tǒng)的效率】 基于代數(shù)引擎的XQuery/Update實(shí)現(xiàn)問題 OrientX3.0需要改進(jìn)地方的總結(jié)體系結(jié)構(gòu)OrientX3.0的體系結(jié)構(gòu)圖大綱 OrientX3.0的體系結(jié)構(gòu) OrientX3.0的主要特征 OrientX3.0的查詢處理問題【系統(tǒng)的效率】 基于代數(shù)引擎的XQuery/Update實(shí)現(xiàn)問題 OrientX3.0需要改進(jìn)地方的總結(jié)OrientX V3.0的新特征 New architecture Support W3C XQuer
2、y/Update A set of programming API Usable index management Visual tools Application大綱 OrientX3.0的體系結(jié)構(gòu) OrientX3.0的主要特征 OrientX3.0的查詢處理問題【系統(tǒng)的效率】 基于代數(shù)引擎的XQuery/Update實(shí)現(xiàn)問題 OrientX3.0需要改進(jìn)地方的總結(jié)查詢處理策略 導(dǎo)航查詢處理 (OrientX2.0) 代數(shù)查詢處理 (OrientX2.5, OrientX3.0)基于導(dǎo)航的查詢處理 例子 找到價(jià)格最低的書Element ConstructorPath ExpressionF
3、LWR ExpressionConditional ExpressionBuilt-in-FunctionAttribute Constructor1.Step2.CondTreeNode3.Path4.ForVarBind5.LetVarBind6.FLWR7. EleConstructor8. AttrConstructor9. BuiltInFun10. IfThenElse11. Quanlify12. SetOpt13. SortBy目前有目前有13中操作符中操作符: 導(dǎo)航處理的操作符處理處理XQuery的流程的流程Parser and TranslatoroptimizerEval
4、uator EngineXQuery QueryInitial Query planoptimized Query plan查詢計(jì)劃示例查詢計(jì)劃示例bibbooktitlepublisherpriceyeartitlebookbookpublisherpriceyear。查詢計(jì)劃查詢計(jì)劃$doc查詢計(jì)劃的執(zhí)行示例查詢計(jì)劃的執(zhí)行示例文檔文檔bibbooktitlepublisherpriceyeartitlebookbookpublisherpriceyear。$doc$t查詢計(jì)劃的執(zhí)行示例查詢計(jì)劃的執(zhí)行示例文檔文檔查詢計(jì)劃查詢計(jì)劃bibbooktitlepublisherpriceyearti
5、tlebookbookpublisherpriceyear。$doc$t$p查詢計(jì)劃的執(zhí)行示例查詢計(jì)劃的執(zhí)行示例文檔文檔查詢計(jì)劃查詢計(jì)劃bibbooktitlepublisherpriceyeartitlebookbookpublisherpriceyear。$doc$t$pprice65.95TCP/IPIllustrated minprice查詢計(jì)劃的執(zhí)行示例查詢計(jì)劃的執(zhí)行示例文檔文檔查詢計(jì)劃查詢計(jì)劃bibbooktitlepublisherpriceyeartitlebookbookpublisherpriceyear。$doc$t$prepeatprice65.95TCP/IPIllu
6、strated minprice查詢計(jì)劃的執(zhí)行示例查詢計(jì)劃的執(zhí)行示例文檔文檔查詢計(jì)劃查詢計(jì)劃bibbooktitlepublisherpriceyeartitlebookbookpublisherpriceyear。$docpriceminpricepriceminprice results65.9570.05查詢計(jì)劃的執(zhí)行示例查詢計(jì)劃的執(zhí)行示例文檔文檔查詢計(jì)劃查詢計(jì)劃導(dǎo)航查詢引擎小結(jié) 優(yōu)點(diǎn)優(yōu)點(diǎn) 簡(jiǎn)單,直接,而且對(duì)簡(jiǎn)單查詢非常有效簡(jiǎn)單,直接,而且對(duì)簡(jiǎn)單查詢非常有效 符合符合XQuery的特點(diǎn):的特點(diǎn): 過程化查詢語(yǔ)言過程化查詢語(yǔ)言 任意的嵌套任意的嵌套 缺點(diǎn)缺點(diǎn) 對(duì)復(fù)雜的查詢需要遍歷文檔多遍對(duì)
7、復(fù)雜的查詢需要遍歷文檔多遍 訪問了非常多的無用結(jié)點(diǎn)訪問了非常多的無用結(jié)點(diǎn) 不利于查詢優(yōu)化不利于查詢優(yōu)化代數(shù)查詢引擎-OrientXA 一次一集合的查詢處理策略 XQuery處理的問題 數(shù)據(jù)抽取操作 選擇 投影 結(jié)果構(gòu)造操作 結(jié)構(gòu)構(gòu)造 數(shù)據(jù)處理操作 連接 消除重復(fù) 分組Q1:一個(gè)XQuery例子 for $b in doc(bib.xml)/bib/book let $a := $b/author where $b/publisher/text() = Addison-Wesley and $b/year 1991 return $b/author 導(dǎo)航處理construct a for $bi
8、b in doc (“bib.xml”)/bib dofor $b in $bib/book do let $a := $b/author for $publisher in $b/publisher do if $publisher/text() = Addison-Wesley then for $year in $b/year do if $year 1991 then construct a under construct a attribute year for with value $year append $authors content under end-if end-for
9、 /$year end-if end-for /$publisherend-for /$bend-for /$bib for $b in doc(bib.xml)/bib/book let $a := $b/author where $b/publisher/text() = Addison-Wesley and $b/year 1991 return $b/author OrientXA關(guān)于Pattern Tree 觀察: XQuery一個(gè)變量綁定對(duì)應(yīng)一個(gè)XPath Pattern Tree標(biāo)識(shí)和抽取查詢感興趣的結(jié)點(diǎn)() Pattern Tree實(shí)際上是XPath的樹狀表示() 類比關(guān)系(?
10、): Pattern Tree vs. 表定義 Instance Tree vs. 元組 Instance Tree集合 vs. 表Q1對(duì)應(yīng)的Pattern Tree和Algebra Tree for $b in doc(bib.xml)/bib/book let $a := $b/author where $b/publisher/text() = Addison-Wesley and $b/year 1991 return $b/author 強(qiáng)結(jié)點(diǎn)綁定弱結(jié)點(diǎn)綁定序列綁定或序列構(gòu)造 父子邊祖先后代邊元素屬性邊圖例:p: 綁定所有后代結(jié)點(diǎn)n: 新建結(jié)點(diǎn)c: 拷貝結(jié)點(diǎn)SPTCPT Source
11、 pattern tree 數(shù)據(jù)抽取的結(jié)果 Construct pattern tree 結(jié)點(diǎn)綁定 拷貝綁定 Predicates 靈活的代數(shù)處理問題1數(shù)據(jù)抽取效率 數(shù)據(jù)抽取的方法1有: Navigation:對(duì)文檔樹進(jìn)行遍歷,找到滿足pattern tree 的實(shí)例樹;效率低下。 Structure Join:利用對(duì)XML 數(shù)據(jù)的編碼和Tag Index,快速地找到滿足祖先后代關(guān)系的結(jié)點(diǎn)。 Holistic Twig Join:整體求解1 孟小峰,羅道鋒,蔣瑜,王宇,OreintXA:一種有效的XQuery查詢代數(shù),軟件學(xué)報(bào),卷15(11),1648-1660,2004,11 OrientX
12、采用策略采用策略問題1 V3.0測(cè)試報(bào)告查詢效率低查詢效率低問題1分析數(shù)據(jù)抽取:數(shù)據(jù)抽?。涸L問磁盤的操作訪問磁盤的操作結(jié)果構(gòu)造:結(jié)果構(gòu)造:內(nèi)存中的中間結(jié)果內(nèi)存中的中間結(jié)果結(jié)果構(gòu)造:結(jié)果構(gòu)造:內(nèi)存中的中間結(jié)果內(nèi)存中的中間結(jié)果 for $b in doc(bib.xml)/bib/book let $a := $b/author where $b/publisher/text() = Addison-Wesley and $b/year 1991 return $b/author 數(shù)據(jù)抽取的效率很大數(shù)據(jù)抽取的效率很大程度上決定了代數(shù)系程度上決定了代數(shù)系統(tǒng)的效率統(tǒng)的效率問題1分析 (2) Navig
13、ation處理尚未利用任何索引 for $b in doc(bib.xml)/bib/book let $a := $b/author where $b/publisher/text() = Addison-Wesley and $b/year 1991 return $b/author 問題1的解決辦法 物理實(shí)現(xiàn)采用Twig查詢處理方法 建立索引 Tag Index Path Index Sequence Index 利用TwigStack查詢處理方法 Tag Index問題1的解決辦法(2) 索引建立 在DEB存儲(chǔ)的文檔導(dǎo)入時(shí)創(chuàng)建索引 代碼修改集中在DEB方式的四個(gè)SAX接口中 start
14、Document, endDocument startElement, endElement 查詢處理 代數(shù)操作的流水線操作 TwigStack操作的輸出為Sequence (滿足一次一集合操作) 數(shù)據(jù)抽取操作 添加CTwigPatternMatching類大綱 OrientX3.0的體系結(jié)構(gòu) OrientX3.0的主要特征 OrientX3.0的查詢處理問題【系統(tǒng)的效率】 基于代數(shù)引擎的XQuery/Update實(shí)現(xiàn)問題 OrientX3.0需要改進(jìn)地方的總結(jié)XQuery/Update XQuery1.1包括 XQuery/Update XPath 2.0 Full-Text Search
15、XQuery 1.0XQuery/Update (2) Insert, Delete, Replace, Rename, Transform表達(dá)式1.Insert 語(yǔ)句 2.Delete語(yǔ)句Insert 50 after /book/author Delete /bookyear = 1994/author XQuery/Update (3)3.Rename(修改結(jié)點(diǎn)名字), Replace(替換結(jié)點(diǎn)或值)4.Transform查詢copy $a := /bookmodify delete $a/authorreturn $a 執(zhí)行前執(zhí)行后查詢結(jié)果Transform查詢的應(yīng)用1. 修改查詢結(jié)果
16、修改查詢結(jié)果 查詢: book的信息,但不返回 price信息2. 安全視圖安全視圖3. 更新虛擬視圖更新虛擬視圖copy $a := /book modify delete $a/price return $a 訪問控制訪問控制: 用戶A不能訪問author 為”Rose” 的book結(jié)點(diǎn)的price用戶A提交查詢: /book合成Transform查詢: copy $a := /book modify delete $aauthor = “Rose”/price return $aXQuery代數(shù)處理 類似關(guān)系代數(shù)一樣,提出了一系列的操作符.FOR $b in /book/priceFOR
17、 $y in /book/yearWHERE $b/price 1990RETURN $bSelectFilter $2 1990 Construct $2XQuery/Update代數(shù)處理copy $cb := /bookmodify delete $cb/pricereturn let $nb := $cb where $nb/title = “C+” return $nbConstruct $nbFilter $nb/title = “C+” 現(xiàn)有的XML代數(shù)能否表達(dá)XQuery/Update?擴(kuò)展擴(kuò)展現(xiàn)有XML代數(shù)(基于OrientXA):提出新操作符:1. Copy (拷貝)2. I
18、nsert (插入)3. Delete (刪除)4. Replace (替換)5. Rename (重命名)Select book $1Copy $1Delete($2)Filter $nb/title = “C+” Construct $nb問題2 如何實(shí)現(xiàn)Transform查詢? 查詢編譯 Lex、Yacc 查詢處理 修改XML代數(shù)規(guī)則 添加Transform操作符問題2分析 Transform查詢語(yǔ)句分析 Copy Modify Insert Replace Delete FLWR語(yǔ)句copy $cb := /bookmodify delete $cb/pricereturn let $nb := $cb where $nb/title = “C+” return $nb問題2分析 (2) 代數(shù)操
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 《社區(qū)足球賽方案》課件
- 《汽車客運(yùn)站調(diào)研》課件
- 2024年黑龍江林業(yè)職業(yè)技術(shù)學(xué)院?jiǎn)握新殬I(yè)技能測(cè)試題庫(kù)完整答案
- 單位管理制度集合大全【人事管理篇】
- 《綜合分析觀點(diǎn)類》課件
- 單位管理制度匯編大全【人員管理】
- 2024的前臺(tái)工作計(jì)劃(35篇)
- 單位管理制度范文大合集【職工管理篇】
- 單位管理制度范例匯編【人員管理篇】十篇
- 《禽流感的預(yù)防措施》課件
- 建筑起重司索信號(hào)工共40頁(yè)P(yáng)PT課件
- 羅西尼亞那第二號(hào),Rossiniana No.2;朱利亞尼,Mauro Giuliani(古典吉他譜)
- 小學(xué)英語(yǔ)單詞大全(含中文翻譯)
- 經(jīng)顱多普勒超聲(TCD)
- 激勵(lì)約束考核實(shí)施細(xì)則
- 抽獎(jiǎng)券模板(可修改)
- 高壓蒸汽滅菌效果監(jiān)測(cè)記錄簿表(完整版)
- 編織密度自動(dòng)計(jì)算
- 硝酸及液體硝酸銨生產(chǎn)行業(yè)風(fēng)險(xiǎn)分級(jí)管控體系實(shí)施指南
- 瑤醫(yī)目診圖-望面診病圖解-目診
- 染色體標(biāo)本的制作及組型觀察
評(píng)論
0/150
提交評(píng)論