Skip to main content

Teiid 8.2 Alpha2 Released

8.2 Alpha2 has been posted to the downloads: http://www.jboss.org/teiid/downloads 
Teiid 8.2, is beginning to be feature packed release with a long overdue feature of exception handling in virtual procedures. A developer can write code like RAISE SQLEXCEPTION .. and capture that event in the client with a SQLException. Read more about it at https://docs.jboss.org/author/display/TEIID/Procedure+Language 
Native Query support is expanded. What is native query, how is it related? Well a native query any arbitrary command (SQL or otherwise) that is specific to a given source. With this new feature, every Teiid translator provides a mechanism, where you can submit any native command directly to the physical source through translator, and translator will execute and return the results. Why you need it? Well, taking an example of Oracle, lets say you have written a very specialized optimized query and you would like to submit as is with out Teiid re-writing it, then this is way to do that. The usecases are endless when you think about non-relational sources like NOSQL stores. However, this comes with word of caution , that is when using this feature, any abstract nature of your view where the results can be predicted is not maintained through Teiid layers. This also exposes your source directly to anybody would like to issue arbitrary commands, so use this feature with caution or lock-it down with a data role if you do not use it. Read more https://docs.jboss.org/author/display/TEIID/Built-in+Translators 

We are starting to foray into integration with Big data stores. We have released Hive based translator for HDFS in the previous release, in this release we are presenting object/infinispan translator for cache and for source integration. This will be our framework for bringing in object/document based stores into Teiid. This combined with OBJECTTABLE construct introduced in the 8.2 Alpha1 going to be very useful and productive.

Teiid 8.2 Beta1 will be in early October.  Be sure to take a test drive and log any issues found.  There is still plenty of time to get some more small features in, so come to Teiid forums and ask a question.

Redhat is also putting together a Redhat Integration week, if you have not registered, register and join us for many sessions around Redhat supported middleware integration stack, which also involves Teiid! 
 
Thank you.
 
Ramesh..

Comments

  1. It's good to see this information in your post, i was looking the same but there was not any proper resource, thanx now i have the link which i was looking for my research. . . . . .


    gurjeet

    ReplyDelete
  2. This comment has been removed by the author.

    ReplyDelete

Post a Comment

Popular posts from this blog

Teiid 8.13.3 Released

Teiid 8.13.3 is now  available .  In total 8.13.3 addresses 10 issues since 8.13.2: [ TEIID-4028 ] - adding salesforce-34 resource adapter does not work through the cli [ TEIID-4066 ] - Odata translator ClassNotFoundException: com.sun.ws.rs.ext.RuntimeDelegateImpl [ TEIID-4070 ] - Issues with resource adapters with api modules in wildfly [ TEIID-4089 ] - Teiid JDBC driver does not reset the update count when calling getMoreResults(int) [ TEIID-4093 ] - OData authentication fails with NPE when gss-pattern related properties are included in VDB [ TEIID-4096 ] - AssertionError with independent side of a dependent join that has an ordered limit [ TEIID-3050 ] - allow for more incremental insert with iterator [ TEIID-4075 ] - Netezza translator to support common table expressions [ TEIID-4098 ] - Always preserve columns order in google spreadsheets models [ TEIID-4046 ] - OData - $skip is beeing ignor

Tech Tip: Teiid SQL Language MAKEDEP Hint Explained

In this article I will explain what a MAKEDEP hint is, how and when, why it should be used in Teiid. What: MAKEDEP is query hint.  When a query hint is defined in the SQL query it influences the Teiid query planner to optimize the query in a way that is driven by the user. MAKEDEP means "make this as a dependent join". What is a Dependent Join? For example if we have query like: SELECT * FROM X INNER JOIN Y ON X.PK = Y.FK Where the data for X, and Y are coming from two different sources like Oracle and WebService in Teiid, so in relational algebra you can represent above query as Here the result tuples from node X and node Y are being simultaneously fetched by Teiid query engine, then it joins the both the results inside Teiid engine based on the specified X.PK = Y.PK condition and returns the filtered resulted to the user. simple.. Now, what if, if X table has 5 rows and Y table has 100K rows? In order to do the JOIN naively Teiid need sto read all the 5

Access Teiid from node.js

Are you writing a "node.js" application and would like to access Teiid VDB from it? If "yes", this is currently possible using NPM package "pg" .  Since, Teiid supports the PG transport, you can use this PostgreSQL client for "node.js" for accessing the Teiid. For example if you have VDB called "northwind" deployed on your Teiid server, and it has table called "customers" and you are using default configuration such as user = 'user' password = 'user' host = 127.0.0.1 port = 35432 then you can use following to write simple access program to Teiid var pg = require('pg'); var connectionString = "pg://user:user@localhost:35432/northwind" pg.connect(connectionString, function(err, client) { client.query('SELECT CustomerID, ContactName, ContactTitle FROM Customers', function(err, result) { console.log(result.rows) }); }); If you want