Temporal Queries in XML Document Archives and Web Warehouses

Slides:



Advertisements
Similar presentations
Lock-Free Consistency Control for Web 2.0 Applications Jiang-Ming Yang, Hai-Xun Wang, Ning Gu, Yi-Ming Liu, Chun- Song Wang, Qi-Wei Zhang 25 April 2008.
Advertisements

From Handbook of Temporal Reasoning in Artificial Intelligence By Jan Chomicki & David Toman Temporal Databases Presented by Leila Jalali CS224 presentation.
XML: Extensible Markup Language
By Daniela Floresu Donald Kossmann
1 3D_XML A three-Dimensional XML-based Model Khadija Ali, Jaroslav Pokorný Czech Technical University Prague - Czech Republic.
CS240A: Databases and Knowledge Bases Temporal Applications and SQL:1999 Carlo Zaniolo Department of Computer Science University of California, Los Angeles.
Min LuTIMBER: A Native XML DB1 TIMBER: A Native XML Database Author: H.V. Jagadish, etc. Presenter: Min Lu Date: Apr 5, 2005.
XQUERY. What is XQuery? XQuery is the language for querying XML data The best way to explain XQuery is to say that XQuery is to XML what SQL is to database.
1 XQuery Web and Database Management System. 2 XQuery XQuery is to XML what SQL is to database tables XQuery is designed to query XML data What is XQuery?
CS240A: Databases and Knowledge Bases Introduction Carlo Zaniolo Department of Computer Science University of California, Los Angeles WINTER 2002.
Xyleme A Dynamic Warehouse for XML Data of the Web.
Visual Web Information Extraction With Lixto Robert Baumgartner Sergio Flesca Georg Gottlob.
1 Indexing and Querying XML Data for Regular Path Expressions A Paper by Quanzhong Li and Bongki Moon Presented by Amnon Shochot.
Historical XML Databases Fusheng Wang and Carlo Zaniolo University of California, Los Angeles.
Storing and Querying Ordered XML Using a Relational Database System By Khang Nguyen Based on the paper of Igor Tatarinov and Statis Viglas.
XML –Query Languages, Extracting from Relational Databases ADVANCED DATABASES Khawaja Mohiuddin Assistant Professor Department of Computer Sciences Bahria.
Change-Centric Management of Versions in an XML Warehouse Amélie Marian Columbia University Serge Abiteboul, Grégory Cobéna, Laurent Mignet INRIA-Rocquencourt.
The Design Of A Web Document Snapshots Delivery System David Chao College of Business San Francisco State University.
Module 9 Designing an XML Strategy. Module 9: Designing an XML Strategy Designing XML Storage Designing a Data Conversion Strategy Designing an XML Query.
Database Systems Chapter 1 The Worlds of Database Systems.
4/20/2017.
Storing and Querying Multi-version XML Documents using Durable Node Numbers Shu-Yao Chien Dept. of CS UCLA Vassilis J. Tsotras Dept. of.
Version Management for XML Documents Copy-Based vs Edit-Based Schemes Shu-Yao Chien Computer Science Department University of California, Los Angeles
PHASE 3: SYSTEMS DESIGN Chapter 7 Data Design.
Formex XML Two years after introduction Dr. Holger Bagola Publications Office Directorate A ‘OJ and Access to Legislation’ ‘Methodology and development’
1 Distributed Monitoring of Peer-to-Peer Systems By Serge Abiteboul, Bogdan Marinoiu Docflow meeting, Bordeaux.
XML in SQL Server Overview XML is a key part of any modern data environment It can be used to transmit data in a platform, application neutral form.
XML Overview. Chapter 8 © 2011 Pearson Education 2 Extensible Markup Language (XML) A text-based markup language (like HTML) A text-based markup language.
Introduction to Databases A line manager asks, “If data unorganized is like matter unorganized and God created the heavens and earth in six days, how come.
Chapter 1 In-lab Quiz Next week
XML as a Boxwood Data Structure Feng Zhou, John MacCormick, Lidong Zhou, Nick Murphy, Chandu Thekkath 8/20/04.
VICTORIA UNIVERSITY OF WELLINGTON Te Whare Wananga o te Upoko o te Ika a Maui SWEN 432 Advanced Database Design and Implementation An Introduction to XML.
VLDB'02, Aug 20 Efficient Structural Joins on Indexed XML1 Efficient Structural Joins on Indexed XML Documents Shu-Yao Chien, Zografoula Vagena, Donghui.
University of Crete Department of Computer Science ΗΥ-561 Web Data Management XML Data Archiving Konstantinos Kouratoras.
BLAS: An Efficient XPath Processing System Zhimin Song Advanced Database System Professor: Dr. Mengchi Liu.
Chapter 9 Database Systems Introduction to CS 1 st Semester, 2014 Sanghyun Park.
Efficient Complex Query Support For Multi-version XML Documents Shu-Yao Chien Dept. of CS UCLA Vassilis J. Tsotras Dept. of CS&E UC Riverside.
XML Databases by Sebastian Graf Hier beginnt mein toller Vortrag.
Fushen Wang, XinZhou, Carlo Zaniolo Using XML to Build Efficient Transaction- Time Temporal Database Systems on Relational Databases In Time Center, 2005.
____________________________ XML Access Control for Semantically Related XML Documents & A Role-Based Approach to Access Control For XML Databases BY Asheesh.
Space-Efficient Support for Temporal Text Indexing in a Document Archive Context Kjetil Nørvåg Department of Computer and Information Science Norwegian.
Sept. 27, 2002 ISDB’02 Transforming XPath Queries for Bottom-Up Query Processing Yoshiharu Ishikawa Takaaki Nagai Hiroyuki Kitagawa University of Tsukuba.
ArchIS: An Efficient Transaction-Time Temporal Database System Built on Relational Databases and XML Fusheng Wang University of California, Los Angeles.
(A comparative study for XML change detection) Grégory Cobéna (INRIA), Talel Abdessalem (ENST), Yassine Hinnach (ENST) Etude comparative sur la détection.
CS240A: Databases and Knowledge Bases Temporal Databases Carlo Zaniolo Department of Computer Science University of California, Los Angeles.
ArchIS: An Efficient Transaction-Time Temporal Database System Built on Relational Databases and XML Fusheng Wang University of California, Los Angeles.
Scheduling of Transactions on XML Documents Author: Stijin Dekeyser Jan Hidders Reviewed by Jason Chen, Glenn, Steven, Christian.
1 Storing and Maintaining Semistructured Data Efficiently in an Object- Relational Database Mo Yuanying and Ling Tok Wang.
Introduction: Databases and Database Systems Lecture # 1 June 19,2012 National University of Computer and Emerging Sciences.
ISC321 Database Systems I Chapter 2: Overview of Database Languages and Architectures Fall 2015 Dr. Abdullah Almutairi.
1 Efficient Processing of Partially Specified Twig Queries Junfeng Zhou Renmin University of China.
1 Representing and Reasoning on XML Documents: A Description Logic Approach D. Calvanese, G. D. Giacomo, M. Lenzerini Presented by Daisy Yutao Guo University.
Chapter 1 Database and Database Users
XML: Extensible Markup Language
Updating SF-Tree Speaker: Ho Wai Shing.
MongoDB Er. Shiva K. Shrestha ME Computer, NCIT
Chapter 9 Database Systems
Dynamic Multi-version Ontology-based Personalization
Chapter 12 Information Systems.
9/22/2018.
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 2 Database System Concepts and Architecture.
OrientX: an Integrated, Schema-Based Native XML Database System
Spatio-Temporal Databases
Temporal Databases.
Data Model.
Presented by: Jacky Ma Date: 11 Dec 2001
2/18/2019.
Fabio Grandi DEIS - Univ. of Bologna, Italy
CS240A: Databases and Knowledge Bases A Taxonomy of Temporal DBs
CoXML: A Cooperative XML Query Answering System
Presentation transcript:

