As computer hardware, network protocols, database engines, applications, application servers, and desktop productivity tools, proliferate the enterprise, integration of disparate applications from disparate vendors is becoming an all too common problem.
Add the emergence of standards based Distributed Computing galvanized by the Internet infrastructure and associated Internet protocols to this picture, and the need for Integration is even higher.
Increasing the industry at large is looking to a new technology deliverable known as Universal Data Access Middleware to address these systems integration pains.
"With Universal Data Access (UDA), customers receive all of the benefits of a high-level and consistent Application Programming Interface (API) that abstracts all the database complexities while providing a capability that can be specified, controlled, and managed on its own to optimize the near universal need of programs for data access".
Source IDC, 1998 Middleware Markets & Trends
At OpenLink Software, it is our opinion that a new genre of UDA middleware called the "Virtual Database", is set to emerge as the dominant UDA middleware solution for addressing the integration challenges as they exist today, and tomorrow. This new UDA middleware format plays the role of a Universal Data Access manager, fusing traditional database functionality and traditional data access middleware functionality into a single independent packaged software solution.
A Virtual Database (VDB) Engine is a UDA middleware format that transparently brings local and or remote heterogeneous databases together using logical database references called Data Source Names (DSN's). A VDB Engine exposes Metadata and Data held within these heterogeneous DSN's to clients applications and services homogeneously.
VDB Engines presume the existence of a number of Database Engines and Data Access Drivers provided by a variety of database vendors within an organization. VDB Engines provide transparent access to these heterogeneous databases via DSN's associated with the relevant data access drivers without exposing end-users or developers to the intricacies of heterogeneous data access.
A Data Source Name is a logical reference that exposes database to standards compliant or native data access drivers. DSN's provide a flexible naming and binding service for database driven applications developers and end-users alike. Applications no longer need to be inextricably linked to specific database names or specific database engines.
Figure 8.1. Distributed Computing Infrastructure Incorporating A Virtual Database Engine