Fog Creek Software
Discussion Board




Native XML databases boost e-business transaction

This was from zdnet. I think it takes this hype to an entirely new (and completely useless) level. I mean what is a "native  XML" database anyway. I think SQL Server 2000 claims to store data natively as XML (at least that's what the people at MS say)
http://techupdate.zdnet.com/techupdate/stories/main/0,14179,2822819,00.html

Native XML databases boost e-business transaction speeds
By Maggie Biggs
November 9, 2001
Extensible Markup Language (XML) is quickly becoming the de facto standard for exchanging corporate data via structured documents--whether internally, with business partners, or via public applications across the Internet. However, the data you need to exchange will likely be stored today in a relational database or some other data format rather than in an XML document. Therefore, you need to implement a process to translate data from its current format into XML and from XML back to the formats you use internally to process data.
You could use some of the tools that are available with relational databases such as Oracle's Oracle9i and IBM's DB2. These tools can translate structured and even unstructured data to and from XML. However, if you use these tools to translate data on-the-fly when an XML exchange is requested, you may actually increase the processing time of XML-based transactions as well as potentially slow other applications that might be accessing the relational database.
Alternatively, you might consider another approach--native XML databases. These databases--relatively new to the marketplace--do not replace your relational databases. Rather, they act as an intermediate cache between your Web applications and your back-end data sources (e.g., relational databases, data stored in file systems) to speed up application performance.
Beyond speed, native XML databases are useful because they provide a standard way to let you translate data from multiple back-end data sources into XML and vice versa. This is an improvement over implementing XML translation techniques for each data source you might have. Thus, all of your applications that need to exchange XML data can use one native XML database to cache XML documents. This will reduce the overall effort needed to manage XML translations.

Rob Schlaff
Friday, November 16, 2001


I'm a programmer.
I used to program doing very interesting things with XML and XSLT, server side.

I can walk thru DOM with blind eyes.
And I _never_ get to understand these kind of articles.

Now I look like
doing haiku.

This is the line
about some butterfly or something similar.

Leonardo Herrera
Friday, November 16, 2001

SQL Server 2000 does not store data natively as XML. It can return query results as XML, but that's not at all the same thing.

Mike Gunderloy
Saturday, November 17, 2001

A "native XML" database would be significantly different from a relational database. An object-oriented database would be closer. The difference is the flat table structure of a relational database and the arbitrary network structure of an XML document. It takes a good bit of effort to build arbitrary structures out of tables, relations, and SQL.

So what? 80% or more of business transactions require structures that are far from arbitrary. They're fairly simple, maybe with parent/child, 1:N, relationships. The remaining 20% mostly have some N:M relationships that still are fairly easy to pull apart in a relational DB.

Maybe there are 5% or fewer cases where something more aribtrary is really useful. Maybe a graph or network of some objects.

Patrick Logan
Sunday, November 18, 2001

learn group theory in pure maths.

now apply it together with the 3gl erd & function & entity analyses & hey presto you get the true OOPS & OODS that you've always prayed for !!!

john willsher
Friday, August 13, 2004

*  Recent Topics

*  Fog Creek Home