Temporal Queries in XML Document Archives and Web Warehouses Author: Fusheng Wang and Carlo Zaniolo Publication: TIME-ICTL’03, IEEE 報告人:陳建宏

outline Main Issue Previous Work A Logical Model for Versions Complex Queries Conclusions

outline Main Issue Previous Work A Logical Model for Versions Complex Queries Conclusions

Main issue Concisely representing the successive versions of a document as an XML document that implements a temporally grouped data model Using XML query languages, such as XQuery, to express complex queries on the content of a particular version, and on the temporal evolution of the document elements and their contents

outline Main Issue Previous Work A Logical Model for Versions Complex Queries Conclusions

Temporal XML Representation A valid tag for XML/XHTML documents is proposed to support valid time A data model is proposed for temporal XML documents XML query languages such as Xpath and XQuery <valid> <validity from=“1980-01-01” to=“1985-12-31”/> This is test </valid> <title time:valid="2000-01-01, 2000-01-09">XML</title> <title time:valid="2000-01-10, now">Introduction to XML</title> Xquery example: select all the title elements in the "books.xml" file doc("books.xml")/bookstore/book/title

Change Detection XyDiff X-Diff Ladiff How to know the difference between the latest version and the previous one? There are some of efficient change detection algorithms Ladiff XyDiff X-Diff

