Impala访问方式

文章转载自:http://blog.csdn.net/yu616568/article/details/52885156

Impala作为一个SQL引擎,必然提供了Jdbc访问接口,特殊的是Impala完全兼容hiveserver2的接口,所以我们可以使用的客户端包括:

  • beeline
  • impala-shell
  • zeppelin
  • hue

前两种作为shell方式提供,其中beeline是Hive的jdbc客户端(类似于MySQL客户端),使用!connect的方式连接服务器,url的结构为jdbc:hive2://hostname:port/database;principal=server_principal;Impala-shell实际上是Python实现的,使用thrift 接口访问Impala;hue也是通过python实现的,同样使用的是thrift接口,不过它使用代理(hue用户)的方式访问的;zeppelin通过hive jdbc方式访问,类似于beeline。

从上面几种客户端实例可以看出访问Impala有两类接口:jdbc和thrift,impala可以同时支持hive jdbc和impala jdbc访问,前者的driver为org.apache.hive.jdbc.HiveDriver,后者的driver为com.cloudera.impala.jdbc41.Driver,url的结构也有所改变,例如:jdbc:impala://Host:Port[/Schema];Property1=Value;Property2=Value;…

这里提供了一个impala客户端实例,使用Java的方式访问,分别使用thrift和jdbc方式,支持kerberos。

源码地址:https://github.com/terry-chelsea/impala-client-example


Impala-shell 是一个命令行工具,用于连接到运行 Impala 的集群并与之交互。通过 impala-shell,用户可以执行SQL查询、查看表结构和元数据等。要从远程访问 Impala-shell,你需要确保Impala服务器配置允许远程连接,并且网络设置允许你从客户端机器到Impala服务器的访问。 以下是使用impala-shell进行远程访问的一般步骤: 1. 确保Impala守护进程正在运行,并且Impala的配置文件(通常是`impala.conf`)已经设置了允许远程连接的选项。例如,确保`ListenerBindAddress`配置项没有设置为`localhost`或`127.0.0.1`。 2. 确定Impala服务的主机名或IP地址以及端口号(默认端口是21050)。这将用于在客户端机器上连接到Impala服务器。 3. 在客户端机器上打开命令行界面,输入`impala-shell`命令后跟上服务器的主机名和端口号,如:`impala-shell -i <hostname/IP> -p <port>` 4. 如果需要进行安全连接(如使用Kerberos认证),还可能需要提供额外的参数,如`--kerberos_service_name`来指定服务名称,以及使用`-l`或`--use_local_proxy`来指定代理。 5. 输入上述命令后,你将被提示输入认证所需的凭据(如Kerberos ticket或密码)以连接到Impala服务。 请注意,远程访问Impala时,网络安全是非常重要的考虑因素,因为可能涉及到敏感数据的传输。务必确保使用了适当的安全措施,比如加密连接(SSL)。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值