1. 概述
Impala 是 Cloudera 公司主导开发的新型查询系统,它提供 SQL 语义,能查询存储在 Hadoop 的 HDFS 和 HBase 中的 PB 级大数据。
注1:平台数据连接各设置项详细介绍请参考 [平台]数据连接
注2:Impala里存在多个数据库,一个数据连接只能连接一个数据库,不支持单个数据连接连接多个数据库。
2. 操作步骤
2.1 下载驱动文件
根据实际情况下载驱动文档:
数据库版本 | 驱动下载链接 |
---|---|
Impala 2.2 Impala 2.3 Impala 2.8 Impala 2.9 Impala 2.10 | |
Impala 2.10 kudu1.5 |
ClouderaImpalaJDBC41_2.5.43.rar |
若开启 Kerberos 认证 ,只需下载该驱动:ImpalaJDBC41-kerberos.ra |
根据数据库版本下载对应驱动,将解压后的所有 JAR 包放置到%FR_HOME%\webapps\webroot\WEB-INF\lib下,重启 FineReport 设计器。
注1:如果 Apache Impala 是从官网下载的,则不需要将「slf4j-log4j12-1.5.11.jar\slf4j-api-1.5.11.jar」放置「%FR_HOME%\webapps\webroot\WEB-INF\lib」下,否则会造成 Websoket 端口异常。
注2:如果同时使用 Hive 和 Impala 并出现 Hive 连接不上的情况,此时需要删掉 Impala 的 TCLIServiceClient.jar 。
2.2 新建数据连接
1)以管理员身份登录数据决策系统,点击管理系统>数据连接>数据连接管理,点击新建数据连接,如下图所示:
注:如果非管理员用户想要配置数据连接,需要管理员给其分配管理系统下数据连接节点的权限,具体操作请查看 数据连接控制
2)在「所有」选项下选择Apache Impala,如下图所示:
3.3 配置数据连接
根据实际情况输入对应的数据连接信息,如下图所示:
3.3.1 数据连接名称
不可为空,用户可自定义。
3.3.2 驱动
驱动为:com.cloudera.impala.jdbc41.Driver
3.3.3 数据库名称/主机/端口
所连接的 Impala 数据库名称、主机、端口号,根据实际情况填写。
3.3.4 认证方式
若 Impala 数据库存在认证,则需要在 URL 后加入AuthMech参数,不同参数值代表了不同的认证,如下表所示:
注:若数据库没有用户名密码时不需要加该参数。
值 | 含义 |
---|---|
3 | username and password |
2 | username |
1 | kerberos |
0 | 不认证 |
URL 格式为:jdbc:impala://ip:port/dbname;authmech=n( n 可以等于 0、1、2、3 分别代表上面的认证方式)
1)用户名密码认证
AuthMech 参数值为 3 ,则 URL 格式为:jdbc:impala://ip:port/dbname;authmech=3
2)用户名认证
AuthMech 参数值为 2 ,则 URL 格式为:jdbc:impala://ip:port/dbname;authmech=2
3)Kerberos 认证
AuthMech 参数值为 1 。
若数据库的认证方式为 Kerberos 认证,除了要加 AuthMech 参数,需填入注册过 kdc 的客户端名称、keytab 密钥路径和 Kerberos 认证对应 URL(加上AuthMech、KrbHostFQDN、KrbServiceName 三个参数)
参数 | 值 | 含义 |
---|---|---|
AuthMech | 1 | Kerberos 认证 |
KrbHostFQDN | impala server 为 krb5.conf 文件中 admin_server 的值 | 指定连接哪台服务器的 Impala |
KrbServiceName | 对应的服务名 | 服务器的别名,请参见 参数含义 |
URL 格式为:jdbc:impala://ip:port/default;AuthMech=1;KrbHostFQDN=hostalias;KrbServiceName=impala
例如:jdbc:impala://192.168.5.127:21050/default;AuthMech=1;KrbHostFQDN=quickstart.cloudera;KrbServiceName=impala,具体请参见 [平台]数据连接Kerberos认证
4)不认证
AuthMech 参数值为 0 。
3.3.5 用户名/密码
所连接的 Impala 数据库的用户名和密码,若 Impala 数据库不存在认证,则用户名和密码为空。
3.3.6 编码
推荐直接选自动即可,2018-12-27 及之后的 JAR 开始支持选择编码。
3.3.7 URL
URL 格式为:jdbc:impala://hostname:port/_impala_builtins
3.4 测试连接
1)点击测试连接,若弹出「连接成功」提示框,则表示成功连接上数据库,如下图所示:
2)点击右上角保存按钮。
3.4 效果查看
1)Apache Impala 数据库连接成功后,可在平台对其进行编辑、重命名、复制、删除等操作,如下图所示:
2)同时,FineReport 设计器中自动生成已配置成功的数据连接,如下图所示: