文档章节

配置Impala支持ODBC(翻译)

w
 weiqingbin
发布于 2013/12/16 22:52
字数 1650
阅读 1430
收藏 0

配置Impala支持ODBC

可以使用ODBC实现第三方产品与Impala的集成。为了获得最佳体验,确保你计划使用的第三方产品支持ODBC。验证支持包括检查Impala、ODBC、操作系统、以及第三方软件的版本允许一起使用。在配置你的系统使用ODBC之前,先下载一个连接器。

  注意:在访问下载ODBC连接器下载页面之前,你可能需要先登录、接受授权协议。

Cloudera ODBC 连接器 1.x版使用原有的 HiveServer1 协议,与 Impala 21000 端口通讯。

新的 2.5 和 2.0 版本,已经认证了部分而不是全部 BI 应用,使用 HiveServer2 协议,与 Impala 21050 端口通讯。尽管 2.x 版本驱动支持通过 Kerberos tickets 或 用户名/密码进行身份验证,但 Impala 只支持 Kerberos 方式。

Connector 下载页 注意

Cloudera ODBC Driver 2.5 for Impala

Cloudera ODBC Driver for Cloudera Impala

通用的ODBC驱动,可用于任意的、这里没有列出的、基于ODBC的应用与 Impala 的集成。可用于Linux 和 Windows 系统

Cloudera ODBC Connector 2.0 for Microstrategy

Cloudera ODBC Connector 2.0 for MicroStrategy

可用于Linux 和 Windows 系统

Cloudera ODBC Connector 2.5 for Qlikview

Cloudera ODBC Connector 2.5 for Qlikview

可用于Linux 和 Windows 系统

Cloudera ODBC Connector 1.2 for Tableau

Cloudera ODBC Connector 1.2 for Tableau

仅可用于Windows 系统

Previous ODBC Connectors

Downloads for Previous ODBC Connectors

可用于 Windows 和 Linux 系统。最新版本的连接器在它们各自下载页面有单独的安装手册链接,较老版本连接器的手册章节: Configuration Instructions for Cloudera ODBC Connector 1.2.

  Important: If you are using the Cloudera Connector for Tableau, to connect Impala to your Kerberos-secured CDH clusters, contact your Tableau account representative for an updated Tableau Data-connection Customization (TDC) file. The updated TDC file will override the Tableau connection settings to set specific parameters on the connection string that are required for a secure connection.

Cloudera ODBC Connector 1.2配置说明

本节的说明针对较老的Cloudera ODBC 驱动版本(1.2)。许多应用已经使用 2.x 版本的驱动,已经有单独的安装说明,参见 本章其他部分。关于 1.2 版本ODBC 驱动的配置说明,请根据你的平台参阅不同部分:

Configuring MicroStrategy to Use the Cloudera ODBC Driver 1.2 on Linux

必须使用 1.2 及以上的ODBC驱动,之前版本不再支持。

下载连接器后,配置系统使用它。

  注意:

通常用于测试驱动的 unixODBC 驱动管理器需要 home 目录下有 odbc.ini 文件。假如使用 unixODBC 驱动管理器,你必须通过使用类似下面示例中复制文件的命令,准备你的环境,:

$ cp /etc/odbc.ini ~/odbc.ini

To configure Microstrategy to use ODBC on Linux:

  1. 使用 tar 从 ODBC 驱动归档中解压并安装到你选择的目录。例如,使用下面的命令,安装驱动到标准位置/usr下:

    tar -zxf ClouderaHiveODBC-v1.20.tar.gz -C /usr

    按照不同的版本时,放到另外的位置,如/opt/。

  2. 在odbc.ini文件添加如下值,为Impala创建系统 DSN。

    [ODBC Data Sources]
    IMPALA-SERVER=Hive ODBC Driver
    
    [IMPALA-SERVER]
    Driver=ODBC_DRIVER_LIBS_PATH/libhiveodbc.so.1
    Description=Hive ODBC Driver
    Host=IMPALAD_HOST
    Port=IMPALAD_PORT
    Database=
    FRAMED=0
    Trace=Yes
    TraceFile=/tmp/odbc.log
    Type=Beeswax

      注意: 在上面的例子里,需要替换这些值:ODBC_DRIVER_LIBS_PATH: ODBC 驱动库的完整路径,通常是/usr/lib。IMPALAD_HOST: 任意运行impalad主机的完整主机名。IMPALAD_PORT: impalad进程的端口号,默认 21000。

  3. 在ODBC.sh追加以下内容设置环境变量:

    #
    # ODBC Driver for Hive
    #
    HIVE_CONFIG='ODBC_DRIVER_INSTALL_PATH'
    if [ "${HIVE_CONFIG}" != '<HIVE_CONFIG>' ]; then
    export HIVE_CONFIG
    
    mstr_append_path LD_LIBRARY_PATH "${HIVE_CONFIG:?}"/lib
    export LD_LIBRARY_PATH
    
    mstr_append_path PATH "${HIVE_CONFIG:?}"/bin
    export PATH
    fi

      Note: 在上面的例子里,替换 ODBC_DRIVER_INSTALL_PATH 为驱动库和包含文件父目录的网站路径,通常为/usr。

  4. 在odbcinst.ini中添加ODBC驱动

    [ODBC Drivers]
    Hive Driver=Installed
    
    [Hive Driver]
    Driver=ODBC_DRIVER_LIBS_PATH/libhiveodbc.so.1
    Description=Hive Driver
    Setup=ODBC_DRIVER_LIBS_PATH/libhiveodbc.so.1
    APILevel=2
    ConnectFunctions=YYY
    DriverODBCVer=1.0
    FileUsage=0
    SQLLevel=1

      Note: 在上面的例子里,替换 ODBC_DRIVER_LIBS_PATH 为ODBC 驱动库的完整路径,通常为 /usr/lib。

