摘要:本篇教程探讨了大数据技术 Hadoop学习(18):Hive的CLI和JDBC,希望阅读本篇文章以后大家有所收获,帮助大家对大数据技术的理解更加深入。
本篇教程探讨了大数据技术 Hadoop学习(18):Hive的CLI和JDBC,希望阅读本篇文章以后大家有所收获,帮助大家对大数据技术的理解更加深入。
<
序
上一篇,我们对hive的数据导出,以及集群Hive数据的迁移进行描述。了解到了基本的hive导出操作。这里,我们将对hive的CLI及JDBC这些实用性很强的两个方便进行简要的介绍。
下面我们开始介绍hive的CLI和JDBC。
Hive CLI(old CLI)
一:说明
在0.11之前只有Hive CLI,他需要安装Hive Client才能使用。是一个重量级的命令行工具。连接的服务器是HiveServer1。
二:语法:
复制代码
usage: hive
-d,--define
commands. e.g. -d A=B or --define A=B
-e
-f
-H,--help Print help information
-h
--hiveconf
--hivevar
commands. e.g. --hivevar A=B
-i
-p
-S,--silent Silent mode in interactive shell
-v,--verbose Verbose mode (echo executed SQL to the
console)
复制代码
三:官网例子1
$HIVE_HOME/bin/hive -e 'select a.col from tab1 a'
四:官网例子2
运行脚本文件
$HIVE_HOME/bin/hive -f /home/my/hive-script.sql
Beeline CLI(new CLI)
一:介绍
为了使得CLI轻量化,后来Hive做出了Beeline和HiveServer2。Beeline是一个基于JDBC的SQLLine CLI。
二:官网例子
bin/beeline
!connect jdbc:hive2://localhost:10000 scott tiger org.apache.hive.jdbc.HiveDriver
三:实战
hiveserver2的默认端口是10000。
beeline -u jdbc:hive2://h188:10000
查看有哪些表。
show tables;
这里可以看到我们在上面几篇测试的时候的表score,score1,score2,我们查下score的数据。
select * from score;
JDBC
一:介绍
我们可以在代码中通过jdbc连接hive。这样在实际运用场景中就很方便,很原有的非分布式计算的开发方式基本类似,具有很强的适用性。
二:新建工程
新建工程com.per.hive
三:引入包
版本根据自己使用hadoop集群而定
复制代码
commons-logging-1.2.jar
hadoop-common-2.6.0.jar
hive-exec-0.13.1.jar
hive-jdbc-0.13.1.jar
hive-service-0.13.1.jar
httpclient-4.3.4.jar
httpcore-4.3.2.jar
log4j-1.2.16.jar
slf4j-api-1.7.6.jar
slf4j-log4j12-1.7.6.jar
复制代码
四:添加类HiveDemo
添加HiveDriver
复制代码
static {
try {
Class.forName("org.apache.hive.jdbc.HiveDriver");
} catch (ClassNotFoundException ex) {
ex.printStackTrace();
}
}
复制代码
添加test()方法
复制代码
/**
* @Description : 测试
*/
private static void test() {
try (Connection con = DriverManager
.getConnection("jdbc:hive2://h188:10000/")) {
Statement stm = con.createStatement();
ResultSet rs = stm.executeQuery("select * from score ");
while (rs.next()) {
String info = rs.getString(1);
info += " " + rs.getString(2);
info += " " + rs.getString(3);
info += " " + rs.getString(4);
System.out.println(info);
}
} catch (Exception ex) {
ex.printStackTrace();
}
}
复制代码
调用
public static void main(String[] args) {
test();
}
五:运行
运行,查看结果,可以看见,程序运行的结果与我们在Beeline命令行查看的结果一致。
这样我们的Hive的CLI和JDBC告一段落。
--------------------------------------------------------------------
到此,本章节的内容讲述完毕。
本文由职坐标整理发布,学习更多的大数据技术相关知识,请关注职坐标大技术云计算大技术技术频道!
您输入的评论内容中包含违禁敏感词
我知道了
请输入正确的手机号码
请输入正确的验证码
您今天的短信下发次数太多了,明天再试试吧!
我们会在第一时间安排职业规划师联系您!
您也可以联系我们的职业规划师咨询:
版权所有 职坐标-一站式IT培训就业服务领导者 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
沪公网安备 31011502005948号