Presentation is loading. Please wait.

Presentation is loading. Please wait.

Min LuTIMBER: A Native XML DB1 TIMBER: A Native XML Database Author: H.V. Jagadish, etc. Presenter: Min Lu Date: Apr 5, 2005.

Similar presentations


Presentation on theme: "Min LuTIMBER: A Native XML DB1 TIMBER: A Native XML Database Author: H.V. Jagadish, etc. Presenter: Min Lu Date: Apr 5, 2005."— Presentation transcript:

1 Min LuTIMBER: A Native XML DB1 TIMBER: A Native XML Database Author: H.V. Jagadish, etc. Presenter: Min Lu Date: Apr 5, 2005

2 Min LuTIMBER: A Native XML DB2 Introduction Growing XML – XML repository New Approach – Native XML DB TIMBER: T ree-structured native XML database I mplemented at the University of M ichigan by B right E nergetic R esearchers

3 Min LuTIMBER: A Native XML DB3 Topics of Discussion  Motivation TIMBER Architecture Tree Algebra (TAX) Query Optimization Conclusion

4 Min LuTIMBER: A Native XML DB4 Motivation

5 Min LuTIMBER: A Native XML DB5 Motivation XML Characteristics * Tree structured - elements can be structurally related and these relationships are meaningful * Flexibility Map XML to Relational DB * Unnormalized relational representation * Or a large number of tables

6 Min LuTIMBER: A Native XML DB6 Motivation Native XML DB Tamino - a commercial one Natix - a native XML data management system, designed for storing and processing XML data. Timber – on “Shore” storage manager.

7 Min LuTIMBER: A Native XML DB7 Topics of Discussion Motivation  TIMBER Architecture Tree Algebra (TAX) Query Optimization Conclusion

8 Min LuTIMBER: A Native XML DB8 TIMBER Architecture (Shore) Shore : Disk memory management Buffering Concurrency control

9 Min LuTIMBER: A Native XML DB9 TIMBER Architecture – Data Flow Parse tree (Shore) Internal representation Interface One node at a time Interface

10 Min LuTIMBER: A Native XML DB10 TIMBER Architecture – Query Flow Operator tree (Shore) Call

11 Min LuTIMBER: A Native XML DB11 Nodes in TIMBER One node for each element All attributes clubbed into one node Content of element pulled into a child node Processing instruction, comments are simply ignored

12 Min LuTIMBER: A Native XML DB12 Node Labels The determination of PC, AD relationships is a frequent operation Label each node with a triple Start, end, level: (S, E, L)

13 Min LuTIMBER: A Native XML DB13 Triple Labels for AD & PC AD: (S1, E1, L1) - (S2, E2, L2) S1 E2 ex. (1.0, 9.0, 1) – (3.0, 6.0, 5) PC: (S1, E1, L1) - (S2, E2, L2) S1 E2 & L1=L2-1 ex. (1.0, 9.0, 1) – (2.0, 8.0, 2) Descendant intervalAncestor interval

14 Min LuTIMBER: A Native XML DB14 Triple Label Benefits Updates: no re-labeling Use Double value to leave gaps for new nodes Serves as a node identifier Store nodes by the start labels to cluster their sub-elements together with them

15 Min LuTIMBER: A Native XML DB15 Topics of Discussion Motivation TIMBER Architecture  Tree Algebra (TAX) Query Optimization Conclusion

16 Min LuTIMBER: A Native XML DB16 Tree Algebra (TAX) Set-at-a-time for efficiency Bulk algebra: input one or more sets of trees and output a set of trees Pattern tree: the portion of interest Witness tree: bears witness to the success of the pattern match on the input tree

17 Min LuTIMBER: A Native XML DB17 Pattern Tree & Witness Tree A B C

18 Min LuTIMBER: A Native XML DB18 Operators in TAX Algebra Operations developed: Selection, Projection, Product, Set union, Set difference, Renaming, Reordering, Grouping The core of XQuery can be parsed to TAX operators

19 Min LuTIMBER: A Native XML DB19 Projection Operator in TAX Input C: collection of trees Parameter P: pattern tree Parameter PL: projection list (the info to keep in the output)

20 Min LuTIMBER: A Native XML DB20 Topics of Discussion Motivation TIMBER Architecture Tree Algebra (TAX)  Query Optimization Conclusion

21 Min LuTIMBER: A Native XML DB21 Query Optimization Consider the join between faculty node and secretary node first, then join the result with RA node. Join faculty node with RA node first, then, join the result with secretary node.

22 Min LuTIMBER: A Native XML DB22 Query Optimizer Query optimizer enumerates all evaluation plans, estimate their costs, then choose the optimal one. An algorithm FP_Optimization for finding the best evaluation plan.

23 Min LuTIMBER: A Native XML DB23 Case Study for Query Optimization Consider the query against the DB “mBench 0.1x data set” with about 130,000 nodes A B D F C E G A B DF CEG

24 Min LuTIMBER: A Native XML DB24 Query Optimization Five Alternative Query Plans with different orders and combination of operators.

25 Min LuTIMBER: A Native XML DB25 Performance Study

26 Min LuTIMBER: A Native XML DB26 Topics of Discussion Motivation TIMBER Architecture Tree Algebra (TAX) Query Optimization  Conclusion

27 Min LuTIMBER: A Native XML DB27 Conclusion A comprehensive set-at-a-time query processing ability in a native XML store, with all the standard components of relational query processing New access methods have been developed to evaluate queries from XML New cost estimation and query optimization techniques have been developed.

28 Min LuTIMBER: A Native XML DB28 Work to be Done Currently all processing instructions, comments, and such are simply ignored. - An extra child node of the element node with all such data needs to be created. TIMBER was developed when XQuery didn’t support updates. - 11th Feb 2005: First Public Working Draft of the XQuery Update Facility Requirements; - A parser has to be implemented to support updates. During an extremely localized sequence of inserts, the Start End labels become an issue.

29 Min LuTIMBER: A Native XML DB29 Questions? Thank you!


Download ppt "Min LuTIMBER: A Native XML DB1 TIMBER: A Native XML Database Author: H.V. Jagadish, etc. Presenter: Min Lu Date: Apr 5, 2005."

Similar presentations


Ads by Google