What Is New in Denodo 8.0u20210209¶
This page lists the main enhancements added in the update 8.0 20210209 of the Denodo Platform.
We also published videos that explains these enhancements:
For the full list of enhancements and bug fixes, read the Release Notes in the Support Site, in the page of this update.
Virtual DataPort
Added support to store the metadata of Virtual DataPort in these databases: Azure SQL, Amazon Aurora (MySQL and PostgreSQL editions), PostgreSQL 11 and PostgreSQL 12. See the complete list in the section Storing the Metadata on an External Database of the Administration Guide.
New function LOCALTIMESTAMP: it returns the current timestamp (a value of type
timestamp
). Previously, to obtain the current timestamp of typetimestamp
, you had to execute this:CAST (CURRENT_TIMESTAMP AS TIMESTAMP WITHOUT TIME ZONE)
We recommend using this new function because Denodo can delegate it to more databases than the expression above.
Performance improvements in several areas:
In the cost optimizer, when doing a join-reordering over a large hierarchy of views.
In the execution engine, when creating the execution plan of complex queries that are completely delegated to a database.
In the stored procedure GET_ELEMENTS. Noticeable when there are many base views.
In the stored procedure GET_FOREIGN_KEYS, which returns the foreign keys of each view.
When creating new views.
When exporting the metadata. Noticeable when exporting a lot of elements.
When deleting a database with a large number of base views.
Virtual DataPort (Data Sources)
Added support for a new database: Amazon Aurora (MySQL and PostgreSQL editions).
Oracle Essbase: up until now, to do introspection of Essbase, the user account required the privilege “manager (database)” in Essbase. Now, you can configure Virtual DataPort to not require this privilege. In this update, this feature is disabled by default. The section Requirements of the Essbase 11 Adapter explains how to enable it.
Virtual DataPort (Cache Engine)
New feature: direct loads. With direct loads, the Cache Engine transfers the data directly to the appropriate table in the cache database “without going through Denodo”, when all these conditions are met:
The data is obtained from a single JDBC data source.
The Cache Engine is configured to use said data source.
The entire query is delegated to this database.
The database supports the statement
INSERT INTO SELECT
.
This enhancement also applies to loading remote tables, summaries and when executing the
INSERT INTO
statement.In this scenario, this enhancement dramatically increases the performance since the data does not need to be transferred from the database to Denodo and back to the same database. In addition, Denodo does not have to process the data.
See more about this in the page The Full Cache Mode at Runtime.
Added support for a new cache database: Amazon Aurora (MySQL and PostgreSQL editions), including support for loading data using their bulk data load API. By using this API, the process of caching data is faster.
Virtual DataPort (Web Services Published by Denodo)
The OpenAPI (Swagger) definition of the REST web services now includes all the fields of the views published by the web service. Before, the definition only included the configuration parameters: $select, $count, $start_index, etc.
The Denodo OData Service now supports the lambda operator “ANY”. See the definition of this operator in the OData 4.0 specification.
Virtual DataPort (Administration Tool)
Improvements in the dialog to create join views (in the tab Model):
When adding a view to a join view, the Administration Tool now suggests the views you may want to add to the join view, based on the associations of that view. The suggestions are next to the label Associated views; just click the view to add it automatically.
When defining a join view, when adding two views, the Administration Tool will automatically create a join condition if there is an association between these views. The join condition will be the same as the condition mappings of the association.
These two improvements have been added to the Design Studio as well.
Virtual DataPort (Design Studio)
Following the roadmap, more features of the Administration Tool have been ported to the Design Studio:
You can now configure the data movements in the Execution plan options of the view.
You can now configure the source configuration of the JDBC and ODBC data sources.
You can perform new actions of the Version Control System: pull, revert, discard and management of global elements.
Virtual DataPort (JDBC Driver)
The Denodo JDBC driver and the Denodo ODBC driver now support OAuth authentication. The drivers provide two paths to connect to Denodo using OAuth. Depending on the one you choose you have to add certain parameters or others to the connection string:
Path #1: Authentication providing access token: the client application obtains an OAuth access token and passes it to the driver. Then, the driver uses this token to connect to Virtual DataPort instead of using user/password.
Path #2: OAuth 2.0 using Resource Owner Password Credentials: if the client application does not have the capability of obtaining OAuth tokens, the driver can obtain one on behalf of the application. That is, when the application opens the connection, the driver will connect to the Identity Provider you indicate, to retrieve an OAuth token. Then, the driver will use this token to connect to Virtual DataPort.
The section OAuth Authentication (Administration Guide) explains how to enable OAuth Authentication and how to configure the JDBC connection to use OAuth.
To use this feature, you have to use the driver of this update. You cannot use the driver of 8.0 GA.
The driver now supports retrieving auto-generated values. Many databases have a mechanism that automatically generates a value when a row is inserted. For example, the primary key value of the row you have inserted). The method
Statement.getGeneratedKeys()
returns aResultSet
object with a column for each automatically generated value. When you insert rows using Denodo, Denodo will try to retrieve the auto-generated values from the underlying database. Note that this mechanism relies on the database in which the row is actually inserted so if the underlying database does not provide the auto-generated values, the driver will not be able to provide them either.The driver now supports the JDBC escape syntax for date and time literals. For date literals, this is
{d 'yyyy-mm-dd'}
, for timestamp is{ts 'yyyy-mm-dd hh:mm:ss.f . . .'}
and for time literals is{t 'hh:mm:ss'}
. For example, you can execute a query like this, when connecting to Denodo with the JDBC driver:SELECT * FROM order WHERE order_date >= {d '2020-01-01'}
This enhancement improves the compatibility with third-party applications.
The driver now supports the URL “jdbc:denodo”. For example, “jdbc:denodo://denodo-server.acme.com:9999/admin”. The prefix “jdbc:vdb” is also supported for backward compatibility.
Virtual DataPort (ODBC Driver)
The Denodo ODBC driver now supports OAuth authentication. The capabilities are the same as for OAuth authentication with JDBC (see above).
To use this feature, you have to use the driver of this update. You cannot use the driver of 8.0 GA.
With the Denodo ODBC driver included in this update, you can now open a connection with Kerberos authentication to Denodo, without enabling the option Allow only Kerberos authentication for ODBC/ADO.NET authentication on the database you want to connect to. The benefit is that each ODBC application can choose whether it wants to use user/password or Kerberos authentication to connect to a database because this is now configurable in the DSN.
To benefit from this feature, the client application has to use the ODBC driver of this update.
This feature does not benefit client applications that use the PostgreSQL ODBC driver (e.g. Tableau) or use an older version of the Denodo ODBC driver. If you have applications that meet these conditions, you still have to enable Allow only Kerberos authentication… on the database, to use Kerberos authentication in the ODBC interface of Virtual DataPort.
See more at Enabling Kerberos Authentication for ODBC Connections Using Old Versions of the Driver.
Virtual DataPort (Operations and Security)
You can now configure the JDBC data sources to retrieve the credentials from the CyberArk Enterprise Password Vault. The main benefit is that you avoid storing in the Denodo the service accounts of your JDBC data sources. In addition, it is easier to rotate the credentials of the service accounts because they are no longer stored in Denodo.
The following updates of Denodo 8.0 will include support for more password vaults.
Data Catalog
Added support to store the metadata of the Data Catalog in Amazon Aurora (MySQL and PostgreSQL editions). See the list of databases you can use to store the metadata.
The summary of a web service displays, among other things, the URL to connect to that service. The administrators can now customize this URL, specifically the hostname and the port. This is useful for complex environments, in which the hostname of the Data Catalog is different than the hostname of Virtual DataPort.
To customize this URL, go to the page Administration > Set-up > Personalization and look for Web service URI.
Scheduler
Added support to store the metadata of Scheduler in Azure SQL and in Amazon Aurora (for the MySQL and PostgreSQL editions).
You can now configure the Scheduler jobs to send a notification when they misfire. See Handler Section (Scheduler Administration Guide).
Solution Manager
New option to create revisions Include users and privileges: if enabled, the revision will include the privileges related to the elements of the revision. That is,
The statements to create the users and roles that own the elements or have privileges granted over these elements.
The statements that grant the privileges to these users/roles over these elements.
Added support to store the settings and metadata of the Solution Manager in Oracle 18 and 19c; previous version of Oracle were already supported. The section Setting-Up an External Database lists the databases you can use to store the metadata.
Documentation Release Notes
During the process of setting-up Kerberos in Virtual DataPort, the documentation no longer instructs administrators that the user account for Denodo cannot be associated with more than one SPN. This requirement was not necessary.
Information about Deprecated Features
No features have been marked as deprecated with the release of this update.
See also: Features Deprecated in Denodo Platform 8.0.