SilkRoute: A framework for publishing relational data in XML

  • Authors:
  • Mary Fernández;Yana Kadiyska;Dan Suciu;Atsuyuki Morishima;Wang-Chiew Tan

  • Affiliations:
  • AT&T Labs---Research, Florham Park, NJ;University of Washington, Seattle, WA;University of Washington, Seattle, WA;Shibaura Institute of Technology, Saitama-City, Saitama, Japan;University of California at Santa Cruz, Santa Cruz, CA

  • Venue:
  • ACM Transactions on Database Systems (TODS)
  • Year:
  • 2002

Quantified Score

Hi-index 0.00

Visualization

Abstract

XML is the "lingua franca" for data exchange between interenterprise applications. In this work, we describe SilkRoute, a framework for publishing relational data in XML. In SilkRoute, relational data is published in three steps: the relational tables are presented to the database administrator in a canonical XML view; the database administrator defines in the XQuery query language a public, virtual XML view over the canonical XML view; and an application formulates an XQuery query over the public view. SilkRoute composes the application query with the public-view query, translates the result into SQL, executes this on the relational engine, and assembles the resulting tuple streams into an XML document. This work makes some key contributions to XML query processing. First, it describes an algorithm that translates an XQuery expression into SQL. The translation depends on a query representation that separates the structure of the output XML document from the computation that produces the document's content. The second contribution addresses the optimization problem of how to decompose an XML view over a relational database into an optimal set of SQL queries. We define formally the optimization problem, describe the search space, and propose a greedy, cost-based optimization algorithm, which obtains its cost estimates from the relational engine. Experiments confirm that the algorithm produces queries that are nearly optimal.