Thursday, March 14, 2013

Teiid 8.3.0.Final Released

It took us little more than 12 weeks from 8.2 Final, however Teiid 8.3.0.Final is released with many many exciting features.

The features we really excited about are
  1. OData Support - Teiid can now either consume from a OData source or produce results using OData protocol. See related blogs on this topic.
  2. JSON Support - Similar to how user can use SQLXML and define results in XML, Teiid is introducing JSON  language constructs, such that you can produce results in JSON. Now you can generate that Rest web service that returns JSON!!!
  3. Source Temp Tables - create a temporary tables on sources, and generate plans that are efficient in pushing down more work towards the sources.
Many more.. See below for full list

Teiid 8.3 is still based on JBoss AS 7.1.1  The JBoss folks have decided not to release any community releases off of AS 7.x branches, however they recently announced  that EAP 6.1-alpha1 (a productised version of JBoss AS that RedHat offers subscription) is released to community developers.  We will release Teiid 8.4 based on EAP 6.1.x.

Highlighted Features:
  • TEIID-2253 Multi-source improvements - multi-source planning was significantly improved, which will result in much better plans when using multi-source models. The user may also now configure the multi-source column name, auto-populate the multi-column in the actual metadata, and use non-literal multi-source column values.
  • TEIID-1557 Generated Key Retrieval - JDBC now supports generated key retrieval, see the Client and the Developers Guides for more.
  • TEIID-2311 Permission Conditions - data roles can now specify SQL conditions that will enforce row-based security and physical table insert/update checked constraints. See the Reference Guide for more.
  • TEIID-2341 Join Planning Improvements - ANSI join structures can now be preserved with the preserve hint, i.e. FROM /*+ PRESERVE */ (tbl1 INNER JOIN tbl2 ON ...), which is similar to the Oracle ORDERED hint. Also sources restricted to only outer joins (such as Salesforce) can have INNER or effectively INNER joins pushed to them.
  • TEIID-2312 Source security domains - Ldap, Salesforce, google-spreadsheet and ws (basic auth) translators can now define "security-domain" in their resource-adaptor configuration for security. When defined along with caller-identity the logged in user's credentials are passed to source for authentication.
  • TEIID-2182 Events - Capture the VDB loading and unloading events now from registering a listener on EventDistributor
  • TEIID-2241 CLI script for Standalone - Install Teiid into any AS7 standalone configuration using the provided CLI script.
  • TEIID-2152 Basic MERGE support - support for a simplistic MERGE statement was added. See the Reference for more.
  • TEIID-1757 OData Translator - A translator for OData based sources has been added. 
  • TEIID-1854 OData Transport - Access any deployed VDB into Teiid using OData protocol, essentially Teiid is now a OData server.
  • TEIID-2363 Concurrent Join Processing Enhancements - both sides of a join will processed more when possible. See also the org.teiid.joinPrefetchBatches system property in the Admin Guide.
  • TEIID-196 Source Temporary Tables - temporary (locally scoped) tables may be defined at runtime against physical sources with a CREATE FOREIGN TEMPORARY TABLE statement. See the Reference for more.
  • TEIID-2159 JSON Production - added the JSONARRAY, JSONARRAY_AGG, JSONOBJECT, and JSONPARSE constructs for producing JSON. See the Reference for more.
  • TEIID-2248 Bulk Salesforce Inserts - added the ability for the Salesforce translator to perform bulk inserts.

This work was due in large part to the great participation from Teiid community users, a BIG thanks to all who participated in providing valuable input through their JIRAs and community suggestions.

Get Involved with Teiid:

Got a idea to better way plan a query or some cool feature that Teiid can implement, come and open a forum discussion, let's get it captured and put it on roadmap.

Wrote a blog? did any performance testing on Teiid? Tell us what worked and what didn't? Help us fix the issues to make Teiid successful.

Thank you.

Ramesh & Steve