ROX: Relational Over XML

An increasing percentage of the data needed by business applications is being generated in XML format. Storing the XML in its native format will facilitate new applications that exchange business objects in XML format and query portions of XML documents using XQuery. This paper explores the feasibility of accessing natively-stored XML data through traditional SQL interfaces, called Relational Over XML (ROX), in order to avoid the costly conversion of legacy applications to XQuery. It describes the forces that are driving the industry to evolve toward the ROX scenario as well as some of the issues raised by ROX. The impact of denormalization of data in XML documents is discussed both from a semantic and performance perspective. We also weigh the implications of ROX for manageability and query optimization. We experimentally compared the performance of a prototype of the ROX scenario to today's SQL engines, and found that good performance can be achieved through a combination of utilizing XML's hierarchical storage to store relations "pre-joined" as well as creating indices over the remaining join columns. We have developed an experimental framework using DB2 8.1 for Linux, Unix and Windows, and have gathered initial performance results that validate this approach.

[1]  Hamid Pirahesh,et al.  Recommending materialized views and indexes with the IBM DB2 design advisor , 2004 .

[2]  Alon Y. Halevy,et al.  Answering queries using views: A survey , 2001, The VLDB Journal.

[3]  Daniel C. Zilio,et al.  DB2 advisor: an optimizer smart enough to recommend its own indexes , 2000, Proceedings of 16th International Conference on Data Engineering (Cat. No.00CB37073).

[4]  Guido Moerkotte,et al.  Efficient Storage of XML Data , 2000, Proceedings of 16th International Conference on Data Engineering (Cat. No.00CB37073).

[5]  Jim Melton,et al.  SQL/XML is making good progress , 2002, SGMD.

[6]  Vanja Josifovski,et al.  Querying XML data sources in DB2: the XML wrapper , 2003, Proceedings 19th International Conference on Data Engineering (Cat. No.03CH37405).

[7]  Stéphane Bressan,et al.  Introduction to Database Systems , 2005 .

[8]  Juliana Freire,et al.  LegoDB: Customizing Relational Storage for XML Documents , 2002, VLDB.

[9]  Hans-Jörg Schek,et al.  Supporting Flat Relations by a Nested Relational Kernel , 1987, VLDB.

[10]  H. J. Pels,et al.  An introduction to database systems, sixth edition , 1997 .

[11]  Cong Yu,et al.  TIMBER: A native XML database , 2002, The VLDB Journal.

[12]  Hamid Pirahesh,et al.  Recommending materialized views and indexes with the IBM DB2 design advisor , 2004, International Conference on Autonomic Computing, 2004. Proceedings..

[13]  Eugene J. Shekita,et al.  Querying XML Views of Relational Data , 2001, VLDB.

[14]  Marcus Fontoura,et al.  Querying XML streams , 2005, The VLDB Journal.

[15]  M. Tamer Özsu,et al.  A succinct physical storage scheme for efficient evaluation of path queries in XML , 2004, Proceedings. 20th International Conference on Data Engineering.

[16]  David J. DeWitt,et al.  The Niagara Internet Query System , 2001, IEEE Data Eng. Bull..

[17]  David Maier,et al.  On the foundations of the universal relation model , 1984, TODS.