Digging into Data with SOAs
- By Alan Radding
- April 4, 2005
Until recently, most IT managers have focused on deploying service-oriented architectures on transaction systems and production apps, but now, some managers are exploring how to apply SOAs to the data warehouse and activities like business intelligence and business analytics.
Previously, organizations coded their applications and reports to connect with specific data for specific purposes, effectively hardwiring their data infrastructure. The SOA "eliminates hardwiring applications to the data," explains Wayne Eckerson, director of research at The Data Warehouse Institute.
Not only does the SOA decouple the request for data from specific databases, applications and servers but it "gets you out of the business of writing each new report from scratch," Eckerson says. Instead, the organization creates a reporting service that will pull the requested information from multiple data sources if necessary and massage the various pieces of data as needed to return the desired result. Using a services approach, the organization can generate what amounts to custom reports in days, if not hours, rather than the weeks, or even months, it usually takes to produce custom reports, according to Eckerson.
Through a service interface, organizations can do more with the query results. For instance, they can combine the results with other services to create a composite application.
In truth, you don't really need much in the way of tools, Eckerson suggests. "Any front end built in J2EE can call a Web service," he says. Any tool that will spit out or take in XML will do the job.
The business intelligence product vendors have jumped in with tools. "We're adding a level of abstraction so you don't need to know about the physical table or the schema," says John Kopcke, CTO, Hyperion Solutions. The result is a loose coupling between request and the data, he says.
Beyond that, organizations need the full set of data warehouse tools, often, tools they already have. These include middleware, messaging and ETL tools to pull data and aggregate it from data variety of sources. The business intelligence and business analytics algorithms can be built into the services themselves.