RE:

  • An interesting article and I believe its a healthy thing to challenge and question the accepted norms. It seems to be endemic in our industry to believe the next big thing will be the silver bullet we've all been looking for that will address all the failings of the current methodologies. Too often new practices ignore the hard-learned lessions of the old ones, despite the protesting voices of battle-hardened veterans. I think back to remote interfaces and the "just pretend the network isn't there" attitude which led to horrendously performing systems that were brittle and subject to bizarre failures.

    Having said all that I think it also good to recognise the virtues of new practices and be open minded about improvements that can be made. XML is clearly superior to relational databases in its ability to represent hierarchical data. It is also an excellent medium for storing state before it is due to be committed to a database. Over the wire represenations of XML may be more expensive that binary representations, but an XML string is a lot less resource intensive that an in-memory recordset. When assessing a technology it is important to consider all these factors.

    Given the major import of this site and therefore article is in reference to database design and practices, I whole-heartedly agree that to implement all our tables as <DocID INT>,<XMLDoc ntext> is to relegate our databases to little more than transactional file storage systems. Where does this leave reporting? (and no I dont think XML text searching is there yet). Data conversions and ETL becomes fraught with difficulty. And once we have our data in an XML document stored in a text, we have introduced a level of dependence on XML that all systems must adhere to.

    In summary I take a pragmatic view: XML is a good medium for holding in-memory state and for passing between tiers in a multi-tier environment. It also has some value when extracting data from the database into a hierarchical XML documents, and for updating multiple rows in a single query. However good database design remains just that and consists of well designed tables, columns, keys and queries. Relegating databases to XML document stores devalues and abuses them and may also turn out to be a blind alley. SQL predates XML (yes I am ignoring SGML) and may yet outlast it. <gasp>

Viewing 0 posts

You must be logged in to reply to this topic. Login to reply