Managing the Deltas There are different schemes for storing these deltas on secondary storage and processing them for version reconstruction and query execution Revision Control System (RCS) scheme Reference-Based Version Model(RBVM) scheme Source Code Control System(SCCS) scheme

Temporal Databases Many temporal data models are proposed already. They are classified into two main categories Temporally ungrouped Temporally grouped

outline Main Issue Previous Work A Logical Model for Versions Complex Queries Conclusions

XML REPRESENTATION of versioned document V-Document Each element is assigned with two attributes vstart and vend, which represent the valid version interval of the element In V-Document, we represent each attribute by a sub-element denoted by a special flag attribute isAttr.

Sampled versioned xml documents <chapter no="1"> <title>Introduction</title> <section>Background</section> <section>Motiviation</section> </chapter> </document> version 2002-01-02 <document> <chapter no="1"> <title>Introduction and Overview</title> <section>Background</section> <section>History</section> </chapter> <chapter no="2"> <title>Related Work</title> <section>XML Storage</section> </document> version 2002-01-03 <document> <chapter no="1"> <title>Introduction and Overview</title> <section>Background</section> <section>History</section> </chapter> <chapter no="2"> <title>Related Work</title> <section>XML Indexing</section> </document>

Attribute of element ”chapter” V-document Example Attribute of element ”chapter” <document vstart="2002-01-01" vend="now"> <chapter vstart="2002-01-01" vend="now"> <no isAttr="yes" vstart="2002-01-01" vend="now">1</no> <title vstart="2002-01-01" vend="2002-01-01">Introduction</title> <title vstart="2002-01-02" vend="now">Introduction and Overview</title> <section vstart="2002-01-01" vend="2002-01-01">Motivation</section> <section vstart="2002-01-01" vend="now">Background</section> <section vstart="2002-01-02" vend="now">History</section> </chapter> <chapter vstart="2002-01-02" vend="now"> <no isAttr="yes" vstart="2002-01-02" vend="now">2</no> <title vstart="2002-01-02" vend="now">Related Work</title> <section vstart="2002-01-02" vend="2002-01-02">XML Storage</section> <section vstart="2002-01-03" vend="now">XML Indexing</section> </document> vstart and vend tag

V-document advantage No storage redundancy The changes are naturally representated Temporal queries are easily expressed on V-documents

Change operations - update <document> <chapter no="1"> <title>Introduction</title> <section>Background</section> <section>Motiviation</section> </chapter> </document> <title vstart="2002-01-01" vend=“now"> Introduction </title> <title vstart="2002-01-01" vend="2002-01-01"> Introduction </title> <title vstart="2002-01-02" vend="now"> Introduction and Overview <document> <chapter no="1"> <title>Introduction and Overview</title> <section>Background</section> <section>History</section> </chapter>

Change operations - insert <section vstart="2002-01-01" vend="now"> Background </section> <document> <chapter no="1"> <title>Introduction</title> <section>Background</section> </chapter> </document> <section vstart="2002-01-01“ vend="now"> Background </section> <section vstart="2002-01-02" vend="now"> History <document> <chapter no="1"> <title>Introduction and Overview</title> <section>Background</section> <section>History</section> </chapter>

Change operations - DELETE <section vstart="2002-01-01" vend="now"> Motivation </section> <document> <chapter no="1"> <title>Introduction</title> <section>Background</section> <section>Motivation</section> </chapter> </document> <section vstart="2002-01-01" vend="2002-01-01"> Motivation </section> <document> <chapter no="1"> <title>Introduction and Overview</title> <section>Background</section> </chapter>

