The same principles that guide service-oriented architecture (SOA) for application development can be applied to...
providing a loosely coupled approach to data access, says Anne Thomas Manes, research director at the Burton Group Inc.
In an existing SOA environment the data services approach can provide business users with access to a large variety of information stored in everything from legacy flat files to desktop spreadsheets, she explained in a Burton teleconference on Tuesday.
"One of the features of the data services approach is that it allows loosely coupled access to data for a large variety of clients," Manes said. "Basically anything that can access a service will be able to access this data."
While the data services approach is similar to SOA even to the point of applying governance to information management, it is not exactly the same because while SOA is dealing with "verbs" that provide functionality, data services work with "nouns."
"This is a little different than what people think of as services or Web services," Manes said. "That's because services are typically exposing functions or operations, and are very verb-oriented."
Data services are noun-oriented.
"These services expose data rather than a set of operations," she explained. "They are not meant to either extend or reuse some existing application logic. What they are really focused on doing is encapsulating some piece of information and exposing that and making that available."
The service-oriented approach to data both exposes and protects it, she said, because the data services can be part of SOA governance, which includes applying corporate policies covering how data can be used and who can use it. It also allows for more structure and governance of the information, thus ensuring quality data.
By making quality data accessible to business users it helps mitigate problems of "shadow IT" where departmental managers, often frustrated because they cannot get information they need, bring in IT professionals to create their own data retrieval systems. Shadow IT can created more problems than it solves, Manes warned, especially when it comes to data quality.
"One of the challenges you have when shadow IT is doing this work is shadow IT might know about one or two sources, but might not necessarily understand the semantic differences between two different data sources, and they might wind up merging it in not exactly the right way and the resulting data is not high quality data," she said.
For example, two data sources that appear to contain monthly sales data, may be using different timeframes, such as one reporting sales on a five-day week and another on a seven-day week, so the figures are not equivalent.
"But if you've got people who really understand this data actually responsible for defining a service, which is going to pull data from multiple sources, they are doing the proper semantic mapping of that information," Manes said. "You now know that the information being delivered is quality and complete and in a form that is easily consumable."
Data services are important to business people, she said, because they care more about getting that data they need – number of units sold last week for example – than about the applications that process sales.
It is also a more comprehensive approach to gathering information from all the available sources in an organization.
"Data services can consume data from almost any data source," Manes explained. "Essentially, data services are encapsulating all the various backend data sources."
While business users may be the primary target audience, Manes noted that applications can also consume information from data services.
"Say, for example, you are building a portal application and you want to pull information from a dozen different sources," she said. "Or you have a customer support application and you're trying to pull information from the 25 or 30 databases you have that contain customer information. Rather than having to implement that integration every time you need to pull that information together. You can implement an integration plan that says 'I pull data from these sources and merge it this way.' Then you have a service that can be used by any number of different applications."
Because it applies corporate governance to information management, Manes said, "Data services can become a canonical source of information within your organization." This is especially important in organizations that have a huge number of data sources, she noted.
She pointed out that according to a recent survey by the Ponemon Institute, 90 percent of organizations reported having more than 100 databases and 23 percent have more than a 1,000. She noted that in addition there are other sources of data such as spreadsheets. Data services provides a means to gather the information business users need in a structured way that with proper governance assures accuracy.
Applying the principles of SOA in data services is a higher level approach than the more common methods of accessing databases through employing an API or using an object-oriented (OO) library, Manes said. However, performance is higher with the API and OO library, she said, so data services are not well suited for transaction processing. But she said the flexibility of loose coupling provides benefits and data services can be designed with performance that is adequate for providing business users with the information they need.
While technology and tools are becoming available for data services, Manes said any tools an organization is currently using for SOA application development will also work for creating data services.
In that same vein, in her conclusion she said that data services will be most valuable for organizations that are already implementing SOA. They will have less value for organizations that do not have an SOA infrastructure because they do not have SOA's "managed communications infrastructure" (MCI) and thus lack central policies and business-wide metadata to support data services.