历史版本24 :Apache Impala数据连接 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 概述编辑

本文将介绍如何在 FineBI 中连接 Apache Impala 数据库。

2. 配置信息编辑

数据库版本驱动URL驱动包下载

impala 2.3

impala 2.8

impala 2.9

impala 2.10

com.cloudera.impala.jdbc41.Driverjdbc:impala://ip:port/dbname

ImpalaJDBC41.rar

impala 3.1

impala 3.2

jdbc:impala://ip:port/dbname;UseSasl=0;AuthMech=3;UID=impala;PWD= 

注:由于 impala 驱动包存在未修复 bug,impala3.* 版本配置时 URL 需要加上参数UseSasl=0;AuthMech=3;UID=impala;PWD=

2.1 数据库认证

若存在数据连接认证,则需要修改上述配置信息中的 URL,在 URL 后加入 AuthMech 参数。(数据库没有用户名密码时不需要加该参数)

不同参数值代表了不同的认证方式,详细介绍如下表所示:

参数值
认证方式
3用户名和密码
2用户名
1Kerberos
0无需认证

URL格式为:jdbc:impala://ip:port/dbname;authmech=n(n 可以等于0、1、2、3,分别代表上面的认证方式)

2.2 Kerberos认证

若数据连接为 Kerberos 认证,URL 需要加上 AuthMech、KrbHostFQDN、KrbServiceName 三个参数,如下表所示:

参数含义
AuthMech1认证方式为 Kerberos 认证
KrbHostFQDNkrb5.conf 文件中 admin_server 的值Impala 主机的标准域名
KrbServiceNameImpala 服务器的 Kerberos 服务主体名称服务器别名,详情参见官方说明:KrbServiceName

URL 格式为:jdbc:impala://ip:port/dbname;AuthMech=1;KrbHostFQDN=hostalias;KrbServiceName=impala

例如:jdbc:impala://192.168.5.127:21050/default;AuthMech=1;KrbHostFQDN=quickstart.cloudera;KrbServiceName=impala),具体操作参见文档:数据连接Kerberos认证

3. 操作步骤编辑

2.2 连接步骤

1)从上面下载链接中下载 Apache Impala 驱动压缩包,将解压后的所有 JAR 包放置到%FineBI%\webapps\webroot\WEB-INF\lib下,重启 FineBI。

2)登录数据决策系统,选择管理系统>数据连接>数据连接管理,点击新建数据连接,在所有选项下选择Apache Impala,如下图所示:

wa.png

3)点击确定进入数据连接配置页面,按照前面提供的配置信息,输入自身数据库的对应信息。

  • 可选择 kerberos 认证。若选择 kerberos 认证,则需填入注册过 kdc 的客户端名称、keytab 密钥路径和 Kerberos 认证对应 URL(上述2.1.2章节给出的 URL ),参考 数据连接Kerberos认证 ,如下图所示:

1584668199335713.png

  • 若不选择 kerberos 认证,则跟其他数据库设置一致,按照前面提供的配置信息,输入数据库的对应信息,可选择填入高级设置信息(相关介绍可参考 配置数据连接 )。如下图所示,显示的为没有用户名、密码的配置。

1574328033469357.png

4)点击测试连接,若出现如下图的测试连接成功弹出框,则表示成功连接上数据库。如下图所示:

1584667806166665.png

5)测试连接成功后点击右上角的保存按钮,该数据连接即添加成功。如下图所示:

image.png

3. 注意事项编辑

  • 连接 Apache Impala 数据库时,FineBI 在数据查询的时候忽略大小写,字段查询结果都为小写;

  • impala 不支持 date 类型,支持 timestamp ;

  • impala 不支持多个 distinct count,多个去重记录数预览 sql 会报错。