September 27, 2011

XML's Growing Importance on the Mainframe

At the recent IDUG conference in Melbourne, Australia, I attended Phil Grainger's day of education. The topic of XML came up and someone asked if it was being used in DB2 for z/OS. While I'm amazed at the slow adoption of XML on DB2 for z/OS, to be honest, the first implementation of XML using CLOBs wouldn't scale and performed very poorly. However, since the introduction of XML data types with DB2 9, we can now index into documents and the processing scales very well.

I think another reason customers have been reluctant to use XML on z/OS is that, prior to DB2 10, developers could only update an entire document, rather than just parts of it. Obviously that poses its own performance and logging implications. But again, DB2 10 removes this barrier. Now you can update parts of XML documents by using the standard UPDATE statement with the XMLMODIFY function. XMLMODIFY uses basic XQuery updating expression to insert, delete or replace nodes. You can also replace values of nodes in XML documents stored in XML columns.

With its latest version, DB2 fully supports storing, updating and processing XML documents. Now is the time for DB2 DBAs on z/OS to embrace XML and use it in their applications. Why? Because XML has an important place on the mainframe. XML ever-increasily serves as the data transport layer between businesses. Those who don't use XML in DB2 for z/OS must store their data off of the mainframe (in some other database such as SQL Server, Oracle or DB2 LUW). So where is your company processing XML documents?