|
Integrating XML and Relational
Database Technologies:
A Position Paper
Introduction
XML is an open standard for defining data
elements on a Web page and business documents. In contrast to the
HTML markup language, which defines how elements on a Web page are
displayed, XML defines the structured information those elements
contain.
XML was originally developed as an application
profile of SGML to use over the Internet. But the ease of both writing
applications that process XML document and creating XML documents
has made XML an instant success for a variety of other application
domains, too. In fact, a truly amazing number of applications based
on XML are currently under development. One area where the benefits
of XML have become immediately apparent is data exchange. For instance,
XML has been combined with EDI (Electronic Data Interchange).
There are clear benefits to using XML. First,
the design of XML is formal and concise, so it's relatively easy
to write data-exchange protocol processors that rely on standard
XML components. Second, since XML documents are human-readable,
a developer can figure out what the content means by simply inspecting
the XML document. Third, momentum is building to create standardized
XML protocols-also referred to as XML Schemas-for almost any type
of business. So there's an excellent chance that in the near future
a majority of transactions will be carried out using XML as the
underlying infrastructure protocol.
The shift from binary protocols to XML-based
protocols resembles the computing industry's move from mainframe-centric
terminals and central processing units to the client/server paradigm
of distributed computing. Like client/server before it, XML requires
new ways of storing data. In the shift from mainframe-centric to
client/server computing, a major side effect was the development
of relational database servers. Similarly, in the case of the move
to XML protocols, there is a noticeable trend toward not only exchanging
XML data, but also storing it directly as XML data. To support this
practice, some relational database vendors and independent middleware
vendors have released native XML database products and extended
relational database features to support XML.
Before discussing the integration of XML
and relational database technologies, let's look briefly at native
XML database technology. In many instances, native XML database
technology seems derived from the object-oriented database technology
of the early '90s-especially in its indexing techniques. Compared
with object-database technology and its lackluster track record,
native XML databases benefit from an application's need to retrieve
and store data directly as XML data. While this is a tremendous
advantage for XML data that is content or structured text rather
than data, it becomes cumbersome when the same XML content has to
be mapped to corporate data, such as that stored in relational tables.
Given the existing RDBMS installed base, unless the XML middleware
industry can seamlessly integrate native-XML-database and relational-database
technologies, it will be extremely hard for the native-XML technology
to thrive.
Looking ahead, we believe an increasing
number of developers will shift to an XML-based development paradigm.
But this shift will not bring about a revolution in the underlying
database technology. On the contrary, we expect that relational
technology will remain the dominant storage technology-albeit, with
important extensions to XML-and that it will coexist with the new
native-XML database technology. Of course, native-XML database technology
arose due to the intrinsic differences between the relational-database
paradigm and the XML paradigm, the so-called XML-relational impedance
mismatch. But we also believe that just as the object-relational
mapping technique simplifies object persistency on relational repositories,
XML mapping technology can bridge the gap to properly retrieve XML
data from relational databases and persistent XML data on relational
databases.
Next: Conclusions
Back: Abstract/Title
Page
|