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

Frank Richards wrote:
> XML is a tree of elements. Naively mapping that tree onto a table causes the
> RDBMS to
> thrash it's guts out doing joins to go down the tree -- 
[ ... ]
> XML in an
> RDBMS can easily hit six or seven joins per query.

A typical, naive definition of a "nodes" table does lead to unacceptable 
performance due to the necessity of many self-joins.  It is possible, 
however, to devise a scheme for encoding nodes' context in a compact 
form, optimized for an RDBMS' indexing facility, and build a
generic table structure, capable of storing any well-formed
XML, yet does not exhibit the self-join problem.

With this technique, one can:
* leverage the mature ACID properties of commercial RDBMSs
* support any well formed XML with no additional developer or DBA effort
* provide fine-grained, random access to the content of large
* efficiently query on content and/or structure

Bill Lindsey