News

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.

About the Author

Rich Seeley is Web Editor for Campus Technology.