文档章节

Impala-JDBC使用方法

h
 hushenmin
发布于 2017/02/21 15:57
字数 553
阅读 2295
收藏 0

Cloudera-Impala JDBC是以版本JDBC4.0和JDBC4.1数据标准编译的。

Impala-JDBC的系统要求

Java版本要求:

Impala版本要求:

Impala(apache 单独)版本范围:impala1.0.1---impala2.5

或者:CDH版本5.6和 5.7.

Cloudera Impala JDBC 应用所需要的Jar包,和api文档下载:

下载地址:https://www.cloudera.com/downloads/connectors/impala/jdbc/2-5-28.html

下载需要用户注册cloudera账户邮箱电话等,随便注册一下就可以了。。。        

下载的是一个zip包:impala_jdbc_2.5.36.2056.zip 

解压后文件夹下面有两个zip包和两个操作文档:

根据系统版本和环境的要求:大多数情况下我们使用个的是Cloudera-ImpalaJDBC41这个zip包

解压这个Cloudera-ImpalaJDBC41 zip包得到我们Impala-JDBC所有需要得jar包:

解压后得到的jar包添加到我们得开发环境中,然后就可以开发了。

测试代码:

package com.renrenxing.impala;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
/**
 * Created by xiaohu on 2017/2/20.
 */
//$ip代表impalad得ip地址,默认情况下就是我们可以只写impala-shell命令得客户端地址。
public class ImpalJDBC {
    static String JDBC_DRIVER = "com.cloudera.impala.jdbc41.Driver";
    static String CONNECTION_URL = "jdbc:impala://ip:21050/default";
    public static void main(String[] args){
        Connection con = null;
        ResultSet rs = null;
        PreparedStatement ps = null;
        try{
            Class.forName(JDBC_DRIVER);
            con = DriverManager.getConnection(CONNECTION_URL);
            ps = con.prepareStatement("select count(*)  from a");
            rs = ps.executeQuery();
            while (rs.next()){
                System.out.println(rs.getString(1));
            }
        } catch (Exception e){
            e.printStackTrace();
        } finally{
            try {
                ps.close();
                rs.close();
                con.close();
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    }
}

或者可以到github社区下载相应得代码:

github代码下载地址:https://github.com/onefoursix/Cloudera-Impala-JDBC-Example

备注:

    在linux环境开发得时候需要我们把所有得jar包加入CLASSPTH中,这样才可以编译通过。

    export CLASSPATH=.:/your jar dir/*.jar:$CLASSPATH

编译:javac ImpalJDBC.java 

 把编译后得 ImpalJDBC.class 文件打成jar包:jar -cvf ImpalJDBC.jar ImpalJDBC.class

还需要注意一点得是:如果想要执行代码必须把所有得Jar带上。如,

java -cp .:./ImpalJDBC.jar:./ImpalaJDBC41.jar:./hive_service.jar:./hive_metastore.jar:./libthrift-0.9.0.jar:./log4j-1.2.14.jar:./slf4j-log4j12-1.5.11.jar:./slf4j-api-1.5.11.jar:./TCLIServiceClient.jar   ImpalJDBC

另外:如何权限控制Impala还在调研中。

 

 

 

 

 

 

 

 

 

 

© 著作权归作者所有

h
粉丝 1
博文 3
码字总数 3790
作品 0
朝阳
架构师
私信 提问
加载中

评论(1)

醉卧云端笑人间
很好的分享,感谢博主!
配置Impala支持JDBC(翻译)

配置Impala支持JDBC Impala支持JDBC集成。通过使用 JDBC 驱动,你编写的 Java 程序、BI应用、或类似的使用 JDBC 访问不同数据库产品的工具,可以访问 Impala。建立到 Impala 的 JDBC 连接包括...

weiqingbin
2013/12/17
5K
0
impala系列: 基本命令和jdbc连接

--======================= 使用impala-shell 登录 --======================= impala-shell --authcredsokinclear -l -i ipaddress -u username --======================= JDBC driver --......

hblt-j
2018/12/17
131
7
超人学院第九期大数据高薪就业班招生了

超人学院第九期 大数据高薪就业班招生了 超人学院第九期大数据高薪就业班开始招生了,课程加量不加价,还设有奖学金。亲,还等什么呢,赶快来报名吧!! 我们来看看课程具体内容 课程主题 课...

超人学院
2015/07/23
142
0
阿里年薪50WJAVA工程师转大数据学习路线!

大数据有两个方向,一个是偏计算机的,另一个是偏经济的。你学过Java,所以你可以偏将计算机的。 Java程序员想转大数据可行吗?Java是全世界使用人数最多的编程语言。不少程序员选择Java做为...

JAVA丶学习
2018/04/25
0
0
0028-如何在CDH未启用认证的情况下安装及使用Sentry

1.文档编写目的 CDH平台中的安全,认证(Kerberos/LDAP)是第一步,授权(Sentry)是第二步。如果要启用授权,必须先启用认证。但在CDH平台中给出了一种测试模式,即不启用认证而只启用Sentr...

Hadoop实操
2018/11/20
37
0

没有更多内容

加载失败,请刷新页面

加载更多

MySQL8.0.17 - Multi-Valued Indexes 简述

本文主要简单介绍下8.0.17新引入的功能multi-valued index, 顾名思义,索引上对于同一个Primary key, 可以建立多个二级索引项,实际上已经对array类型的基础功能做了支持 (感觉官方未来一定...

阿里云官方博客
37分钟前
4
0
make4.1降级 make-3.81、2错误

在编译 make-3.82 的时候出现如下错误提示 glob/glob.c:xxx: undefined reference to `__alloca'` 修改 /glob/glob.c // #if !defined __alloca && !defined __GNU_LIBRARY__ # ifdef __GNUC......

Domineering
38分钟前
6
0
Rainbond集群的安装和运维的原理

本文将解读Rainbond集群的安装和运维的原理,使用户基本了解Rainbond的安装机制和运维重点,便于用户搭建大型Rainbond集群。 1.Rainbond集群节点概述 1.1 节点分类 属性 类型 说明 manage 管...

好雨云帮
49分钟前
7
0
好程序员大数据学习路线分享UDF函数

1.为什么需要UDF? 1)、因为内部函数没法满足需求。 2)、hive它本身就是一个灵活框架,允许用自定义模块功能,如可以自定义UDF、serde、输入输出等。 2.UDF是什么? UDF:user difine fun...

好程序员官方
52分钟前
4
0
Groovy中 Base64 URL和文件名安全编码

Base64 URL和文件名安全编码 Groovy支持Base64编码很长一段时间。 从Groovy 2.5.0开始,我们还可以使用Base64 URL和Filename Safe编码来使用encodeBase64Url方法对字节数组进行编码。 结果是...

白石
55分钟前
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部