Progress DataDirect for ODBC for Apache Hive Wire Protocol Driver

    An asterisk (*) indicates support that was added in a hotfix or software patch subsequent to a release.

    Refer to the following resources for additional information:

    Version 8.0.1

    Enhancements
    • The driver is now compiled with a Visual Studio 2022 compiler for the Windows platforms. As a result, you must have Microsoft Visual C/C++ runtime version 14.40.33810 or higher on your machine to run the driver.
    • The driver now supports describing Char and Varchar columns as either SQL_CHAR and SQL_VARCHAR types or SQL_WCHAR and SQL_WVARCHAR types in the metadata. You can use the new Use Unicode Char Types (UseUnicodeCharTypes) connection option to configure how the driver maps Char and Varchar columns. Refer to Use Unicode Char Types for details.
    • For AIX platforms, the ICU library files that are installed with the product have been upgraded to version 74.1. As a part of this upgrade, the ICU library file names have changed. For the 32-bit driver, the ICU file name has changed from libivicu28.a to libivicu.a. For the 64-bit driver, the ICU file name has changed from libddicu28.a to libddicu.a. This upgrade does not apply to the other UNIX platforms. This upgrade is available starting in build 08.02.1072 of the ICU library files.*
    • For Windows platforms, the ICU library files that are installed with the product have been upgraded to version 74.1. As a part of this upgrade, the ICU library file names have changed. For the 32-bit driver, the ICU file name has changed from ivicu28.dll to ivicu.dll. For the 64-bit driver, the ICU file name has changed from ddicu28.dll to ddicu.dll. This upgrade is available starting in build 08.02.1072 of the ICU library files.*
    • For Linux platforms, the ICU library files that are installed with the product have been upgraded to version 74.1. In addition, the ICU library file names have changed for Linux platforms. For the 32-bit driver on Linux, the ICU file name has changed from libivicu28.so to libivicu.so. For the 64-bit driver on Linux, the ICU file name has changed from libddicu28.so to libddicu.so. This upgrade does not apply to UNIX platforms.
      This upgrade is available starting in build 08.02.0965 of the ICU library files.*
    • Note: OpenSSL library 3.0.9 has been replaced with a later version. For the latest information about the third-party components that are installed with the product, refer to the Third-party Components Compatibility Matrix.
      The default version of the OpenSSL library has been upgraded to version 3.0.9, which fixes the security vulnerabilities listed on the following page: https://www.openssl.org/news/vulnerabilities-3.0.html.*

      Notes:

      • The driver supports the following OpenSSL 3.0 providers: Default and FIPS.
      • The FIPS provider is supported only on the following platforms: Windows 64-bit, Linux 64-bit, and AIX 64-bit.
      • When installing a new version of the product, the installer program will automatically replace the OpenSSL 1.1.1 library files with the OpenSSL 3.0 library files in the install directory, which will impact all the DataDirect ODBC drivers installed on a machine. Therefore:
        • If you are using multiple 8.0 drivers, upgrade all your drivers to the latest version.
        • If you are using both 8.0 and 7.1 versions of the driver, copy the xxtls27.dll/libxxtls27.so[.sl] file to a different location before installing a new version of the 8.0 driver. Copy it back to the install directory once the installation is complete.
      Refer to TLS/SSL Server Authentication and TLS/SSL Client Authentication for details.
    • The driver has been enhanced to support the Windows certificate store for TLS/SSL server authentication. Refer to the TLS/SSL server authentication for details.*
    • The driver has been enhanced to support TLS/SSL server authentication for the applications deployed in a serverless environment. The driver stores the TLS/SSL certificates in memory and lets applications use TLS/SSL server authentication without storing the truststore file on the disk. To use this enhancement, specify the content of the certificate in the refreshed Trust Store (Truststore) connection option or the new SQL_COPT_INMEMORY_TRUSTSTORECERT pre-connection attribute. Refer to Trust Store and Using SQL_COPT_INMEMORY_TRUSTSTORECERT for details.*
    • A Password Encryption Tool, called ddencpwd, is now included with the product package. It encrypts passwords for secure handling in connection strings and odbc.ini files. At connection, the driver decrypts these passwords and passes them to the data source as required. See Password Encryption Tool (UNIX/Linux only) for details.*
    • The drivers using base version B0649 and later have been enhanced to include timestamp in the internal packet logs by default. If you want to disable the timestamp logging in packet logs, set PacketLoggingOptions=1. The internal packet logging is not enabled by default. To enable it, set EnablePacketLogging=1.*
    • The Driver Manager for UNIX/Linux has been enhanced to support setting the Unicode encoding type for applications on a per connection basis. By passing a value for the SQL_ATTR_APP_UNICODE_TYPE attribute using SQLSetConnectAttr, your application can specify the encoding at connection. This allows your application to pass both UTF-8 and UTF-16 encoded strings with a single environment handle.*
    • The valid values for the SQL_ATTR_APP_UNICODE_TYPE attribute are SQL_DD_CP_UTF8 and SQL_DD_CP_UTF16. The default value is SQL_DD_CP_UTF8.
      This enhancement is available in build 08.02.0449 of the driver manager.
    • The driver has been enhanced to support ACID operations for Inserts, Updates, and Deletes on servers that are configured to use them. Refer to Limitations on Apache Hive functionality for more information on limitations and restrictions. *
    • The driver has been enhanced to support Apache ZooKeeper, including Kerberos authentication. It can be configured using the refreshed Host Name connection option and the new ZooKeeper Discovery and ZooKeeper Namespace connection options. Refer to Apache ZooKeeper for details.*
    • The driver has been enhanced to support HTTP mode, which allows you to access Apache Hive data stores using HTTP/HTTPS requests. HTTP mode can be configured using the new Transport Mode and HTTP Path connection options.  Refer to HTTP mode, Transport Mode, and HTTP Path for details.*
    • The driver has been enhanced to support session cookie based authentication for HTTP connections. Cookie based authentication can be configured using the new Enable Cookie Authentication and Cookie Name connection options. Refer to Enable Cookie Authentication and Cookie Name
    • The driver has been enhanced to support HTTP connections to Apache Knox gateways. See Apache Knox for details.
    • The new Array Insert Size connection option provides a workaround for memory and server issues that can sometimes occur when inserting a large number of rows that contain large values. These issues are most likely to occur when connecting through Apache Knox. See Array Insert Size for details.
    Changed Behavior
    • The installer program now requires you to install a JRE that is Java SE 11 or higher before running the installer. In earlier versions, the JRE used by the installer program was included in the product. However, to avoid potential security vulnerabilities, the installer program no longer includes a JRE. Instead, the installer program uses the JRE in your environment to allow for the most secure version of a JRE to be used.

      Notes:

      • This change does not affect the JVM requirements for the driver. For the latest driver requirements, refer to the Product Compatibility Guide.
      • The installer program cannot remove the already installed JRE files from the install directory automatically. Remove them manually.
    • The String Describe Type (StringDescribeType) connection option now supports describing String columns as SQL_LONGVARCHAR and SQL_VARCHAR, in addition to SQL_WLONGVARCHAR and SQL_WVARCHAR. To support this behavior, two new valid values have been added to the connection option: -1 (SQL_LONGVARCHAR) and 12 (SQL_VARCHAR). Refer to String Describe Type for details.
    • The product package no longer includes the ODBC Cursor library file (odbccurs.so) because it has some known security vulnerabilities that could potentially expose you to security risks.*
      Note: The installer program cannot remove the ODBC Cursor library file automatically while installing a new version of the driver. Remove it manually.
    • The product no longer includes version 1.1.1 of the OpenSSL library. The library will reach the end of its product life cycle in September 2023 and will not receive any security updates after that. Note that continuing to use the library after September 2023 can potentially expose you to security vulnerabilities.*

      Note: As a result of this change, when installing a new version of the product, the installer program will automatically remove version 1.1.1 of the library from the install directory, which will impact all the DataDirect ODBC drivers installed on a machine.

    • The product no longer includes version 1.0.2 of the OpenSSL library. The library has reached the end of its product life cycle and is not receiving security updates anymore. Note that continuing to use the library could potentially expose you to security vulnerabilities.*
      Note: As a result of this change, when installing a new version of the driver, the installer program will automatically remove version 1.0.2 of the library from the install directory.
      • The Array Size (ArraySize) connection option has been renamed Array Fetch Size (ArrayFetchSize). The ArraySize attribute will continue to be supported for this release, but will be deprecated in subsequent versions of the product. Refer to Array Fetch Size for details.
      Notes, Known Issues, and Limitations
      • The driver does not support specifying values for the same connection option multiple times in a connection string or DSN. If a value is specified using the same attribute multiple times or using both long and short attributes, the connection may fail or the driver may not behave as intended.
      • When trying to connect to a database using SSL encryption, you may receive an error message similar to: "PRNG not seeded". This is because certain versions of some operating systems do not generate truly random numbers necessary for encryption. For more information about this error and available patches, please refer to the Web site: http://www.openssl.org/support/faq.html#USER1
      • The column attributes 1001 and 1002, which were assigned as DataDirect- specific attributes, were inadvertently used as system attributes by the Microsoft 3.0 ODBC implementation. Applications using those attributes must now use 1901 and 1902, respectively.
      • Because of inconsistencies in the ODBC specification, users attempting to use SQL_C_NUMERIC parameters must set the precision and scale values of the corresponding structure and the descriptor fields in the Application Parameter Descriptor.
      • One of the most common connectivity issues encountered while using IIS (Microsoft's Internet Information Server) concerns the use and settings of the account permissions. If you encounter problems using DataDirect drivers with an IIS server, refer to KnowledgeBase document number 4274 on the Progress DataDirect web site: http://knowledgebase.datadirect.com.
      • These restrictions are based on using Apache Hive 1.2.0; other versions of Apache Hive will have their own restrictions. You may find a more complete listing of Apache Hive known issues and limitations for your version of Apache Hive in the Apache Hive user documentation.
      • Apache Hive is not designed for OLTP workloads and does not offer real-time queries or row-level updates. It is designed for batch type jobs over large data sets with high latency.
      • No support for row-level updates or deletes.
      • No difference between "NULL" and null values.
      • No support for auto-commit transactions.
      • Apache Hive uses HiveQL, which provides much of the functionality of SQL, but has some limitation syntax differences. For more information, refer to the Hive Language Manual.
        • A single quote within a string literal must be escaped using a \ instead of using a single quote.
        • Join support is limited to equi-joins.
      • The Trust Store field on the Driver setup dialog supports content up to 8192 characters in length. For specifying certificate content longer than 8192 characters, edit the registry and manually add the entry to the DSN.
      • Power BI Connector: After you have configured your data source, complete the following steps to use the driver to access your data with Power BI.
        1. Navigate to the following subdirectory of the Progress DataDirect installation directory; then, locate the installation batch file, install.bat: \tools\Power BI
        2. Run the install.bat file. The following operations are executed by running the install.bat file:
          • The Power BI connector file, DataDirectHive.pqx, is copied to the following directory: %USERPROFILE%\Documents\Power BI Desktop\Custom Connectors
          • The following Windows registry entry is updated: HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Power BI Desktop\TrustedCertificateThumbprints
        3. Open the Power BI desktop application.
        4. From the Get Data window, navigate to: Other > DataDirect Hive Connector
        5. Click Connect. Then, from the Progress DataDirect Hive Connector window, provide the following information. Then, click OK.
          • Data Source: Enter a name for the data source. For example, Hive ODBC DSN.
          • Data Connectivity mode:
          • Select Import to import data to Power BI.
          • Select DirectQuery to query live data. For details, including limitations, refer to the following article: https://docs.microsoft.com/en-us/power-bi/connect-data/desktop-use-directquery
        6. Enter authentication information when prompted. Once connected, the Navigator window displays schema and table information.
        7. Select and load tables. Then, prepare your Power BI dashboard as desired.
        You have successfully accessed your data and are now ready to create reports with Power BI. For more information, refer to the Power BI product documentation at Power BI documentation: https://docs.microsoft.com/en-us/power-bi/
      • You may receive a 126 error when adding or configuring a data source stored on a network location. This is caused by the settings of the User Account Control (UAC) security feature on Windows 10. To work around this issue: Important: Implementing this fix disables security safeguards that are designed to protect your machine. Before starting, refer to the following Microsoft documentation for potential risks associated with disabling the UAC feature: http://windows.microsoft.com/en-us/windows/what-are-user-account-control-settings
        1. From the Start menu, type regedit in the search field; then, select regedit from the results list. The Registry Editor window opens.
        2. Navigate to the following registry subkey: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System
        3. Right-click on the subkey; then, select New > DWORD Value.
        4. Rename the new value EnableLinkedConnections.
        5. Right-click EnableLinkedConnections, and then click Modify. The Edit DWORD Value window opens.
        6. In the Value data field, type 1. Click OK.
        7. Close the Registry Editor; then, restart your computer.
      Version 8.0.0
        Enhancements
        • The driver has been updated with OpenSSL library version 1.0.2k.*
        • The driver has been enhanced to optimize the performance of fetches.
        • The new Min Long Varchar Size connection option allows you to fetch SQL_LONGVARCHAR columns whose size is smaller than the minimum imposed by some third-party applications, such as SQL Server Linked Server.
        • The new Varchar Threshold connection option allows you to fetch columns that would otherwise exceed the upper limit of the SQL_VARCHAR type for some third-party applications, such as SQL Server Linked Server.
        • The new Max String Size connection option allows you to determine the maximum size of columns of the String data type that the driver describes through result set descriptions and catalog functions. This option replaces the Max Varchar Size connection option.
        • The new Catalog Mode connection option allows you to determine whether the driver uses native catalog functions to retrieve information returned by the SQLTables, SQLColumns, and SQLStatistics catalog functions. In the default setting, the driver employs a balance of native functions and driver-discovered information for the optimal balance of performance and accuracy when retrieving catalog information. This option replaces the Use Native Catalog Functions option.
        • The driver includes a new Tableau data source file (Windows only) that provides improved functionality when accessing your data with Tableau.
        • The driver and Driver Manager have been enhanced to support UTF-8 encoding in the odbc.ini and odbcinst.ini files.
        • The default OpenSSL library version has been updated to 1.0.2j.
          Note: OpenSSL library 1.0.2j has been replaced with version 1.0.2n.
        Changed Behavior
        • The driver supports the HiveServer2 protocol and higher, and as a result:
          • Support for the HiveServer1 protocol has been deprecated
          • The Wire Protocol Version connection option has been deprecated
        • The Use Native Catalog Functions connection option has been replaced by the new Catalog Mode connection option. The UseNativeCatalogFunctions attribute will continue to be supported for this release, but will be deprecated in subsequent versions of the product.
        • The Max Varchar Size connection option has been replaced by the new Max String Size connection option. The MaxVarcharSize attribute will continue to be supported for this release, but will be deprecated in subsequent versions of the product.
        • The Authentication Method connection option has been refreshed with a new valid value for enabling Kerberos Authentication. To use Kerberos authentication with the driver, set AuthenticationMethod=4.
        • The default value for Crypto Protocol Version has been updated to TLSv1.2,TLSv1.1,TLSv1. This change improves the security of the driver by employing only the most secure cryptographic protocols as the default behavior.
        • The valid and default values for the String Describe Type connection have been updated:
          • Valid values: -10 (SQL_WLONGVARCHAR) | -9 (SQL_WVARCHAR)
          • Default value: -9 (SQL_WVARCHAR)

        Version 7.1.6

        Enhancements
        • The default OpenSSL library version has been updated to 1.0.2h.*
          Note: OpenSSL library 1.0.2h has been replaced with version 1.0.2n.
        • The default OpenSSL library version has been updated to 1.0.2g.*
          Note: OpenSSL library 1.0.2g has been replaced with version 1.0.2n.
        • The default OpenSSL library version has been updated to 1.0.2f.
          Note: OpenSSL library 1.0.2f has been replaced with version 1.0.2n.
        • The driver has been enhanced to support row-level inserts when connected to Hive 0.14 or higher.
        • The Batch Mechanism connection option has been added to the driver. By setting BatchMechanism to 2 (MultiRowInsert), you enable the driver to use a parameterized multi-row insert statement to execute batch inserts. MultiRowInsert is the default setting and provides substantial performance gains when performing batch inserts.
        • The new CryptoLibName and SSLLibName connection options allow you to 
           designate the OpenSSL libraries used when SSL is enabled.
        • The driver has been enhanced to support SSL encryption.
        • The Array Size connection option has been refreshed to allow specifying  the number of cells retrieved instead of rows. By determining the fetch size based on the number of cells, the driver can avoid out of memory errors when fetching from tables containing a large number of columns. 
        Changed Behavior
        • The Authentication Method connection option has been refreshed with a new valid value for enabling Kerberos Authentication. To use Kerberos  authentication with the driver, set AuthenticationMethod=4.

        Version 7.1.5

        Enhancements
        • The driver has been enhanced to support the Char data type
          when connected to Hive 0.13 and higher.
        • The driver has been enhanced to support the Decimal data type
          when connected to Hive 0.11 and higher.
        • The driver has been enhanced to support the Date and Varchar data types
          in Hive 0.12 and higher.

        Version 7.1.4

          Enhancements
          • The new TCP Keep Alive connection option allows you to use TCP Keep Alive to maintain idle TCP connections.

          Version 7.1.3

            Enhancements
            • The Use Native Catalog Functions connection option allows you to use native
              catalog functions to retrieve information returned by SQLTables, SQLColumns,
              and SQLStatistics catalog functions.
            • Support for Kerberos Authentication.

            Version 7.1.2

            No features introduced 

              Version 7.1.1

              No features introduced

                Enhancements
                • Added support for HiveServer2.
                • When connected to HiveServer2, simultaneous connections per port
                  are supported.
                • The new Wire Protocol Version connection option specifies the
                  version of the Hive Server to which the driver will connect.
                • The String Describe Type connection option now allows you to describe
                  string columns as SQL_WLONGVARCHAR or SQL_WVARCHAR.
                Changed Behavior 
                • The Password connection attribute is now required for a connection
                  to HiveServer2.
                • The User Name connection attribute is now required for a connection
                  to HiveServer2.

                Version 7.1.0

                  Features
                  • Returns result set metadata for parameterized statements
                    that have been prepared but not yet executed.
                  • Supports parameter arrays, processing the arrays as a series of
                    executions, one execution for each row in the array.
                  • Provides a connection option that allows you to configure
                    the driver to report that it supports transactions, although Hive does not support transactions. This provides a workaround for applications that do not operate with a driver that reports transactions are not supported.
                  •  The driver provides support for the following standard SQL
                    functionality:
                    • Create Index, Create Table, and Create View
                    • Insert
                    • Drop Index, Drop Table, and Drop View

                Connect any application to any data source anywhere

                Explore all DataDirect Connectors

                A product specialist will be glad to get in touch with you

                Contact Us