Newsletter sign-up
View all newsletters

Sign up for our technology specific newsletters.

Enterprise Java
Email Address:

Use XML databases to empower Java Web services

Integrate a native XML operational data store into your enterprise application

  • Digg
  • Reddit
  • SlashDot
  • Stumble
  • del.icio.us
  • Technorati
  • dzone

With Web services now becoming a viable technology, enterprises are beginning to see real return on investment from this technology. Web services represent a less invasive, less costly, and loosely-coupled approach to integrating heterogeneous, distributed applications and processes. Web services and service-oriented architectures (SOAs) address the integration of business processes and applications; therefore, it becomes necessary to understand how Web services interact with the data layer.

At the heart of any software architecture resides information, or data as we know it, that can span multiple locations, applications, and usage scenarios. If this data can be represented in a pervasive and standards-based manner, it becomes that much easier to enable the flow of this information throughout an enterprise and also across trading partners.

We believe XML databases provide a schema-agnostic and ubiquitous representation of information and can enable enterprise information integration (EII). By the end of this article, you will have enough information to deduce that XML databases combined with Web services enable the flow of information across loosely-coupled applications, resulting in a more responsive architecture and compelling return on investment.

Before we move on to specific examples, you will need to understand what a native XML database (NXD) is all about.

What is a native XML database?

Native XML databases are designed especially for storing XML documents. Like other databases, their basic supported features include transactions, security, multiuser access, programmatic APIs, query languages, and so on. NXDs differ from other databases in that their internal data models are based on XML only.

NXDs are most useful for storing document-centric data because they preserve document order, processing instructions, comments, CDATA sections, and entity usage, while XML-enabled databases do not. Furthermore, NXDs support XML query languages, allowing you to pose requests like, "Get me all documents in which the third paragraph after the start of the section contains a bold word." Such queries are clearly difficult to ask in a language like SQL.

In addition, NXDs prove useful for storing documents with a natural format of XML, regardless of what those documents contain. For example, consider XML messages in an SOA environment. Although these documents are probably data-centric, their natural format as messages is XML. Thus, when they are stored in a message queue, it makes more sense to use a message queue built on a native XML database than a non-XML database. The NXD offers XML-specific capabilities, such as XML query languages, and usually retrieves whole messages faster. Another example of this usage is a Web or enterprise data cache.

Uses for a native XML database include:

  • Enabling EII
  • Providing a unified master data-access layer across the enterprise
  • Validating, persisting, querying, and repurposing XML
  • Becoming XML-standards compliant
  • Aggregating content from a variety of systems (Java Database Connectivity (JDBC), HTTP, filesystem, Web services)
  • Serving as an enterprise data cache and operational datastore to improve data-access response times and relieve burden on backend systems
  • Supporting an enterprise data bus solution


Native XML database features may include:

  • Digg
  • Reddit
  • SlashDot
  • Stumble
  • del.icio.us
  • Technorati
  • dzone
Comments (2)
Login
Forgot your account info?

Very informativeBy Kevin Peterson on October 20, 2009, 9:15 amVery informative article. Humanities Papers Coursework Assignment Dissertation

Reply | Read entire comment

People rely on the internet...By Anonymous on May 9, 2009, 5:01 amPeople rely on the internet. And when people have no internet, they lose access to a lot of the information they depend on – whether it is their work, their financial...

Reply | Read entire comment

View all comments

Add comment
Anonymous comments subject to approval. Register here for member benefits.
Have a JavaWorld account? Log in here. Register now for a free account.
Resources