SilkRoute: A Framework for Publishing Relational Data in XML Mary Fernández, AT&T Labs - Research Dan Suciu, Univ. of Washington Yada Kadiyska, Univ. of.

Slides:



Advertisements
Similar presentations
Building FHIR Servers on Existing Applications
Advertisements

Chapter 10: Designing Databases
XML: Extensible Markup Language
Composing XSL Transformations with XML Publishing Views Chengkai LiUniversity of Illinois at Urbana-Champaign Philip Bohannon Lucent Technologies, Bell.
The CERIF-2000 Implementation. Andrei S. Lopatenko CERIF Implementation Guidelines Andrei Lopatenko Vienna University of Technology
XQuery John Annechino Steven Pow. Agenda What is XQuery? Uses of XQuery XQuery vs. XSLT Syntax –Built-In Functions –FLWOR –if-then-else –User-Defined.
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?
Manish Bhide, Manoj K Agarwal IBM India Research Lab India {abmanish, Amir Bar-Or, Sriram Padmanabhan IBM Software Group, USA
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.
--What is a Database--1 What is a database What is a Database.
Using XML to View Relational Data Xin He AMPS Seminar November 30, 2001.
Ling Wang, Mukesh Mulchandani Advisor: Elke A. Rundensteiner Rainbow Research group, DSRG, WPI Updating XQuery Views over Relational Data.
XML Views El Hazoui Ilias Supervised by: Dr. Haddouti Advanced XML data management.
2005rel-xml-ii1 The SilkRoute system  The system goals  Scenario, examples  View Forests  View forest and query composition  View forest efficient.
1 COS 425: Database and Information Management Systems XML and information exchange.
XML and The Relational Data Model
XML –Query Languages, Extracting from Relational Databases ADVANCED DATABASES Khawaja Mohiuddin Assistant Professor Department of Computer Sciences Bahria.
Chapter 14 Database Connectivity and Web Technologies
FHIRFarm – How to build a FHIR Server Farm (quickly)
MAHI Research Database Project Status Report August 9, 2001.
Knowledge Mediation in the WWW based on Labelled DAGs with Attached Constraints Jutta Eusterbrock WebTechnology GmbH.
Rationale Aspiring Database Developers should be able to efficiently query and maintain databases. This module will help students learn the Structured.
2005rel-xml-iii1  View forests and query composition The composition algorithm works for a (large) subset of XQuery, excluding : (see paper for details)
Comparing XSLT and XQuery Michael Kay XTech 2005.
DATABASE and XML Moussa Mané. Learning Objectives ● Learn about Native XML Databases ● Learn about the conversion technology available ● Understand New.
IT420: Database Management and Organization XML 21 April 2006 Adina Crăiniceanu
Another PillowTalk Presentation  2004 Dynamic Systems, Inc. Introduction to XML for SOA Lee H. Burstein,
Database Solutions for Storing and Retrieving XML Documents.
Session II Chapter 2 – Chapter 2 – XSLhttp://
Sofia, Bulgaria | 9-10 October Using XQuery to Query and Manipulate XML Data Stephen Forte CTO, Corzen Inc Microsoft Regional Director NY/NJ (USA) Stephen.
1 Maintaining Semantics in the Design of Valid and Reversible SemiStructured Views Yabing Chen, Tok Wang Ling, Mong Li Lee Department of Computer Science.
XML과 Database 홍기형 성신여자대학교 성신여자대학교 홍기형.
Fundamentals of Database Chapter 7 Database Technologies.
G-SPARQL: A Hybrid Engine for Querying Large Attributed Graphs Sherif SakrSameh ElniketyYuxiong He NICTA & UNSW Sydney, Australia Microsoft Research Redmond,
Intro. to XML & XML DB Bun Yue Professor, CS/CIS UHCL.
RELATIONAL FAULT TOLERANT INTERFACE TO HETEROGENEOUS DISTRIBUTED DATABASES Prof. Osama Abulnaja Afraa Khalifah
1 CS 430 Database Theory Winter 2005 Lecture 17: Objects, XML, and DBMSs.
Development Process and Testing Tools for Content Standards OASIS Symposium: The Meaning of Interoperability May 9, 2006 Simon Frechette, NIST.
Ocean Observatories Initiative Data Management (DM) Subsystem Overview Michael Meisinger September 29, 2009.
Chapter 18 Object Database Management Systems. McGraw-Hill/Irwin © 2004 The McGraw-Hill Companies, Inc. All rights reserved. Outline Motivation for object.
Architectural Patterns Support Lecture. Software Architecture l Architecture is OVERLOADED System architecture Application architecture l Architecture.
XQuery Leah Andrews. Overview  Queries data stored in XML trees  Declarative  High-level  Functional (no side effects)  Strongly typed  Nodes 
XML Databases by Sebastian Graf Hier beginnt mein toller Vortrag.
Gaining and keeping competitive advantage through J2EE and XML interoperability Dimitri Maesfranckx Product Manager.
Mike Jackson EPCC OGSA-DAI Architecture + Extensibility OGSA-DAI Tutorial GGF17, Tokyo.
XML and Its Applications Ben Y. Zhao, CS294-7 Spring 1999.
Geography Markup Language (GML). What is GML? – Scope  The Geography Markup Language is  a modeling language for geographic information  an encoding.
© 2006 Altova GmbH. All Rights Reserved. Altova ® Product Line Overview.
INT-2: XQuery Levels the Data Integration Playing Field Carlo (Minollo) Innocenti DataDirect XML Technologies, Program Manager.
Dec. 13, 2002 WISE2002 Processing XML View Queries Including User-defined Foreign Functions on Relational Databases Yoshiharu Ishikawa Jun Kawada Hiroyuki.
Slide 1 Service-centric Software Engineering. Slide 2 Objectives To explain the notion of a reusable service, based on web service standards, that provides.
The PADS-Galax Project Enabling XQuery over Ad-hoc Data Sources Yitzhak Mandelbaum.
1 CS 430 Database Theory Winter 2005 Lecture 10: Introduction to SQL.
Martin Kruliš by Martin Kruliš (v1.1)1.
Semi-structured Data In many applications, data does not have a rigidly and predefined schema: –e.g., structured files, scientific data, XML. Managing.
Chapter 18 Object Database Management Systems. Outline Motivation for object database management Object-oriented principles Architectures for object database.
Manufacturing Systems Integration Division Development Process and Testing Tools for Content Standards Simon Frechette National Institute of Standards.
XML Databases. XML Like HTML –Tags –Fixed vocabulary of tags and fixed structure –Tags indicate formatting, not semantics Strict HTML – XHTML –Always.
©2007 Really Strategies, Inc. CONFIDENTIAL 1 Native XML Content Management Philadelphia XML Users’ Group.
XML and Distributed Applications By Quddus Chong Presentation for CS551 – Fall 2001.
I Copyright © 2004, Oracle. All rights reserved. Introduction.
XPERANTO: A Middleware for Publishing Object-Relational Data as XML Documents Michael Carey Daniela Florescu Zachary Ives Ying Lu Jayavel Shanmugasundaram.
XML: Extensible Markup Language
Database Management System (DBMS)
Querying XML XQuery.
Querying XML XQuery.
SilkRoute: A Framework for Publishing Rational Data in XML
Alin Deutsch, University of Pennsylvania Mary Mernandez, AT&T Labs
2/18/2019.
Lecture 14: XML Publishing & Storage Midterm Review
Presentation transcript:

SilkRoute: A Framework for Publishing Relational Data in XML Mary Fernández, AT&T Labs - Research Dan Suciu, Univ. of Washington Yada Kadiyska, Univ. of Washington Atsuyuki Morishima, Univ. of Tsukuba Wang-Chiew Tan, Univ. of Pennsylvania

2 XML-Relational Middleware XML: Standard, flexible syntax for exchanging data Lingua franca of B2B Applications Industry defines common XML vocabulary Document Type Descriptions (DTDs) or XML Schema Contract between data producers & consumers Reflects application domain XML-Relational Middleware Key business data in RDBMS Glue between existing business data & application Characteristics: General, dynamic, efficient SilkRoute : A Reference Framework

3 XML Data Management XML Documents & Schemas Legacy Database Persistent Database XML ConsumerXML Producer XML API or Query Publish XML Store XML XML Interfaces

4 Clothing Supplier & Reseller Shared XML Schema element supplier { element company, element product* } element company { xs:string } element product { element name, element category, element retail, element sale?, element reports* } element name { xs:string } element category { xs:string } element retail { attribute cur { xs:string }, xs:float } element sale { xs:float } ACME Clothing Suede jacket outerwear Rain boots outerwear leaks in heel heel separates

5 Viewing and Querying XML Most data in relational database Suppliers’ goal: Define XML view of data General: support many XML Schemas Efficient: leverage relational database Supplier Database ? = () ? Application Query Application Public Query ?

6 Viewing and Querying XML Supplier database ? ? = () ) ? ? = ° ? ? = Application Brokers’ goal: Uniform access Dynamic: Access up-to-date, minimal result (

7 SilkRoute Framework General, declarative view-definition language Public Query in XQuery Maps relational data to public XML view + Support many output XML Schemas Dynamic querying of XML views Application Query in XQuery Maps public XML data to application’s view Query composition algorithm + Underlying storage should be transparent to user + Access up-to-date, minimal result Efficient use of relational engine Query decomposition algorithm Selects query execution plan (one or more SQL queries) Uses relational engine’s cost estimates to guide search + Leverage power of relational query engine

8 Canonical XML View Clothing(pid, item, category, description, price, cost) : {, } Discount(pid, discount) : {, } 001 Suede jacket outerwear Hip length Rain boots outerwear Ankle height Oracle 9i XSQL Canonical XML View Use XSLT (out of engine) to transform canonical XML

9 Canonical & Public Views ACME Clothing Suede jacket outerwear Rain boots outerwear leaks in heel heel separates 001 Suede jacket outerwear Hip length Rain boots outerwear Ankle height

10 XQuery Strongly typed, functional XML query language Large-scale database access Must guarantee safety/correctness of operations on data Compositional: XML to XML Q 1 (Q 2 (D)) = (Q 1 o Q 2 )(D) XQuery 1.0 = XPath 2.0 (path, arithmetic, logical expressions) + f or-let-where-orderby-return (FLWOR) XML construction + User-defined (recursive) functions + Strong typing

11 for $c in $CanonicalView/Clothing/Tuple where $c/category = “outerwear” return { data($c/item) } { data($c/category) } { data($c/price) } Public View Query Public view query expressed in XQuery Includes all XQuery expressions Except recursive functions, features that depend on document order ? { for $d in $CanonicalView/Discount/Tuple where $d/pid = $c/pid return { $d/discount * $c/price } } ACME Clothing { } Type checking guarantees view conforms to public schema

12 for $s in $PublicView/supplier return { data($s/name) } { for $p in $s/product where $p/sale < 0.5 * $p/retail return { data($p/name) } } Application Query Application query expressed in XQuery Type checking guarantees application query correct w.r.t. public schema ?

13 SilkRoute Architecture Application View Forest Composer View Forest Decomposer XML Generator Internet/IntranetSilkRouteRelational Engine ? ? ???? All modules process view forests Representation of all views: canonical, public, application Maps relational data to XML document

14 Query Decomposition for $c in $CanonicalView/Clothing/Tuple where $c/category = “outerwear” return { data($c/item) } { data($c/category) } { data($c/price) } SELECT$c.pid as pid, $c.item as item, $c.category as category, $c.price as price FROM Clothing $c WHERE $c.category = “outerwear” View query may decompose into multiple SQL queries Use greedy algorithm (with help from RDBMS) to choose decomposition ? ? item category price

15 Related Systems Commercial Systems Oracle 9i – canonical mapping IBM DB2 XML Extender – annotated schema Microsoft SQL Server – universal relation, annotated schema (To date), none support full XQuery SQL Server supports XPath (Quasi) Research Systems Xperanto (IBM Almaden) – now a product Rolex, PRATA (Bell Labs)

16 Summary XML Publishing Systems Workhorses of B2B applications Key characteristics: General, dynamic, efficient Commercial Systems Oracle, IBM DB2, Microsoft SQL Server Some, but not all, of key characteristics SilkRoute : A Reference Framework General, declarative mappings from relations to XML Query composition & decomposition Establishes link between XQuery & SQL Prototype (re-)implementation (JDBC-compliant database)