Skip to main content

Welcoming the Komodo dragon

Komodo dragon
noun Ko·mo·do dragon \kə-ˈmō-dō-\
:  an Indonesian monitor lizard (Varanus komodoensis) that is the largest of all known lizards and may attain a length of 10 feet (3 meters) 

(See http://www.merriam-webster.com/dictionary/komodo%20dragon

For the better part of 13 years, the primary relational modelling support behind the Teiid runtime VDB has been backed by a handful of Eclipse's EMF E-core models. Just the fact of using the "E-core" sends shivers down my spine, but it's served it's purpose for over a decade. Unfortunately, as we move forward with Teiid runtime improvements, it's become apparent that sticking with EMF (and maybe Eclipse) has become a roadblock to implementing new and more robust modelling concepts.

So, over the past year, the Teiid Designer team has been gearing up to remove the burdens of that Eclipse framework and embracing the simplicity of traditional DB terminology. In particular DDL. This initiative has been code-named Komodo as a reference to both it's Teiid (Teiidae) lineage and to the awesome power of this largest of all lizards.
In a nutshell, we're utilizing a design-time Modeshape/JCR repository for managing and persisting our design-time metadata (VDB, DDL, etc...) which allows consistent import/export of runtime metadata.

Here's a link to our on-going Komodo project plan:
https://developer.jboss.org/wiki/TeiidDesigner-KomodoReleaseDevelopmentPlan

Also check out a recent Komodo status presentation dated Feb 15, 2015.  Comments and suggestions are most welcome!!

So expect some buzz on this channel in the coming months. We're bringing the Komodo Engine on-line as we speak and will hopefully have initial UI prototypes to play with in a few weeks.

Barry LaFond
Teiid Designer Project


Comments

Popular posts from this blog

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

Teiid 8.11 Beta1 and 8.10.1 Released

Teiid 8.11 Beta1 is now available from the  downloads  and maven.  Feature highlights since Alpha2 include: TEIID-3434 More caching control over ttls in the result set cache down to the schema/table level. TEIID-3412 MS Access support via the UCanAccess driver. The UCanAccess support is necessary for those running on Java 1.8 as the JDBC ODBC bridge has been removed from the JRE. The waiting continues on EAP 6.4 Alpha1 - it still should be available shortly and should be the platform target for Teiid 8.11 Beta2. Of course, let us know if you find any issues with these early releases.  There's still plenty of time to get fixes into the final release. Teiid 8.10.1 is also available.  It addresses 5 important issues discovered since 8.10 was released: [ TEIID-3409 ] - PostgreSQLExecutionFactory TranslatorProperty annotation in wrong place [ TEIID-3437 ] - Inconsistencies with row count handling [ TEIID-3438 ] - Null value returned from BlobImpl

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