1. 描述编辑
Impala 是 Cloudera 公司主导开发的新型查询系统,它提供SQL语义,能查询存储在 Hadoop的HDFS 和 HBase 中的 PB 级大数据。已有的Hive系统虽然也提供了 SQL 语义,但由于Hive 底层执行使用的是 MapReduce 引擎,仍然是一个批处理过程,难以满足查询的交互性。相比之下,Impala的最大特点也是最大卖点就是它的快速。
下面介绍的是在平台中新建数据连接,若需要在设计器中新建,点击 [设计器]JDBC连接数据库。
2. 操作步骤编辑
2.1 拷贝 JAR 包到 FR 工程
数据库版本 | 驱动包 |
---|---|
impala 2.2;impala 2.3;impala 2.8;impala 2.9;impala 2.10; | ImpalaJDBC41.rar |
impala 2.10 kudu1.5 | ClouderaImpalaJDBC41_2.5.43.rar |
impala 3.0 | ImpalaJDBC41-kerberos.rar |
下载驱动包,解压缩后将驱动包的 JAR 包放置到%FR_HOME%\webapps\webroot\WEB-INF\lib下,重启报表服务器。
2.2 平台中新建数据连接
管理员登录决策平台,点击管理系统>数据连接,点击新建数据连接>更多数据连接,选择Apache Impala,点击确定,如下图:
注:如果非管理员用户想要配置数据连接,需要管理员给其分配管理系统下数据连接节点的权限,具体操作请查看 [平台]数据连接。
第一步:输入数据库的对应信息,可选择填入连接池属性信息(连接池属性介绍可点击 数据连接控制),如下图:
驱动器 | URL |
---|---|
com.cloudera.impala.jdbc41.Driver | jdbc:impala://hostname:port/_impala_builtins |
若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)若不勾选 Kerberos 认证,输入数据库的对应信息,如下图:
2)若勾选 Kerberos 认证,则需填入注册过 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认证
第二步:测试连接,若测试连接成功则表示成功连接上数据库,如下图:
然后点击右上角的【保存】,该数据连接即添加成功,如下图: