Teiid Designer 8.1 incorporates a number of upgrades to both design-time modeling as well as developing and managing your runtime artifacts.
Teiid Designer 8.1 introduces the following changes and features
- Removal of the Teiid View with integration of the contents into the Eclipse Servers View;
- Support for 5.1 AS platform (Teiid 7.7.x runtime-cient) as well as 7.1.1 AS platform (Teiid 8.2.x runtime-client);
- Replacement of relational model new object actions with detailed Table, View, Procedure, Index and Function wizards;
- Enabling relational source and view model procedures to be defined as UDF's (User Defined Functions);
Replacement of the Teiid View
Teiid Designer 8.0 began the integration of the Teiid View contents into Eclipse's own Servers view. Designer 8.1 completes this process and the Teiid View has now been removed due to the duplicate behaviour. Uses should configure their JBoss server in the Servers View. Once the server is started, expansion of the server in the Server View, will display the contents of the Teiid Server installation.
Support for multiple runtime clients
The release of Teiid Server 8.0 introduced a substantial change in architecture, centred on the move from JBoss 5.1 AS to JBoss 7.1 AS. Such a move is not backward compatible hence an upgrade to Teiid Designer 8 would require an upgrade to the Teiid Server and necessarily to JBoss. This upgrade may be a substantial change in software stack to current users and as such would cause pressure to upgrade the server stack in order to simply get the benefits of Teiid Designer.
This is not an acceptable situation so Teiid Designer 8.1 has developed functionality to allow mutliple runtime-clients to operate in the same environment. Presently, Teiid 7.7.x and Teiid 8.2.x runtime-clients are offered allowing connection to their respective server versions. The choice of runtime-client is determined by the default server function, which determines the following:
- Transformation SQL syntax of newly-created diagrams and models;
- Validation of all models residing in the workspace;
- The server selected for previewing of models;
- The server selected for deployment of models.
Since the default server and its runtime version have become of far greater importance to Designer's functionality, the following have been added:
Addition of a Default Server action in the Action Guides View to aid in the changing of default server.
Display of the default server in a status panel at the foot of the Model Explorer.
When more than one teiid server is available in the Servers View, the default server is appended with a [default] moniker.
Relational Object Wizards
Back in the 7.5, 7.6 and 7.7 releases, we introduced a New Child wizards which provided the ability to construct complete Tables, Virtual Tables and relational Source Functions. In 8.1, we created a complete set of wizards that covers creation of the following:
Relational Source Model objects
- standard procedure
- source function (aka "pushdown function")
- user defined function
Relational View Model objects
- standard procedure
- user defined function
The New Child and New Sibling menus now look like:
Create Relational Table Dialog
This dialog allows creating a complete relational table including columns, unique keys, foreign keys definition and indexes.
Create Relational Procedure
The relational procedure object can represent different types of procedures, including a standard procedure, a source function or a user defined function. When the New Child > Procedure... action is launched the first dialog gives you the option of selecting the procedure type.
The second dialog customizes the Create Relational Procedure dialog based on your selected type. The following dialog provides standard procedure data input.
Below is the dialog if Source Function option is selected.
User Defined Functions require additional properties such as Java Class and Method as well as a path to the jar file containing the code as shown below.
Indexes can be created at the same time as your Table object (see Indexes tab in Create Relational Table image above) or via it's own dialog as shown below.
For View models, only Tables, Procedures (standard procedures and user defined functions) and Indexes can be created.
For view Tables and Procedures, the primary difference in the dialogs is that they include a SQL Transformation tab.
Improved VDB-workspace model synchronization
Prior to this release, if models in your project were renamed or moved, any VDBs containing these models would be out of sync with the workspace and there was no way to synchronize them except removing and re-adding the models.
We've now added VDB validation which checks VDBs for any models which have different names or paths in your workspace. The problems view will then contain warnings as shown below:
By right-clicking on one of these warnings and selecting the Quick Fix action....
... a Quick Fix dialog will be displayed showing the problem and a "Synchronize VDB" option. Select Finish to update your VDB with the lastest models.
Multi-source bindings support in VDBs
In 8.1, you'll be able to specifiy multi-source bindings for source models in your VDB.
The VDB editor's Models tab now contains a simplified model table on the left and a new tabbed panel on the right containing Model Details and Source Binding Definition tabs. Click the Multi-source check box if you wish to add additional source bindings. Note that each binding must be defined with a unique Source Name as well as unique JNDI Name representing a deployed data source you your server.
Import source models using Teiid Connection
In 8.1, we've introduced a new way to import your source models - via a Teiid Connection.
Several datasources have been added recently to the list of supported Teiid sources. Some of these sources, however, cannot be imported easily in Teiid Designer - either because they are non-JDBC or a specialized importer has not yet been created. The Teiid Connection >> Source Model import option should allow more of these sources to be imported. This importer does not replace the existing importers - many of the existing importers have additional specialized functionality. Rather, this importer will be used to supplement the existing importers by allowing additional sources to be imported in a more generic manner.
To launch the new importer, select the Teiid Connection >> Source Model option from the Importer options, as shown below:
NOTE: To launch this importer, you must have at minimum a Teiid 8.x server running in Designer. The Teiid importer deploys a dynamic VDB to Teiid containing the selected source type, then the schema (as determined by Teiid) is retrieved. We expect to move towards this type of import in future versions of Teiid Designer.
Import Wizard pg 1 - Select a Datasource:
On the first page of the wizard, select the datasource to use for the import. You can create a new source if it doesnt exist, as well as other source management functions.
Import Wizard pg 2 - Select the translator and target model
On the next wizard page, select the translator to use and the target relational model that you wish to create or update.
Import Wizard pg 3 - View the DDL
When you move to page 3 of the wizard, the dynamic vdb is deployed and the schema is retrieved. The DDL is displayed (and can also be exported if desired)
- The importer will wait up to 2 minutes for the deployed vdb metadata to load.
- In 8.3 we have an outstanding issue which prevents large DDL retrieval. This issue is expected to be resolved with the Teiid 8.4 release.
Import Wizard pg 4 - select items to import:
On the final page, you can select the items to import.