| ||
In general, XML documents can be used as, or within, a database when the overall physical size of the database is small. Additionally, some types of datasets can be so incredibly complex that a relational database model might stumble. XML, being naturally an object modeling derivative, can be highly effective at handling highly complex data modeling. However, even a highly complex database model, within the scope of a very large set of data, will very likely still be far more efficient if implemented in a relational database.
The advent of object databases was supposed to unseat the marketing positions of the relational database vendors. This did not happen. This unseating did occur in previous decades with respect to the development of hierarchical, network, and relational database technology. Relational databases vendors tend to rapidly incorporate some of the aspects of new technologies. They often do this in a kludgy manner. However, when it comes to fighting off the competition of object database vendors, the relational database vendors won that little battle hands down over a decade ago. Will native XML databases unseat relational database vendors? This is unlikely because some of the more rapid development relational database vendors , including Oracle Database (see Chapter 5) and SQL Server from Microsoft (see Chapter 6) already incorporate XML data types.
In Chapters 5 and 6, it was adequately demonstrated that an XML data type is effectively embedding a native XML database into a relational database. Yes, it is a bit of a kludge . And the same thing was done when incorporating object methodologies into relational databases. The underlying structure remains relational database technology. However, it does work. And the commercial users of these relational databases are not shifting to XML in significant numbers yet, if at all. As with object database technology, XML is being used quite extensively, where it can be, and where it is most usefully employed. These implementations are quite typically new implementations (newly built software), or situations that can easily resolve age-old problems, such as transferring data between disparate metadata structures. B2B data transfers is a good example of this type of activity. The biggest issue with legacy software, and currently used things is as it always was. Changing everything across the board is simply too expensive. If new technology is useful it will be utilized where it makes financial sense. If new technology is better, then it will gradually take over.
One of the biggest issues with object databases and object methodologies, in general, is that of reporting. Performance is so poor that it makes object database storage pointless, where any kind of output of more than a single data item (a row or record) is required. The same would apply to XML documents, when reading those documents not in the sequence or hierarchy that they are created in. Reporting is an essential commercial requirement.
One could dictate many pros and cons when discussing the capabilities of relational databases, as compared to native XML databases. Additionally, XML documents are somewhat similar in structure to object data models, and thus these two can also be compared against relational modeling techniques. There is much to be said for relational and object (including XML) technologies. Both are good and bad. Anything further written by myself on this topic may very well deteriorate into personal opinion. My only comment is that if a new technology is good, it will gradually come into general use. It will eventually succeed its predecessor. So watch this space!
The power of XML may be unlimited in some respects. It is flexible and thus adaptable, perhaps to any situation and any requirement. So, it may very well be inevitable that XML will, some time in the future, become an integral factor in the way in which data is stored and manipulated. In other words, XML may be the future of both applications and databases, in one way or another. The only question that remains is to a degree that is yet to be seen. Where some XML standards fail to gain a foothold via popularity of use, others succeed. The future of XML is already determined. As already stated, the only question that remains to be seen is how far will XML be utilized? How far will it go? What do you think?
| ||