Abstract
1. OVERVIEW ROLEX is a research system for closely coupled XML-relational interoperation [2]. Whereas typical XML-based applications interoperate with existing relational databases via a “shred-and-publish” approach, the ROLEX system seeks to provide direct access to relational data via XML interfaces at the speed of cached XML data. To achieve this, ROLEX is integrated tightly with both the DBMS and the application through a standard interface supported by most XML parsers, the Document Object Model (DOM). Thus, in general, an application need not be modified to be used with ROLEX. With the DBMS providing performance qualitatively similar to cached data, XML applications can rely on it for concurrency control and recovery services. To support our integration model and performance goals, ROLEX is built on the DataBlitz Main-Memory Database System, allowing us to capitalize on low-latency access to data while still providing concurrency control and recovery [1]. The DOM interface supports the expected navigation functions: parent-to-child, child-to-parent, and sibling-to-sibling. A DOM interface to an XML view query supports all the DOM operations and behaves as if the user were navigating the XML document resulting from the query. In ROLEX, we implement a virtual DOM tree that goes a step further by providing the same interface without creating a physical DOM tree. A novelty of ROLEX is that it uses a navigational profile for the user or application when it optimizes view-query plans. While navigational profiles can, in principle, be quite complex, we currently adopt a very simple model. If n is a node in the schema tree with parent p, the navigation profile stores the probability that some node in the DOM tree generated by n will be visited given that its parent, generated by p, has been visited. Query output is produced by a navigable query plan. It provides, for each node n in the schema tree of a view query, two entities: (1) a subplan for evaluating the tag query for n, and (2) a navigation index. The navigation index serves to materialize the output of the tag query and supports efficient lookup based on parameter values,
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have
Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.