1 IVOX I ncremental V iew Maintenance for O rdered X ML DSRG Talk WPI February 20 th 2003 Students: Katica Dimitrova & Maged El Sayed Advisor: Prof. Elke.

Slides:



Advertisements
Similar presentations
Querying on the Web: XQuery, RDQL, SparQL Semantic Web - Spring 2006 Computer Engineering Department Sharif University of Technology.
Advertisements

TIMBER A Native XML Database Xiali He The Overview of the TIMBER System in University of Michigan.
Incremental Maintenance for Materialized Views over Semistructured Data Written By: Serge Abiteboul Jason McHuge Michael Rys Vasilis Vassalos Janet L.
Prentice Hall, Database Systems Week 1 Introduction By Zekrullah Popal.
CMPT 354, Simon Fraser University, Fall 2008, Martin Ester 52 Database Systems I Relational Algebra.
Paper by: A. Balmin, T. Eliaz, J. Hornibrook, L. Lim, G. M. Lohman, D. Simmen, M. Wang, C. Zhang Slides and Presentation By: Justin Weaver.
Agenda from now on Done: SQL, views, transactions, conceptual modeling, E/R, relational algebra. Starting: XML To do: the database engine: –Storage –Query.
Xyleme A Dynamic Warehouse for XML Data of the Web.
11/08/2002WIDM20021 An Algebraic Approach For Incremental Maintenance of Materialized XQuery Views Maged EL-Sayed, Ling Wang, Luping Ding, and Elke A.
Visual Web Information Extraction With Lixto Robert Baumgartner Sergio Flesca Georg Gottlob.
Database Systems: A Practical Approach to Design, Implementation and Management International Computer Science S. Carolyn Begg, Thomas Connolly Lecture.
Ling Wang, Mukesh Mulchandani Advisor: Elke A. Rundensteiner Rainbow Research group, DSRG, WPI Updating XQuery Views over Relational Data.
1 Efficient XML Stream Processing with Automata and Query Algebra A Master Thesis Presentation Student: Advisor: Reader: Jinhui Jian Prof. Elke A. Rundensteiner.
Chapter 1: Data Models and DBMS Architecture Title: What Goes Around Comes Around Authors: M. Stonebraker, J. Hellerstein Pages: 2-40.
Storing and Querying Ordered XML Using Relational Database System Swapna Dhayagude.
VOX O rder-sensitive V iew Maintenance of Materialized X Query Views ER 2003 October 14 th 2003 Katica Dimitrova*, Maged El-Sayed and Elke Rundensteiner.
A Uniform and Layered Algebraic Framework for XQueries on XML Streams Hong Su Jinhui Jian Elke A. Rundensteiner Worcester Polytechnic Institute CIKM, Nov.
Storing and Querying Ordered XML Using a Relational Database System By Khang Nguyen Based on the paper of Igor Tatarinov and Statis Viglas.
WIDM 2002 DSRG, Worcester Polytechnic Institute1 Honey, I Shrunk the XQuery! —— An XML Algebra Optimization Approach Xin Zhang, Bradford Pielech and Elke.
Page 1 Multidatabase Querying by Context Ramon Lawrence, Ken Barker Multidatabase Querying by Context.
Sangam: A Transformation Modeling Framework Kajal T. Claypool (U Mass Lowell) and Elke A. Rundensteiner (WPI)
1 Rainbow XML-Query Processing Revisited: The Incomplete Story (Part II) Xin Zhang.
AGGREGATE PATH INDEX FOR INCREMENTL WEB VIEW MAINTENANCE Author: Li Chen and Elke Rundensteiner Department of Computer Science Worcester Polytechnic Institure.
1 XQuery to XAT Xin Zhang. 2 Outline XAT Data Model. XAT Operator Design. XQuery Block Identification. Equivalent Rewriting Rules. Computation Pushdown.
Module 9 Designing an XML Strategy. Module 9: Designing an XML Strategy Designing XML Storage Designing a Data Conversion Strategy Designing an XML Query.
Processing of structured documents Spring 2003, Part 8 Helena Ahonen-Myka.
Indexing XML Data Stored in a Relational Database VLDB`2004 Shankar Pal, Istvan Cseri, Gideon Schaller, Oliver Seeliger, Leo Giakoumakis, Vasili Vasili.
Query Processing Presented by Aung S. Win.
Using XML in SQL Server 2005 NameTitleCompany. XML Overview Business Opportunity The majority of all data transmitted electronically between organizations.
Lecture 21 XML querying. 2 XSL (eXtensible Stylesheet Language) In HTML, default styling is built into browsers as tag set for HTML is predefined and.
Context Tailoring the DBMS –To support particular applications Beyond alphanumerical data Beyond retrieve + process –To support particular hardware New.
Database Technical Session By: Prof. Adarsh Patel.
DBSQL 14-1 Copyright © Genetic Computer School 2009 Chapter 14 Microsoft SQL Server.
Pattern tree algebras: sets or sequences? Stelios Paparizos, H. V. Jagadish University of Michigan Ann Arbor, MI USA.
Chapter 16 Methodology – Physical Database Design for Relational Databases.
Self Maintenance of materialized XML views with non-cooperative data sources DBDBD – 2006 Virginie Sans –ETIS/CNRS Laboratory– MIDI Team.
Angela Bonifati, “Active XQuery”, ICDE Active XQuery A. Bonifati, D. Braga, A. Campi, S. Ceri Politecnico di Milano (Italy)
Database Systems Part VII: XML Querying Software School of Hunan University
Rainbow: Bridging XML and Relational Databases Design, Implementation, and Evaluation MQP Advisor: Prof. Elke A. Rundensteiner Sponsor: Verizon.
5/2/20051 XML Data Management Yaw-Huei Chen Department of Computer Science and Information Engineering National Chiayi University.
1 XQuery to SQL by XML Algebra Tree Brad Pielech, Brian Murphy Thanks: Xin.
View Materialization & Maintenance Strategies By Ashkan Bayati & Ali Reza Vazifehdoost.
ICS 321 Fall 2011 The Relational Model of Data (i) Asst. Prof. Lipyeow Lim Information & Computer Science Department University of Hawaii at Manoa 8/29/20111Lipyeow.
Database Systems Design, Implementation, and Management Coronel | Morris 11e ©2015 Cengage Learning. All Rights Reserved. May not be scanned, copied or.
Knowledge-Based Integration of Neuroscience Data Sources Amarnath Gupta Bertram Ludäscher Maryann Martone University of California San Diego.
The Semistructured-Data Model Programming Languages for XML Spring 2011 Instructor: Hassan Khosravi.
Rainbow: XML and Relational Database Design, Implementation, Test, and Evaluation Project Members: Tien Vu, Mirek Cymer, John Lee Advisor:
XML and Database.
Sept. 27, 2002 ISDB’02 Transforming XPath Queries for Bottom-Up Query Processing Yoshiharu Ishikawa Takaaki Nagai Hiroyuki Kitagawa University of Tsukuba.
Johannes Kepler University Linz Department of Business Informatics Data & Knowledge Engineering Altenberger Str. 69, 4040 Linz Austria/Europe
Metadata By N.Gopinath AP/CSE Metadata and it’s role in the lifecycle. The collection, maintenance, and deployment of metadata Metadata and tool integration.
Dec. 13, 2002 WISE2002 Processing XML View Queries Including User-defined Foreign Functions on Relational Databases Yoshiharu Ishikawa Jun Kawada Hiroyuki.
Session 1 Module 1: Introduction to Data Integrity
Graph Data Management Lab, School of Computer Science Branch Code: A Labeling Scheme for Efficient Query Answering on Tree
The Object-Oriented Database System Manifesto Malcolm Atkinson, François Bancilhon, David deWitt, Klaus Dittrich, David Maier, Stanley Zdonik DOOD'89,
Chapter 9: Web Services and Databases Title: NiagaraCQ: A Scalable Continuous Query System for Internet Databases Authors: Jianjun Chen, David J. DeWitt,
1 CS 430 Database Theory Winter 2005 Lecture 7: Designing a Database Logical Level.
Lecture 15: Query Optimization. Very Big Picture Usually, there are many possible query execution plans. The optimizer is trying to chose a good one.
1 Storing and Maintaining Semistructured Data Efficiently in an Object- Relational Database Mo Yuanying and Ling Tok Wang.
SEMI-STRUCTURED DATA (XML) 1. SEMI-STRUCTURED DATA ER, Relational, ODL data models are all based on schema Structure of data is rigid and known is advance.
1 Introduction to Database Systems, CS420 SQL Views and Indexes.
SQL: Interactive Queries (2) Prof. Weining Zhang Cs.utsa.edu.
1 Efficient Processing of Partially Specified Twig Queries Junfeng Zhou Renmin University of China.
Data Integrity & Indexes / Session 1/ 1 of 37 Session 1 Module 1: Introduction to Data Integrity Module 2: Introduction to Indexes.
© 2017 by McGraw-Hill Education. This proprietary material solely for authorized instructor use. Not authorized for sale or distribution in any manner.
XML: Extensible Markup Language
Relational Algebra 461 The slides for this text are organized into chapters. This lecture covers relational algebra, from Chapter 4. The relational calculus.
Data Model.
Query Optimization.
Adaptive Query Processing (Background)
Presentation transcript:

1 IVOX I ncremental V iew Maintenance for O rdered X ML DSRG Talk WPI February 20 th 2003 Students: Katica Dimitrova & Maged El Sayed Advisor: Prof. Elke Rundensteiner

2 Outline Motivation Problem Description Background  XML Algebra  Order in XML Algebra The IVOX Approach  Order Encoding  Overall strategy System Architecture Related Work Future Work

3 Outline Motivation Problem Description Background  XML Algebra  Order in XML Algebra The IVOX Approach  Order Encoding  Overall strategy System Architecture Related Work Future Work 

4 Motivation Views in general  Data warehouses  Information integration  Access control, Privacy,..etc XML Views (EXTRA useful)  Information Inter-Portability  Crossing gaps between different data models Materialized Views  Speed up data retrieval  Query optimization  Increased availability RDBXML Other Sources View View Definition Query

5 Maintaining Materialized Views When sources are updated, materialized view may becomes inconsistent. Methods of view maintenance Recomputation  recompute view from scratch from base data Incremental view maintenance  compute changes to view in response to changes to base sources Heuristic: Incremental view maintenance is usually cheaper than full recomputation.

6 Outline Motivation Problem Description Background  The XAT Algebra  XML order in the XAT Context The IVOX Approach  Order Encoding  Overall strategy System Architecture Related Work Future Work 

7 The Problem Previous work for:  Relational [GMS93], bag semantics [GL95], [ZGHW95], [PSCP02]  Object-Relational [LVM00]  Object-Oriented [AFP02]  Structured data models [AMRVW98], [ZM98]  XML data model not handling order [LD00] Can techniques for other data models be reused for XML?

8 Is Maintaining XML Views Different? XML features  Hierarchical  Optional elements  Self-typed  References  Ordered Expressiveness of view definition language  Complex operations tagging, unnesting, aggregation,..  Expected large auxiliary information

9 Example Advanced Programming in the Unix environment TCP/IP Illustrated Data on the Web Advanced Programming in the Unix environment TCP/IP Illustrated Data on the Web for $b in document("bib.xml")/bib/book where $b/price/text() < 60 return $b/title, $b/price for $b in document("bib.xml")/bib/book where $b/price/text() < 60 return $b/title, $b/price List all books that cost less than $60, including their title and price Data on the Web Data on the Web Bib.xml View Definition Query View Extent

10 Example Insert element into second book Bib.xml Data on the Web Data on the Web View Extent TCP/IP Illustrated Advanced Programming in the Unix environment TCP/IP Illustrated Data on the Web Advanced Programming in the Unix environment TCP/IP Illustrated Data on the Web for $b in document("bib.xml")/bib/book where $b/price/text() < 60 return $b/title, $b/price for $b in document("bib.xml")/bib/book where $b/price/text() < 60 return $b/title, $b/price View Definition Query

11 Our Goal Design incremental view maintenance strategy for XQuery views that:  Correctly update the view  Is order sensitive Returns view in proper order Allows for updates that specify order  Covers at least the “core” of XQuery language views  Minimizes auxiliary information requirements

12 Basics of IVOX Approach: Algebraic Update propagation rules for each algebra operator and each update type XML Source XML Source XML Source XML View Update Algebra Tree XQuery Definition Operator D1 D2 Operator D1 Update D2 Update ExecutionView Maintenance time

13 Why Algebraic? Robust – Easily adaptable to operator semantic changes Extensible – new operators can be added Allows for reuse of techniques for known operators Language independent- independent of syntax changes (of XQuery by W3C) Formal – basis for provable correctness

14 Outline Motivation Problem Description Background  XML Algebra  Order in XML Algebra The IVOX Approach  Order Encoding  Overall strategy System Architecture Related Work Future Work 

15 Background on XML Algebra XAT XAT Operators  SQL Operators: Select, Project …  Special Operators: Source, FOR…  XML Operators: Navigate, Tagger.. XAT Data Model (XAT Table)  Order sensitive table of tuples  Columns denote user-specified or internally generated variable bindings  A cell in a tuple holds an XML node for a sequence of XML nodes  $col1, price $col3 $col3$b … …. $b Advanced … TCP/IP … ….

16 Order in XAT Context Order among tuples Order among XML nodes in a cell  $col1, price $col3 $col3$b … …. $b Advanced … TCP/IP … ….

17 Order in the XAT Context Agg $col5 $col5 TCP/IP… Data … ….. $col5 TCP/IP … Data … ) (, Order among the tuples Order among XML nodes in a single cell

18 Order in XAT Context: View Maintenance On update worry about:  Order among tuples  Order among XML nodes in a cell  $col1, price $col3 $col3$b … … …. $b Advanced … TCP/IP … ….

19 Order in XAT Context & View Maintenance Agg $col5 $col5 TCP/IP… Data … ….. $col5 TCP/IP … Data … ), ( On update worry about:  Order among the tuples  Order among XML nodes in a single cell

20 Duplicate Information in XAT Context Complex operations require auxiliary information Auxiliary information can be too large in XAT context May be expensive to maintain it  $col1, price $col3 $col3$b Advanced … …. $b Advanced … TCP/IP … …. Duplicated Storage !

21 Outline Motivation Problem Description Background  XML Algebra  Order in XML Algebra The IVOX Approach  Order Encoding  Overall strategy System Architecture Related Work Future Work 

22 Possible Solutions to Order Preservation (I) Sequential storage (XPROP approach by Maged, Ling & Luping)  Assume intermediate results stored sequentially  Inserts and deletes are performed in physical order  No order encoding Special support required for secondary storage May require iteration over many tuples to determine order  $col1, price $col … $col3 …. $b …. TCP/IP … Advanced … $b $col3$b … … ….

23 Possible Solutions to Order Preservation (II) Naïve order encoding for tuples and sequences of XML nodes  Assign order numbers to tuples and to XML nodes in a sequence Requires frequent renumbering on inserts.  $col1, price $col3 $col3$b … …. $b Advanced … TCP/IP … …. Ord … Ord 55.48

24 Using Node Identity node identity Idea: Use node identity Usage:  For encoding order and structure  As a reference to base data

25 What Encoding For Node Identity? bib book price title price title Existing techniques for encoding order for XML Global Order (UW) Global Order (UW) Local Order (UW) Dewey Order (UW) Lexicographical Order (MASS) price

26 bib book price title price title Existing techniques for encoding order for XML Global Order (UW) Local Order (UW) Local Order (UW) Dewey Order (UW) Lexicographical Order (MASS) What Encoding For Node Identity? price 1 2

27 bib book price title price title Existing techniques for encoding order for XML Global Order (UW) Local Order (UW) Dewey Order (UW) Dewey Order (UW) Lexicographical Order (MASS) What Encoding For Node Identity? price

28 bib book price title price title b b.b b.d b.f b.b.cd b.b.b b.d.f b.f.cm b.f.l Existing techniques for encoding order for XML Global Order (UW) Local Order (UW) Dewey Order (UW) Lexicographical Order (MASS) Lexicographical Order (MASS) What Encoding For Node Identity? The Winner price b.d.b

29 Lexicographical Keys: LexKeys What are LexKeys?  Multi-level lexicographical keys  Example: c, ba.c.b Examples of comparison b < b.c bab < bd.cc b.b < b.b.c Advantages  All LexKeys form a totally ordered set with respect to <  It is always possible to generate a key between two keys  The deletion of a LexKey in a sequence does not affect other LexKeys Usage  Reference to XML nodes  Encoding order

30 LexKeys in XAT Tables  $b, price $col2 $col2$b b.b.bb.b b.f.cmb.f $b b.b b.d b.f  $b, price $col2 $col2$b … …. $b Advanced … TCP/IP … ….

31 Order Among XAT Tuples Notion: designate order schema to XAT tables  Ordering by LexKeys by columns in order schema yields correct tuple order. $d$c$b c.mb.b.bb.f d.cb.f.cmb.b d.c.bb.f.cmb.b Order Schema

32 Calculating Order Schema OperatorOrder Schema odc(out) Tagger T pattern $col’ (s) odc(s) Source S desc $col’ none. Navigate Unnest  $col, path $col’ (s) If col is last in odc(s) Concat (odc(s) – col, col’ ) else Concat (odc(s), col’ ) Rules for each operator Calculated in a postorder traversal of the tree Sample Rules

33 Order Among Tuples Example  $b, price $col2 $col2$b b.b.bb.b b.f.cmb.f $b b.b b.d b.f  $b, price $col2 $col2$b … …. $b Advanced … TCP/IP … …

34 Order in Collection within a cell? Agg $col5 $col5 TCP/IP… Data … ….. $col5 TCP/IP … Data … ) (, Agg $col5 $col5 tbb tbc $col5$col4$col2 tbbb.f.lb.f.cm tbcb.d.bb.d.f {},

35 Smart Keys What is a SmartKey? Overriding Order (LexKey) Key (LexKey) SmartKey Key part, by default also represents order Optional, only represents order when present Notation: key(order) Examples  b.c.b (h)  b.c.b

36 SmartKeys in XATTables Agg $col5 $col5 TCP/IP… Data … ….. $col5 TCP/IP … Data … ) (, Agg $col5 $col5 tbb(b.f.cm..b.f.l) tbc(b.d.f..b.d.b) $col5$col4$col2 tbbb.f.lb.f.cm tbcb.d.bb.d.f {},

37 The Impact of SmartKeys on View Maintenance

38 Order Among XAT Tuples during View Maintenance Not touching other tuples in XAT table No reordering ever needed. Gaining distributiveness in regard to bag union on tuple level  $col1, price $col3 $col3$b b.b.bb.b b.f.cmb.f b.d.bb.d $b b.b b.f b.d

39 Order in a Sequence during View Maintenance Agg $col5 $col5 tb..b.f.l..b.f.cm tb..b.d.f..b.d.b $col5 tb..b.f.l..b.f.cm tb..b.d.f..b.d.b Not touching other members of the sequence No reordering ever needed. Gaining distributiveness in regard to bag union on cell level {},

40 Update Propagation Rules Operator XAT table 1 XAT table 2 Operator Update to XAT table 1 Update to XAT table 2 ExecutionView Maintenance time Use distributiveness in regard to bag union Reuse rules from relational for most SQL XAT operators

41 Update Propagation Rules Example ( Navigate Unnest on Insert Tuple) T2 old =  $col,path $col’ (T1 old ) T1 new =T1 old +  T1 T2 new =  $col,path $col’ (T1 old +  T1) = =  $col,path $col’ (T1 old ) +  $col,path $col’ (  T1) = = T2 old +  T2 + represents bag union T1 T2  $col,path $col’  T1  T2 ExecutionView Maintenance time  $col,path $col’

42 Update Propagation Strategy XML Source XML View Update XAT xatup keyup Translator xmlup Update XQuery Storage Manager

43 Update Primitives (The Format of Delta) XML Update Primitives (xup)  Insert (xmlFragment, path)  Delete (path)  InsertAtt (name, value, path)  DeleteAtt (name, path)  Replace (oldValue, newValue, path) XML Key Update Primitives (keyup)  Insert (el, path)  Delete (path)  Replace (el, pos) XAT Update Primitives (xatup)  InsertTuple (tuple)  DeleteTuple (tupleId)  ChangeTuple (Keyup, columnName, tupleId) Apply to original XML Document Express update on original XML data in terms of LexKeys Apply to XATTable

44 A Complete Example

45 S ”bib.xml” $S1 bib.xml  $S1, bib $col1  $col1, book $b  $b, price $col2  $b, title $col4  $col3 < 60 T $col4 $col2 $col5 Agg $col5 Storage Manager bib book pricetitle price title b b.bb.db.f b.b.cd b.b.b b.d.f b.f.cmb.f.l bib.xml Constructed XDOMs { tb..b.f.l..b.f.cm(b.f.l..b.f.cm ) } $col5 tb.. b.f.l.. b.f.cm XDOMKey book b.f.lb.f.cm tr $col6 tr tb.. b.f.l.. b.f.cm XDOMKey book b.f.lb.f.cm result tb..b.f.l.. b.f.cm T $col5 $col6 b $col1 b.f b.d b.b $b b.f.cm b.b.b $col2 b.f b.b $b b.f.l b.b.cd $col4 b.f.cm b.b.b $col2 b.f.l $col4 b.f.cm $ col2 tb.. b.f.l.. b.f.cm XDOMKey book b.f.lb.f.cm tb..b.f.l..b.f.cm $col5 Execution

46 S ”bib.xml” $S1 bib.xml  $S1, bib $col1  $col1, book $b  $b, price $col2  $b, title $col4  $col3 < 60 T $col4 $col2 $col5 Agg $col5 Storage Manager bib book pricetitle price title b b.bb.db.f b.b.cd b.b.b b.d.f b.f.cmb.f.l bib.xml Constructed XDOMs T $col5 $col6 price b.d.b Insert (price, bib[1].book[2]) Insert (price[b.d.b], bib[b].book[b.d]) b $col1 ChangeTuple(insert(price[b.d.b], bib[b].book[b.d]), $col1, b) b.f b.d b.b $b changeTuple(insert(price[b.d.b], book[b.d]), $b, b.d) ChangeTuple(insert(price[b.d.b], bib[b].book[b.d]), $col2, b.f, b.f.m) b.f.cm b.b.b $col2 b.f b.b $b insertTuple({b.d, b,d.b}) b.f.l b.b.cd $col4 b.f.cm b.b.b $col2 insertTuple({b.d.b, b.d.f}) b.f.l $col4 b.f.cm $ col2 insetTuple({b.d.b, b.d.f}) tb.. b.f.l.. b.f.cm XDOMKey book b.f.lb.f.cm tb..b.f.l..b.f.cm $col5 insertTuple({tb..b.d.f..b.d.b}) tr $col6 tr tb.. b.f.l.. b.f.cm XDOMKey book b.f.lb.f.cm result tb..b.f.l.. b.f.cm ChangeTuple(insert(tb..b.d.f..b.d. b, result[tr]), $col6, tr) b.d.bb.d b.f.cm b.b.b $col2 b.f b.b $b b.d.fb.d.d b.f.l b.b.cd $col4 b.f.cm b.b.b $col2 b.d.f b.f.l $col4 b.d.d b.f.cm $ col2 tb.. b.d.f.. b.d.b tb.. b.f.l.. b.f.cm XDOMKey book b.f.lb.f.cm book b.d.fb.d.b tb..b.d.f..b.d.b tb..b.f.l..b.f.cm $col5 tb.. b.d.f.. b.d.b tb.. b.f.l.. b.f.cm XDOMKey book b.f.lb.f.cm book b.d.fb.d.b { tb..b.f.l..b.f.cm(b.f.l..b.f.cm ) tb..b.d.f..b.d.b(..b.d.f..b.d.b) } $col5 tb..b.d.f..b.d.b(..b.d.f..b.d.b) { tb..b.f.l..b.f.cm(b.f.l..b.f.cm ) } $col5 ChangeTuple(insert( tb..b.d.f..b.d.b, null), $col5, ) tb.. b.d.f.. b.d.b tb.. b.f.l.. b.f.cm XDOMKey book b.f.lb.f.cm book b.d.fb.d.b View Maintenance

47 Outline Motivation Problem Description Background on XAT  XML Algebra  Order in XML Algebra The IVOX Approach  Order Encoding  Overall strategy System Architecture Related Work Future Work 

48 System Architecture Process Data Legend XML Query Engine XML Source XML Algebra Tree Materialized Auxiliary Views Materialized XML View XML Source Persistent Data Storage One time occurrence On-update occurrence XML View Maintainer VM Initializer View Definition XQuery Rainbow User Update XQuery Update Propagation Rules Repository XML Source Update Primitive Generator Executer XTUP Storage Manager Execution View Maintenance

49 Outline Motivation Problem Description Background on XAT  XML Algebra  Order in XML Algebra The IVOX Approach  Order Encoding  Overall strategy System Architecture Related Work Future Work 

50 Related Work A.Gupta, I.S.Mumick. Maintenance of Materialized Views: Problems, Techniques, and Application. In Bulletin of the Technical Committee on Data engineering T. Grin, L.Libkin. Incremental maintenance of views with duplicates. In SIGMOD H. Liefke and S. Davidson. View Maintenance for Hierarchical Semistructured Data. In DAWAK S. Abiteboul, J. McHugh, Rys, Vassalos, J. Wiener. Incremental Maintenance for Materialized Views over Semistructured Data. In VLDB 1998.

51 Outline Motivation Problem Description Background on XAT  XML Algebra  Order in XML Algebra The IVOX Approach  Order Encoding  Overall strategy System Architecture Related Work Future Work 

52 Future Work Near Future …  Launch the system  Batch update coming  Experiments and Evaluation Compare the system’s performance to recomputation … and Beyond  Batching updates coming from different sources  Integrity constraints  Algebra tree rewrite rules