[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] RE: XML Database Decision Tree?
> -----Original Message----- > From: Leigh Dodds [mailto:ldodds@i...] > Sent: Friday, October 19, 2001 4:31 AM > To: xml-dev@l... > Subject: RE: XML Database Decision Tree? > > Native XML databases; a bad idea for data? > http://www-106.ibm.com/developerworks/library/x-xdnat.html?n-x-10181 > OK, I'll bite. 1) Storage: "decomposing the XML document to persist it to a relational database is not all that difficult" -- I have a one-word answer: "DocBook?". <sneer> "Do you really want your information's structure to vary?" Uhh, no ... but do I usually get a vote? Simplicity of storage is probably the biggest advantage of a native XML DBMS: it is easy take a chunk of XML and store it in any of the native XML DBMSs I've researched; it takes considerable analysis and programming in the XML-enabled RDBMSs. This makes native XML DBMSs valuable as reliable cacheing/logging tools for simple XML messages, not to mention making it possible to do useful things with complex documents. 2) Retrieval: "some of the native XML platforms require that the entire document be returned from the database" Uhh, which ones? Not the ones supporting XPath, which is pretty much all of them, AFAIK. "many relational database vendors are currently implementing thin XML serializer wrappers that enable them to generate XML documents on demand from relational data." Right, but I thought we were talking about XML data? 3)Searching: "searching will return only a set of XML documents; the calling program must then take further action on those documents, if necessary." True. SQL has a far richer set of data manipulation operators than XPath (XQuery addresses this to some extent), and is (loosely) based on a general theory of data, and XML is much more ad hoc. "these features are indispensable when working with traditional documents, where context plays a large role in meaning, but far less important when working with structured data" Absolutely; if you don't have relatively complex document-like XML, the *searching* features of a native XML DBMS don't buy you much over storing simple XML in an RDBMS. But if you do have "interesting" XML schema, e.g. with recursive elements, simple XPath queries can address problems that seriously challenge SQL experts. 4) Aggregation: "pulling information together and rolling it up (into sums, averages, and so on) is quite difficult." He's right. Guilty as charged, although he didn't emphasize "joins" as much as I would have. Again, XQuery will help, but what we really need is a better theoretical understanding of how hierarchical XML data relates to the relational model, sortof an "InfoSet Algebra" if you will. XQuery is at least addressing this problem of formalizing XML operators, and if even if they fail it will be dissertation fodder for a new generation of CS theorists :~)
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|