Configuring MicroStrategy and Qlikview to Use the Cloudera ODBC Driver 1.2 on Windows

下载连接器后,配置系统使用它。

To configure Microstrategy, Qlikview, or other tools except Tableau to use ODBC on Windows:

  1. 运行下载的".exe"文件来调用安装向导。你将需要接受许可协议,接受或修改安装路径。当前只提供32位版本驱动,不过也可以运行在64位环境下。

      注意: 通过执行<Install_exe>/S /D="<Dir_to_install>",可以执行静默(非交互式)安装。例如:ClouderaHiveODBCSetup_v1_20.exe /S /D="C:\Program Files (x86)\Hive ODBC" 将安装驱动和反安装脚本到 C:\Program Files (x86)\Hive ODBC 目录下。静默模式下自动接收授权。

  2. 打开ODBC Data Source Administrator. 必须使用32位版本。

  3. 点击 System DSN 选项卡,点击 Add.

  4. 选择 Cloudera ODBC Driver for Apache Hive 并点击 Finish.

  5. 为下列字段输入值:

    • Data Source Name – DSN名称

    • Host – 运行impalad 进程节点的完整主机名.

    • Port – impalad 进程端口,默认 21000。

    • Type – Beeswax

  6. Click OK.

Steps for Tableau on Windows

If you would like to use Tableau with the Cloudera Connector for Tableau, use the same Tableau documentation as Hive. Tableau does not use the system DSN configuration described here, but instead requires configuring the connection within Tableau itself.

使用 Cloudera ODBC Connector 1.2 的已知问题与限制

使用ODBC驱动的用户,应花时间熟悉应用与Impala,了解使用Cloudera ODBC Connector的限制(Users of this ODBC driver should take the time to familiarize themselves with Impala and the limitations when using it with the Cloudera ODBC Connector)。

Impala 不是关系数据库,不支持很多通常关系数据库具有的功能。缺少的功能如下:

  • 不支持事务

  • 不支持游标或可滚动游标(scrollable cursors)

  • 不支持行级别的插入、更新、删除

  • 对取消正在运行的查询没有明确的支持

  • 不支持prepared statements

用户应当注意 Impala 支持的SQL功能。鼓励用户阅读 Language Reference 并与应用开发者在尝试使用这些驱动前确认Impala支持。

这些限制在两个方面影响驱动使用:

  • 因为底层系统不支持,许多类型的 SQL 语句无法通过驱动运行

  • 因为不支持所需的基础架构,Hive上许多 ODBC API 中的功能不支持

驱动中下面列出的 ODBC 功能不支持:

  • SQLBindParameter

  • SQLBrowseConnect

  • SQLBulkOperations

  • SQLCancel

  • SQLCloseCursor

  • SQLColumnPrivileges

  • SQLCopyDesc

  • SQLDataSources

  • SQLDrivers

  • SQLEndTrans

  • SQLForeignKeys

  • SQLGetCursorName

  • SQLGetDescField

  • SQLGetDescRec

  • SQLGetTypeInfo

  • SQLMoreResults

  • SQLNativeSQL

  • SQLParamOptions

  • SQLPrepare

  • SQLPrimaryKeys

  • SQLProcedureColumns

  • SQLProcedures

  • SQLSetCursorName

  • SQLSetDescField

  • SQLSetDescRec

  • SQLSetPos

  • SQLSetScrollOptions

  • SQLSpecialColumns

  • SQLStatistics

  • SQLTablePrivileges

  • SQLTransact

