|
|
YOUR FEEDBACK
SOA World Conference
Virtualization Conference $200 Savings Expire May 16, 2008... – Register Today! Did you read today's front page stories & breaking news?
SYS-CON.TV |
TODAY'S TOP SOA & WEBSERVICES LINKS Feature
David & Goliath: A Comparison Of XML-Enabled And Native XML Data Management Techniques
A comparison of XML-enabled and native XML data management techniques
Jun. 28, 2005 11:00 AM
Digg This!
Page 1 of 4
next page »
Due to the great increase of data in XML format, companies increasingly have to face the issue of how to manage this data efficiently. To do this it is important to take advantage of XML's potential, and to integrate with applications that access data stored in relational database management systems (RDBMS).
In this article we present, in a graphical form, the response times for some common operations using SQL and XPath. We store XML data using different storage and management solutions: Oracle ("Goliath") - an XML-enabled database, and eXist ("David") - a native XML database (NXD). eXist is a very recent DB that needs maturing but presents many virtues; "Goliath" is Oracle, a mature, robust, secure, and reliable RDBMS. We're bringing these two databases face-to-face like "big titans" to demonstrate which is the best at different development scenarios. The main advantage that we have found for the eXist NXD is the direct XML management it offers as a native XML database. Another advantage is that eXist is open-source software, which also provides all of the requisite libraries. The means that it offers an inexpensive technology option, since only training costs will be incurred in its use. In XML data management, companies wonder how to manage XML data and integrate with legacy RDBMS. Database queries must comply with the same structure as XML data. The access to RDBMS is direct through SQL sentences. NXD allows access to XML data directly. Figure 1 shows the three-tier architecture used in this experiment.
XML Data Management
Oracle (XML-enabled) For using Oracle XML-enabled database there are two main solutions:
XMLType:CLOB The Oracle XMLType:CLOB stores the whole document, which is good because we don't loose context or data hierarchy, and XPath's queries are allowed. In addition, it allows us to use the XPath syntax to update specific elements and attributes without rewriting the document. This solution is not as good as object-relational solution querying and updating data. Later, we will present the response times using XMLType query engine. In previous database versions (Oracle 8i, for example) we had no XMLType, we only had CLOB choice, and there was no way to update an XML document's part. It was necessary to change the whole document and XPath's queries were not allowed. Using more recent Oracle RDBMS versions such as 9i and 10g, this kind of XML management is much better supported. Also, this has become the most common solution for unstructured XML documents (document-centric). XMLType has predefined member functions to extract XML nodes and fragments. We use various functions such as extract( ) (this uses XPath to return fragments as XMLType), and getStringVal( ) (which returns a document as a string). These functions are embedded into SQL sentences to provide XML functionality. For example:
Create table:
Insert document into a table:
Update: Page 1 of 4 next page »
XML JOURNAL LATEST STORIES . . .
SUBSCRIBE TO THE WORLD'S MOST POWERFUL NEWSLETTERS SUBSCRIBE TO OUR RSS FEEDS & GET YOUR SYS-CON NEWS LIVE!
|
SYS-CON FEATURED WHITEPAPERS MOST READ THIS WEEK BREAKING XML NEWS
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||