JAVA编写客户的调用HIVE
来源:互联网 发布:知乎戏子科学家 编辑:程序博客网 时间:2024/06/06 12:34
1.加载的文件(/home/wangwei/wangwei-software/file/a.txt)格式如下:
dk 12 1
hfd 132 99
bbN 463 231
UFD 13 10
2.工程中需要导入的jar如下:
antlr-runtime-3.0.1.jar
hive-metastore-0.8.1.jar
hive-service-0.8.1.jar
hsqldb-1.8.0.10.jar
hsqldb-1.8.0.10.LICENSE.txt
jdo2-api-2.3-ec.jar
libfb303.jar
log4j-1.2.15.jar
slf4j-api-1.4.3.jar
slf4j-log4j12-1.4.3.jar
3.具体的代码实现如下:
Class.forName("org.apache.hadoop.hive.jdbc.HiveDriver");
String dropSQL="drop table user";
String createSQL="create table user(name string,num1 string,num2 string) ROW FORMAT DELIMITED FIELDS TERMINATED BY '\t' STORED AS TEXTFILE";
//hive插入数据支持两种方式一种:load文件,令一种为从另一个表中查询进行插入(感觉这是个鸡肋)
//hive是不支持insert into...values(....)这种操作的
String insterSQL="LOAD DATA LOCAL INPATH '/home/wangwei/wangwei-software/file/a.txt' INTO TABLE user";
String querySQL="SELECT a.* FROM user a";
Connection con = DriverManager.getConnection("jdbc:hive://192.168.197.128:50031/default", "", "");
Statement stmt = con.createStatement();
stmt.executeQuery(dropSQL); // 执行删除语句
System.out.println("删除执行完毕!");
stmt.executeQuery(createSQL); // 执行建表语句
stmt.executeQuery(insterSQL); // 执行插入语句
ResultSet res = stmt.executeQuery(querySQL); // 执行查询语句
while (res.next()) {
System.out.println("Result: key:"+res.getString(1) +" –> num1:" +res.getString(2) +" –> num2:" +res.getString(3));
}
4.启动HIVE服务,测试和运行
如果出现问题查看相关日志:
http://user.qzone.qq.com/690395074/infocenter#!app=2&via=QZ.HashRefresh&pos=1341624301
http://user.qzone.qq.com/690395074/infocenter#!app=2&via=QZ.HashRefresh&pos=1341624484
http://user.qzone.qq.com/690395074/infocenter#!app=2&via=QZ.HashRefresh&pos=1341569025
dk 12 1
hfd 132 99
bbN 463 231
UFD 13 10
2.工程中需要导入的jar如下:
antlr-runtime-3.0.1.jar
commons-logging-1.0.4.jar
commons-logging-api-1.0.4.jar
hadoop-0.20.2-ant.jar
hadoop-0.20.2-core.jar
hadoop-0.20.2-examples.jar
hadoop-0.20.2-test.jar
hadoop-0.20.2-tools.jar
hive-exec-0.8.1.jar
hive-jdbc-0.8.1.jarcommons-logging-api-1.0.4.jar
hadoop-0.20.2-ant.jar
hadoop-0.20.2-core.jar
hadoop-0.20.2-examples.jar
hadoop-0.20.2-test.jar
hadoop-0.20.2-tools.jar
hive-exec-0.8.1.jar
hive-metastore-0.8.1.jar
hive-service-0.8.1.jar
hsqldb-1.8.0.10.jar
hsqldb-1.8.0.10.LICENSE.txt
jdo2-api-2.3-ec.jar
libfb303.jar
log4j-1.2.15.jar
slf4j-api-1.4.3.jar
slf4j-log4j12-1.4.3.jar
3.具体的代码实现如下:
Class.forName("org.apache.hadoop.hive.jdbc.HiveDriver");
String dropSQL="drop table user";
String createSQL="create table user(name string,num1 string,num2 string) ROW FORMAT DELIMITED FIELDS TERMINATED BY '\t' STORED AS TEXTFILE";
//hive插入数据支持两种方式一种:load文件,令一种为从另一个表中查询进行插入(感觉这是个鸡肋)
//hive是不支持insert into...values(....)这种操作的
String insterSQL="LOAD DATA LOCAL INPATH '/home/wangwei/wangwei-software/file/a.txt' INTO TABLE user";
String querySQL="SELECT a.* FROM user a";
Connection con = DriverManager.getConnection("jdbc:hive://192.168.197.128:50031/default", "", "");
Statement stmt = con.createStatement();
stmt.executeQuery(dropSQL); // 执行删除语句
System.out.println("删除执行完毕!");
stmt.executeQuery(createSQL); // 执行建表语句
stmt.executeQuery(insterSQL); // 执行插入语句
ResultSet res = stmt.executeQuery(querySQL); // 执行查询语句
while (res.next()) {
System.out.println("Result: key:"+res.getString(1) +" –> num1:" +res.getString(2) +" –> num2:" +res.getString(3));
}
4.启动HIVE服务,测试和运行
如果出现问题查看相关日志:
http://user.qzone.qq.com/690395074/infocenter#!app=2&via=QZ.HashRefresh&pos=1341624301
http://user.qzone.qq.com/690395074/infocenter#!app=2&via=QZ.HashRefresh&pos=1341624484
http://user.qzone.qq.com/690395074/infocenter#!app=2&via=QZ.HashRefresh&pos=1341569025
- JAVA编写客户的调用HIVE
- Java调用Hive的操作
- 一.用java编写的入门客户/服务器通信程序
- 一.用java编写的入门客户/服务器通信程序
- 一.用java编写的入门客户/服务器通信程序
- 编写客户文档的职责
- hive udaf的编写
- java调用hive api
- java调用hive
- java(axis)调用java编写的webservice
- java(xfire)调用java编写的webservice
- Java编写简单客户/服务器程序
- java 调用 delphi编写的dll
- Java中调用Delphi编写的DLL
- java 调用 delphi编写的dll
- .net调用java编写的webservice
- java调用.net编写的webservice
- delphi调用java编写的webservice
- 有状态和无状态会话bean的区别
- AdaBoost
- 这几天的感受
- memcached的变种产品
- UVA 10976 - Fractions Again?!
- JAVA编写客户的调用HIVE
- js的各种判断用法
- 数据库优化方法
- Ubuntu编译链接错误:cannot find -lz解决办法
- WinSock IO模型二: WSAAsyncSelect 消息机制
- 一切皆可计算(1)——叠加的力量
- mysql免安装版配置和密码修改
- OpenSIPS on CentOS 6.3
- OperateAndValidate.cs 操作验证