Chapter 9. Migrating legacy virtual database files to DDL format
The data virtualization Technology Preview requires that you define the structure of virtual databases in SQL-MED DDL (data definition language) format. By contrast, the structure of legacy Teiid virtual databases, such as those that run on Wildfly, or on the Red Hat JBoss Data Virtualization offering, are defined by using files that are in .xml
or .vdb
format.
You can reuse the virtual database designs that you developed for a legacy deployment, but you must first update the format of the files. A migration tool is available to convert your files. After your convert the files you can rebuild the virtual databases as container images and deploy them to OpenShift.
Migration considerations
The following features that were supported in virtual databases in JBoss Data Virtualization and Teiid might be limited or unavailable in this Technology Preview release of data virtualization:
- Data source compatibility
- You cannot use all data sources with this release. For a list of compatible data sources, see Section 2.1, “Compatible data sources”.
- Internal distributed materialization
- Not available.
- Resultset caching
- Not available.
- Use of runtime metadata to import other virtual databases
- DDL must be used to specify metadata for virtual databases.
- Runtime manipulation of multisource vdb sources
- Not available.
You can use the migration utility in the following two ways:
- To validate a VDB file only
- Use this method to check whether the utility can a successfully convert a VDB file. The utility converts the VDB file and reports validation errors to the terminal. If there are no validation errors, the utility displays the resulting DDL, but it does not save the converted DDL to a file.
- To validate and a VDB file and save it to a DDL file
- The file is saved only if there are no validation errors.
The migration tool works on XML files only. Files with a .vdb
file extension are file archives that contain multiple folders. If you have legacy files in .vdb
format, use Teiid Designer to export the files to XML format, and then run the migration tool to convert the resulting XML files.
Prerequisites
-
You have a legacy virtual database file in
.xml
format. -
You download the
settings.xml
file from the Teiid OpenShift repository. Maven uses the information in the file to run the migration tool.
9.1. Validating a legacy virtual database XML file and viewing it in DDL format
You can run a test conversion on a legacy virtual database to check for validation errors and view the resulting DDL file. When you run the migration tool in this way, the converted DDL file is not saved.
Procedure
Open the directory that contains the
settings.xml
file that you downloaded from the Teiid OpenShift repository, and type the following command:$ mvn -s settings.xml exec:java -Dvdb=<path_to_vdb_xml_file>
For example:
$ mvn -s settings.xml exec:java -Dvdb=rdbms-example/src/main/resources/vdb.xml
The migration tool checks the specified
.xml
file, and reports any validation errors. If there are no validation errors, the migration tool displays a.ddl
version of the virtual database on the screen.
9.2. Converting a legacy virtual database XML file and saving it as a DDL file
You can run the migration tool to convert a legacy virtual database file to .ddl
format, and then save the .ddl
file to a specified directory. The migration tool checks the .xml
file that you provide for validation errors. If there are no validation errors, the migration tool converts the file to .ddl
format and saves it to the file name and directory that you specify.
Procedure
Open the directory that contains the
settings.xml
file that you downloaded from the Teiid OpenShift repository, and type the following command:$ mvn -s settings.xml exec:java -Dvdb=<path_to_vdb_xml_file> -Doutput=<path_to_save_ddl_file>
For example:
$ mvn -s settings.xml exec:java -Dvdb=rdbms-example/src/main/resources/vdb.xml -Doutput=rdbms-example/src/main/resources/vdb.ddl