- PureXML
pureXML is the native XML storage feature in theIBM DB2 data server. pureXML provides query languages, storage technologies, indexing technologies, and other features to support XML data. The word "pure" in pureXML was chosen to indicate that DB2 natively stores and natively processes XML data in its inherent hierarchical structure, as opposed to treating XML data as plain text or converting it into a relational format [http://www.ibm.com/developerworks/blogs/page/datastudioteam?entry=purexml_and_purequery_what_s] .Technical Information
DB2 includes two distinct storage mechanisms: one for efficiently managing traditional SQL data types, and another for managing XML data. The underlying storage mechanism is transparent to users and applications; they simply use SQL (including SQL with XML extensions or SQL/XML) or XQuery to work with the data.
XML data is stored in columns of DB2 tables that have the XML data type. XML data is stored in a parsed format that reflects the hierarchical nature of the original XML data. As such, pureXML uses trees and nodes as its model for storing and processing XML data. If you instruct DB2 to validate XML data against an XML schema prior to storage, DB2 annotates all nodes in the XML hierarchy with information about the schema types; otherwise, it will annotate the nodes with default type information. Upon storage, DB2 preserves the internal structure of XML data, converting its tag names and other information into integer values. Doing so helps conserve disk space and also improves the performance of queries that use navigational expressions. However, users aren't aware of this internal representation. Finally, DB2 automatically splits XML nodes across multiple database pages, as needed.
XML schemas specify which XML elements are valid, in what order these elements should appear in XML data, which XML data types are associated with each element, and so on. pureXML allows you to validate the cells in a column of XML data against no schema, one schema, or multiple schemas. pureXML also provides tools to support evolving XML schemas.
IBM has enhanced its programming language interfaces to support access to its XML data. These enhancements span Java (JDBC), C (embedded SQL and call-level interface), COBOL (embedded SQL), PHP, and Microsoft's .NET environment (through the DB2.NET provider).
History
pureXML was first included in the DB2 9 for Linux, Unix, and Windows release, which was codenamed Viper, in June 2006 [http://www-03.ibm.com/press/us/en/pressrelease/19781.wss] . It was available on DB2 9 for z/OS in March 2007 [http://www-03.ibm.com/press/us/en/pressrelease/21189.wss] . In October 2007, IBM released DB2 9.5 with improved XML data transaction performance and improved storage savings [http://www-03.ibm.com/press/us/en/pressrelease/22455.wss] .
Competition
DB2 is a hybrid data server—it offers data management for traditional relational data, as well as providing native XML data management. Other vendors that offer data management for both relational data and native XML storage include Oracle with its 11g product and Microsoft with its SQL Server product.
pureXML also competes with XML-only databases like eXist and MarkLogic. See
XML database for a more complete list of XML databases.User Groups
The
International DB2 Users Group (IDUG) is an independent, not-for-profit association of IT professionals who use IBM DB2. IDUG provides education, technical resources, peer networking opportunities, online resources and other programs for DB2 users.Online Communities
The following online communities allow pureXML users to network with fellow professionals:
* [http://www.linkedin.com/groups?gid=129185 pureXML Group on LinkedIn]
* [http://www.channeldb2.com/group/purexml pureXML Group on ChannelDB2]Books
IBM International Technical Support Organization (ITSO) has published the following books, which are available in print or as free e-books:
* [http://www.redbooks.ibm.com/abstracts/sg247298.html?Open DB2 9: pureXML Overview and Fast Start]
* [http://www.redbooks.ibm.com/abstracts/sg247315.html?Open DB2 9 pureXML Guide]Education and Training
The following pureXML classroom and online courses are available from IBM Education:
* [http://www-304.ibm.com/jct03001c/services/learning/ites.wss/us/en?pageType=course_description&courseCode=CG130 Query and Manage XML Data with DB2 9] . IBM course CG130. Classroom. Duration: 4 days.
* [http://www-304.ibm.com/jct03001c/services/learning/ites.wss/us/en?pageType=course_description&courseCode=CG100 Query XML Data with DB2 9] . IBM course CG100. Classroom. Duration: 2 days (first 2 days of CG130).
* Managing XML Data in DB2 9. IBM course CG160. Classroom. Duration: 2 days (last 2 days of CG130).
* [http://www-304.ibm.com/jct03001c/services/learning/ites.wss/us/en?pageType=course_search&sortBy=5&searchType=1&sortDirection=9&includeNotScheduled=15&rowStart=0&rowsToReturn=20&maxSearchResults=200&searchString=CT140&language=en&country=us DB2 pureXML] . IBM Course CT140. Self-paced study plus Live Virtual Classroom.See Also
*
IBM DB2
*XML database References
External Links
* [http://www.ibm.com/software/data/db2/xml/ pureXML Product Page]
* [http://www.ibm.com/developerworks/wikis/display/db2xml/Home pureXML Wiki]
* [http://www.ibm.com/developerworks/forums/forum.jspa?forumID=1423 pureXML Forum]
* [http://www.ibm.com/developerworks/blogs/page/purexml pureXML Team Blog]
* [http://www.nativexmldatabase.com Native XML Database Blog]
Wikimedia Foundation. 2010.