outline Main Issue Previous Work A Logical Model for Versions Complex Queries Conclusions

Sampled versioned xml documents <chapter no="1"> <title>Introduction</title> <section>Background</section> <section>Motiviation</section> </chapter> </document> version 2002-01-02 <document> <chapter no="1"> <title>Introduction and Overview</title> <section>Background</section> <section>History</section> </chapter> <chapter no="2"> <title>Related Work</title> <section>XML Storage</section> </document> version 2002-01-03 <document> <chapter no="1"> <title>Introduction and Overview</title> <section>Background</section> <section>History</section> </chapter> <chapter no="2"> <title>Related Work</title> <section>XML Indexing</section> </document>

Query 1 Snapshot queries: retrieve the version of the document on 2002-01-03: for $e in document("V-Document.xml") /document return snapshot( $e,"2002-01-03“) <document vstart="2002-01-01" vend="now"> <chapter vstart="2002-01-01" vend="now"> <no isAttr="yes" vstart="2002-01-01" vend="now">1</no> <title vstart="2002-01-02" vend="now">Introduction and Overview</title> <section vstart="2002-01-01" vend="now">Background</section> <section vstart="2002-01-02" vend="now">History</section> </chapter> <chapter vstart="2002-01-02" vend="now"> <no isAttr="yes" vstart="2002-01-02" vend="now">2</no> <title vstart="2002-01-02" vend="now">Related Work</title> <section vstart="2002-01-03" vend="now">XML Indexing</section> </document>

Query 2 Change queries: retrieve the unchanged elements between the version on 2002-01-01 and the version on 2002-01-03: for $e in document("V-Document.xml") /document return diff-identical($e,"2002-01-01","2002-01-03") <document vstart="2002-01-01" vend="now"> <chapter vstart="2002-01-01" vend="now"> <no isAttr="yes" vstart="2002-01-01" vend="now">1</no> <section vstart="2002-01-01" vend="now">Background</section> </document>

Query 3 Evolutionary queries: find the history of the title of chapter 1: for $title in document("V-Document.xml") /document/chapter[no="1"]/title return $title <title vstart="2002-01-01" vend="2002-01-01">Introduction</title> <title vstart="2002-01-02" vend="now">Introduction and Overview</title>

Query 4 Continuous queries: find titles that didn’t change for more than 2 consecutive years. for $title in document("V-Document.xml") /document/chapter/title let $duration := substract-dates( $title/@vend, $title/@vstart) where dayTimeDuration-greater-than( $duration, "P730D") return $title <title vstart="2002-01-02" vend="now"> Introduction and Overview </title>

Query 5 A Since B: find chapters in which section “History” remains unchanged since the version when the title was changed to “Introduction and Overview”. for $ch in document("V-Document.xml") /document/chapter let $title := $ch/title[ title="Introduction and Overview"] let $sec := $ch/section[section="History"] where not empty($title) and not empty($sec) and $sec/@vstart = $title/@vstart and $sec/@vend ="now" return $ch <chapter vstart="2002-01-02" vend="now"> <no isAttr="yes" vstart="2002-01-02" vend="now">1</no></chapter>

Query 6 A Until B: find chapters in which the title didn’t change until a new section “History” was added for $ch in document("V-Document.xml") /document/chapter let $title := $ch/title[1] let $sec := $ch/section[section="History"] where not empty($title) and not empty($sec) and $title/@vend = $sec/@vstart return $ch <chapter vstart="2002-01-01" vend=“2002-01-01"> <no isAttr="yes" vstart="2002-01-01" vend="now">1</no> </chapter>

Join Query Joins: find the chair of employee ’Bob’ on 1996-01-31: for $e in document("employees.xml") /employees/employee[name=’Bob’] for $d in document("depts.xml")/depts/dept let $et := snapshot($e,"1996-01-31") let $dt := snapshot($d,"1996-01-31") where not empty($et) and not empty($dt) and $et/dept = $dt/name return $dt/chair

outline Main Issue Previous Work A Logical Model for Versions Complex Queries Conclusions

Conclusions We can represent a multi-version document in V-Document In this representation scheme, complex queries can be expressed easily