驱动支持下面的 ODBC 功能,但可能存在bug:

  • SQLAllocConnect

  • SQLAllocEnv

  • SQLAllocHandle

  • SQLAllocStmt

  • SQLBindCol

  • SQLColAttribute

  • SQLColAttributes

  • SQLColumns

  • SQLConnect

  • SQLDescribeCol

  • SQLDescribeParam

  • SQLDisconnect

  • SQLDriverConnect

  • SQLError

  • SQLExecDirect

  • SQLExecute

  • SQLFetch

  • SQLFreeConnect

  • SQLFreeEnv

  • SQLFreeHandle

  • SQLFreeStmt

  • SQLGetConnectAttr

  • SQLGetConnectOption

  • SQLGetConnectionOption

  • SQLGetData

  • SQLGetDiagField

  • SQLGetDiagRec

  • SQLGetEnvAttr

  • SQLGetFunctions

  • SQLGetInfo

  • SQLGetStmtAttr

  • SQLGetStmtOption

  • SQLNumParams

  • SQLNumResultCols

  • SQLParamData

  • SQLPutData

  • SQLRowCount (Always returns -1)

  • SQLSetConnectAttr

  • SQLSetEnvAttr

  • SQLSetParam

  • SQLSetStmtAttr

  • SQLSetStmtOption

  • SQLTables



© 著作权归作者所有

w
粉丝 50
博文 37
码字总数 112892
作品 0
昌平
私信 提问
powerBi odbc 连接impala 实现自助分析

配置Impala以使用ODBC 可以将第三方产品设计为使用ODBC与Impala集成。为获得最佳体验,请确保支持您打算使用的任何第三方产品。验证支持包括检查Impala,ODBC,操作系统和第三方产品的版本是...

hblt-j
2018/08/16
87
0
管理 Impala(部分翻译)

管理 Impala 作为管理员,你应监视 Impala 的资源使用情况,必要时采取行动以保证 Impala 平衡运行,避免与统一集群里的其他 Haoopd 组件冲突。当检测到已发生或将发生的问题时,你应重新配置...

weiqingbin
2013/12/17
1K
0
Cloudera Impala 常见问题(翻译)

Cloudera Impala 常见问题 下面是 Clouder Impala 产品常见问题的目录。 继续阅读: Trying Impala Impala System Requirements Supported and Unsupported Functionality In Impala How do ......

weiqingbin
2014/01/26
15.5K
2
基于Hadoop的实时查询 - Cloudera Impala

Cloudera 发布实时查询开源项目 Impala (黑斑羚)!多款产品实测表明,比原来基于MapReduce的Hive SQL查询速度提升3~90倍。Impala是Google Dremel的模仿,但在SQL功能上青出于蓝胜于蓝。 Im...

匿名
2012/10/25
8.8K
1
Impala(多图手机用户慎入,理论+实践)

Impala 是参照google 的新三篇论文Dremel(大批量数据查询工具)的开源实现,功能类似shark(依赖于hive)和Drill(apache),impala 是clouder 公司主导开发并开源,基于hive 并使用内存进行计...

SET
2016/09/21
1K
1

没有更多内容

加载失败,请刷新页面

加载更多

前端技术之:Prisma Demo服务部署过程记录

安装前提条件: 1、已经安装了docker运行环境 2、以下命令执行记录发生在MackBook环境 3、已经安装了PostgreSQL(我使用的是11版本) 4、Node开发运行环境可以正常工作 首先需要通过Node包管...

popgis
今天
5
0
数组和链表

数组 链表 技巧一:掌握链表,想轻松写出正确的链表代码,需要理解指针获引用的含义: 对指针的理解,记住下面的这句话就可以了: 将某个变量赋值给指针,实际上就是将这个变量的地址赋值给指...

code-ortaerc
今天
4
0
栈-链式(c/c++实现)

上次说“栈是在线性表演变而来的,线性表很自由,想往哪里插数据就往哪里插数据,想删哪数据就删哪数据...。但给线性表一些限制呢,就没那么自由了,把线性表的三边封起来就变成了栈,栈只能...

白客C
今天
41
0
Mybatis Plus service

/** * @author beth * @data 2019-10-20 23:34 */@RunWith(SpringRunner.class)@SpringBootTestpublic class ServiceTest { @Autowired private IUserInfoService iUserInfoS......

一个yuanbeth
今天
5
0
php7-internal 7 zval的操作

## 7.7 zval的操作 扩展中经常会用到各种类型的zval,PHP提供了很多宏用于不同类型zval的操作,尽管我们也可以自己操作zval,但这并不是一个好习惯,因为zval有很多其它用途的标识,如果自己...

冻结not
昨天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部