Can schema agnostic databases boost Web services?
When Excelon Corp. disclosed plans for its Extensible Information Server
(XIS) XML database to support Oracle 9i, the company's Coco Jaenicke was often
asked an important question: Why would one organization need two databases to
store XML data?
Jaenicke used the opportunity to explain the place of the ''schema agnostic''
database in Web services architecture, especially for long-running business
processes such as mortgage applications.
''A backend database such as Oracle is very good for durable data, fixed
schema, highly typed, highly normalized data that you're going to store for the
rest of your life,'' explained Jaenicke, XML evangelist for Burlington,
Mass.-based Excelon. ''An XML database, which is schema agnostic, is much better
tuned to manage active data. And what we mean by active data is data that is
being actively updated, actively audited, actively processed.''
While Web services are generally presented as a bam-bam-bam operation where
step 1 triggers step 2, then step 3 and its done, Jaenicke said many business
processes that may interact with Web services take days, weeks and even longer.
In the example of processing a mortgage application, which can take a month
to finalize, the application may receive data from third party Web services
providing quotes or risk assessments in a variety of XML schema, Jaenicke said.
That is where the schema agnostic database is required, she argued, to store
information coming from a variety of systems, and maintain persistence during
this long-term process.
So how does she define schema agnostic?
''We define it as the data that does not have to conform to the schema,'' she
answered. ''In a relational database, if you define schema in advance, then
every time you throw data at the database, it must match that schema. There are
many reasons why that is a good way to deal with data if you want data that is
going to be in a predictable format. Schema agnostic is exactly the opposite.
You do not define the data structure upfront. A schema agnostic database system
can take data, and no matter what the schema is, as long as it's well formed
XML, it can parse it and store it in the structure that is supplied by the XML
tree. But that XML tree does not have to adhere to a predefined schema.''
Jaenicke said an agnostic database that can accept XML data from a variety of
systems will make it easier for applications to interact in a Web service or a
Service Oriented Architecture.
For more information, click on www.exln.com.
Rich Seeley is Web Editor for Campus Technology.