OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: storing xml files into database



Title: Message
Dear Chris. While I don't dispute that there are situations where a native XML store is better than the mapping, let me address some of your points below.
 
I think it is important to note that XML-enabled relational databases have some specific scenarios in mind (integrating relational data/schemata with XML in a bi-directional way) that do not work that well for storing "document-centric" XML. Thus, use the tools that fit the task at hand.
 
Best regards
Michael
-----Original Message-----
From: Chris Parkerson [mailto:chrisp@exceloncorp.com]
Sent: Monday, September 10, 2001 6:18 AM
To: gharesh@vsnl.com; 'Chuck White'
Cc: 'Xml-Dev'
Subject: RE: storing xml files into database

Haresh:

 

[Michael Rys] <snip/>  

A couple of questions that will quickly let you know that an RDBMS is not going to work:

1)         Are you dealing with XML data whose schema is not necessarily consistent from document to document or the schemas change often?  The key advantage of using XML as a data model is extensibility: you lose that advantage when you store it in an RDBMS.

2)         Do you need to update this data often?  All current RDBMS implementations (except for a beta utility available for Microsoft for SQL Server) do not allow incremental document updates.  You must replace entire documents when you need to make a change as all of the RDBMS systems store the data as BLOBs.  Most of our competitors in the XML DB world also do not allow incremental updates.  This is very important should data need to change fairly often.

The update facility of SQL Server is released and fully supported (and not beta). It is shiped as a web release via msdn.microsoft.com/xml and /sqlserver.

3)         Is performance and scalability important to you?  We’ve tried both Oracle and DB2 with over 100,000 documents, which is a relatively small amount.  Oracle fails the benchmark, and DB2 goes very slow.  Why?  They have to parse the data on the fly to do anything with it: query, index, anything.  eXcelon XIS stores the data in parsed form so we eliminate this overhead PLUS our caching technology is distributed and works like an in-memory database to give you really fast access.

4)         Do you have data that comes from business partners or from systems where you really do not have much control over the schema?  Does that data need to be integrated into your common XML data model?  If so, keeping that all coordinated in an RDBMS is very difficult.  This is the problem that has afflicted most of our customers and a primary reason why they failed in using an RDBMS.

 If you need to integrate with your existing relational data model, then the story of course looks different.

5)         How many nodes wide and how many nodes deep is your XML data?  If you decide to go the mapping route (which is the only way to avoid having it stored as a BLOB), the mappings will fail or become immensely complex the wider and deeper the XML data gets

This is a fairly vague statement. You need to do the mapping once and there are tools available (at least for the SQL Server annotated schema approach) that provide you with a simple to use visual interface. Can you provide more information why and when mappings fail or become immensely complex in the context of data-centric XML documents (and not Shakespeare)?