1,hive首先要起动远程服务接口,命令:
nohup hive –service hiveserver &
2,java工程中导入相应的需求jar包,列表如下:
antlr-runtime-3.0.1.jar
hive-exec-0.7.1.jar
hive-jdbc-0.7.1.jar
hive-metastore-0.7.1.jar
hive-service-0.7.1.jar
jdo2-api-2.3-ec.jar
libfb303.jar
3,简单测试代码,已经测试成功操作
package com.javabloger.hive;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
public class HiveTestCase {
public static void main(String[] args) throws Exception {
Class.forName("org.apache.hadoop.hive.jdbc.HiveDriver");
String dropSQL="drop table javabloger";
String createSQL="create
table javabloger (key int, value string)";
//hive插入数据支持两种方式一种:load文件,令一种为从另一个表中查询进行插入(感觉这是个鸡肋)
//hive是不支持insert into...values(....)这种操作的
String insterSQL="LOAD DATA LOCAL INPATH
'/work/hive/examples/files/kv1.txt' OVERWRITE INTO TABLE javabloger";
String querySQL="SELECT a.* FROM javabloger a";
Connection con = DriverManager.getConnection("jdbc:hive://192.168.X.X:10000
/default", "", "");
Statement stmt = con.createStatement();
stmt.executeQuery(dropSQL); // 执行删除语句
stmt.executeQuery(createSQL); // 执行建表语句
stmt.executeQuery(insterSQL); // 执行插入语句
ResultSet res = stmt.executeQuery(querySQL); // 执行查询语句
while (res.next()) {
System.out.println("Result: key:"+res.getString(1) +" –> value:" +res.getString(2));
}
}
}
分享到:
相关推荐
1. **下载Hive JDBC驱动**:Hive的JDBC驱动通常包含在Hive的lib目录下,或者可以从Apache官方网站下载。确保获取的是与你的Hive版本兼容的JDBC驱动。 2. **配置JDBC连接参数**:为了连接Hive,我们需要知道以下信息...
Hive JDBC(Java Database Connectivity)是Hive提供的一种接口,使得其他编程语言,如Java,能够通过JDBC驱动程序与Hive进行交互,实现数据查询、分析和操作。本教程将深入讲解如何使用Hive JDBC在Java项目中建立与...
HiveJDBC是Hive提供的一种JDBC驱动,使得任何支持JDBC的应用程序,如Java,都能连接到Hive服务器,执行查询和操作Hive中的数据。在这个实例中,我们将使用它来连接到运行MySQL作为元数据存储的Hive服务。 2. **...
2. **hive-jdbc.jar**:提供Hive的JDBC驱动,使你能通过JDBC接口连接到Hive服务器。 3. **libthrift.jar**:Thrift库,Hive使用的RPC框架,用于跨语言通信。 4. **hadoop-common.jar** 和 **hadoop-hdfs.jar**:...
3. **JDBC驱动**: 为了实现Java与Impala的连接,需要特定的JDBC驱动,即ImpalaJDBC41.jar。这个驱动程序实现了JDBC接口,使得Java程序能理解并发送SQL命令给Impala服务。 4. **其他依赖库**: 压缩包中的其他文件如...
描述中提到的问题是用户在使用DataGrip尝试连接Hive数据库时遇到困难,但通过这个特定版本的Hive JDBC驱动程序可以成功建立连接。这暗示可能存在兼容性问题,或者是DataGrip内置的默认驱动与某些Hive实例不匹配,而...
本文将通过一个具体的Java与Hive结合的实例,深入讲解如何利用Java API进行Hive的操作,以加深对Hive语句的理解。 首先,要使用Java与Hive交互,我们需要引入Hive的JDBC驱动。在项目中,可以通过Maven或Gradle添加...
Hive提供了jdbc驱动,使得我们可以用Java代码来连接Hive并进行一些类关系型数据库的sql语句查询等操作。同关系型数据库一样,我们也需要将Hive的服务打开;在Hive 0.11.0版本之前,只有HiveServer服务可用,你得在...
6. **数据库连接**:通过JDBC驱动建立Hive连接的基本步骤包括:(1) 创建`java.sql.DriverManager`实例;(2) 调用`DriverManager.getConnection()`方法,传入Hive服务器的URL、用户名和密码;(3) 获取`java.sql....
这些库包含Hive JDBC驱动,允许Java应用程序通过JDBC接口与Hive通信。 3. **设置Hive JDBC连接**: 在Java代码中,首先需要创建一个`DriverManager.getConnection()`实例,提供Hive服务器的URL、用户名和密码。...
2. **hive-jdbc.jar**:Hive JDBC驱动程序,使得像DbVisualizer这样的第三方工具可以通过JDBC接口连接到Hive服务器。 3. **hadoop-client.jar**:包含了Hadoop客户端的所有依赖,允许Hive与Hadoop集群通信。 4. **...
总的来说,Hive JDBC驱动是连接Hive与各种编程语言之间的桥梁,使得开发人员能够灵活地在Hadoop集群上进行数据操作和分析,而无需深入理解MapReduce或HDFS的底层细节。通过正确配置和使用Hive JDBC,你可以构建高效...
3. **配置阿里云Hive连接**:如果Hive实例部署在阿里云上,你可能需要使用阿里云Hive JDBC驱动,其驱动类名可能不同,例如`com.aliyun.odps.jdbc.Driver`,请根据实际情况调整。 4. **创建新阿里云Hive连接**:在...
接着,将 MySQL JDBC 驱动添加到 Hive 的类路径中,以便 Hive 可以通过 JDBC 连接到 MySQL 数据库。 对于 MySQL,你需要先解压 RPM 包,然后使用 `yum` 或 `rpm` 命令安装 MySQL 服务。配置 MySQL 服务器,创建用户...
Impala提供了不同版本的JDBC驱动以兼容不同的Java环境和JDBC规范。在提供的压缩包中,包括了ImpalaJDBC3、ImpalaJDBC4和ImpalaJDBC41三个版本的驱动: 1. **ImpalaJDBC3**:这是针对JDBC 3.0规范的驱动,适用于较旧...
不使用JDBC-ODBC桥的方式可以直接通过JDBC驱动连接数据库,例如: - 对于SQL Server,可以使用 `com.microsoft.sqlserver.jdbc.SQLServerDriver`。 - 对于MySQL,可以使用 `com.mysql.jdbc.Driver`。 - 对于Oracle...
5. **Impala-Hive**:Impala和Hive是两个不同的大数据处理引擎,它们分别有自己的JDBC驱动。`impala-jdbc.jar`用于Impala,而`hive-jdbc.jar`则服务于Hive。这两个驱动让Java应用能够查询存储在Hadoop集群上的数据,...
这个驱动包中的MySQL驱动可能包含JDBC驱动类库(通常以.jar文件形式存在),如`mysql-connector-java.jar`,它是连接Kettle到MySQL数据库的关键。 接下来是Oracle驱动。Oracle数据库是全球最广泛使用的商业数据库之...
“mysql-connector-java-5.1.49.jar”是MySQL数据库的Java连接器,它是MySQL JDBC驱动的一部分,用于在Java应用程序中与MySQL服务器建立连接。JDBC(Java Database Connectivity)是Java中用来连接数据库的标准API,...
除了Beeline之外,还可以使用标准的JDBC驱动程序来访问Hive。这种方式适用于开发Java应用程序时调用Hive SQL查询。例如,在Java程序中使用如下代码: ```java Connection conn = DriverManager.getConnection("jdbc:...