impalakudu

coding

kkudu 提供了自己的api来对kudu进行操作,但是有的开发人员习惯用jdbc来操作数据库,这里我们采用impala 来实现该功能,

impala 安装积配置,请百度,我们的集群采用kerberos认证。

1.jdbc:impala 连接(impala 官方建议连接方式)

官网下载cloudera-connector zip 

zip 中的其他jar包我们的集群已经有了,所以只加了ImpalaJDBC41.jar依赖

提交代码所在用户的 principal 是:impala/host@EXAMPLE.COM

连接代码如下:

    import java.sql.DriverManager

val driverName = "com.cloudera.impala.jdbc41.Driver"

val url = "jdbc:impala://host:21050;AuthMech=1;KrbRealm=EXAMPLE.COM;KrbHostFQDN=host;KrbServiceName=impala"

Class.forName(driverName)

val conn = DriverManager.getConnection(url)

val prst = conn.prepareStatement("select * from database.movieas limit 10")

val rs = prst.executeQuery()

while(rs.next()){

println(rs.getString(1))

}

2.jdbc:hive2 连接

hive-jdbc 下载 我用的是org.apache.hive  hive-jdbc

示例代码

val driver = "org.apache.hive.jdbc.HiveDriver"

val url = "jdbc:hive2://host:21050/;principal=impala/host@EXAMPLE.COM"

Class.forName(driver)

val conn = DriverManager.getConnection(url)

val prst = conn.prepareStatement("select * from database.movieas limit 10")

val rs = prst.executeQuery()

while(rs.next()){

println(rs.getString(1))

}

官方说明文档

以上是 impalakudu 的全部内容, 来源链接: utcz.com/z/509984.html

回到顶部