MMHeader

What is a VDB?


VDB Description

A virtual database is a container for components used to integrate data from multiple data sources, so that they can be accessed in a federated manner through a single, uniform API.

A VDB contains models, which define the structural characteristics of data sources, views, and Web services.



How is a VDB Defined?

Dimension Designer l lets you not only define source models and import metadata and statistics from them, but also allows you to define relational and XML views on top of those sources. This allows you to abstract the structure of the information you expose to and use in your applications from the underlying physical data structures


VDB Validation

VDBs can contain one or more models representing the information to be integrated and exposed to consuming applications. Models must be in a valid state in order for the VDB to be used for data access. Validation of a single model means that it must be in a self-consistent and complete state, meaning that there are no "missing pieces" and no references to non-existent entities. Validation of multiple models checks that all inter-model dependencies are present and resolvable.

A VDB must always be in a complete state, meaning that all information is contained within the VDB itself -- there are no external dependencies.


Deploying a VDB for Data Access

After a VDB is defined, it must be deployed to the MetaMatrix query engine to be accessed.

In Dimension VDB is also automatically deployed to the query engine inside the MetaMatrix WAR file when you have finished designing your Web services. Once this WAR is deployed to a Web Serverm your Web service will be accessible via SOAP


VDB and Connector Bindings

VDBs contain two primary varieties of model types - source and view. Source models represent the structure and characteristics of physical data sources, whereas view models represent the structure and characteristics of abstract structures you want to expose to your applications.

Source models must be associated with a single connector binding. It is possible that multiple models may use the same binding, but each model must have a binding. The connector binding provides the connectivity to the source for the query engine when it is executing federated queries against multiple sources.

You can define connector bindings in the MetaMatrix Designer if you are using MetaMatrix Dimension or MetaMatrix Enterprise. Alternatively, if you are using MetaMatrix Query, bindings are automatically created "under the hood" when you add a source of a specific supported data source.

Any passwords required by bindings for connecting to sources are stored in encrypted form.

Once defined, connector bindings are stored with a VDB, so that when a VDB is exchanged, the existing bindings can be used. .

 


VDB Execution

VDBs can be tested in MetaMatrix Designer by issuing SQL queries in the VDB Execution perspective. In this way, you can iterate between defining your integration models and testing them out to see if they are yielding the expected results.

Your VDB must have connector bindings associated with all source models in order to be executable. You can define the bindings for each source model in the Designer.


VDB File Format

VDBs are stored in an archive file format, similar to a standard Java JAR format.

VDB archive files can be exchanged. A VDB created in MetaMatrix Query can be opened in the MetaMatrix Dimension or MetaMatrix Enterprise Designer. Similarly, a VDB defined in MetaMatrix Dimension or Enterprise can be used in any other MetaMatrix product.

If you are using MetaMatrix Enterprise, VDBs can be exported from the MetaMatrix Enterprise Console and subsequently re-imported into another Console, or opened in Designer


Related Topics

Create a New VDB

Web Services at a glance

Web Service Advisor View

Getting Started with Metamatrix Dimension