package com.hqgf.hive; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.Statement; import java.text.SimpleDateFormat; import java.util.Date; public class HiveJDBC { private static String driverName = "org.apache.hive.jdbc.HiveDriver"; private static String url = "jdbc:hive2://172.69.1.221:10000/hqgf"; private static String user = "hive"; private static String password = ""; private static Connection conn = null; private static Statement stmt = null; private static ResultSet rs = null; public static void main(String[] args) throws Exception { init(); showDatabases(); // createDatabase(); createTable(); showTables(); // selectData(); // Thread.sleep(1000*60); // loadData(); // descTable(); // deopTable(); // dropDatabase(); destory(); } // 加载驱动、创建连接 public static void init() throws Exception { Class.forName(driverName); conn = DriverManager.getConnection(url,user,password); stmt = conn.createStatement(); } // 创建数据库 public static void createDatabase() throws Exception { String sql = "create database hqgf"; System.out.println("Running: " + sql); stmt.execute(sql); } // 查询所有数据库 public static void showDatabases() throws Exception { String sql = "show databases"; System.out.println("Running: " + sql); rs = stmt.executeQuery(sql); while (rs.next()) { System.out.println(rs.getString(1)); } } // 创建表 public static void createTable() throws Exception { String sql = "create table bill(BILL_ID string,TEMPLATE_NAME string,RECORD_XML string) row format delimited fields terminated by ';'"; System.out.println("Running: " + sql); stmt.execute(sql); } // 查询所有表 public static void showTables() throws Exception { String sql = "show tables"; System.out.println("Running: " + sql); rs = stmt.executeQuery(sql); while (rs.next()) { System.out.println(rs.getString(1)); } } // 查看表结构 public static void descTable() throws Exception { String sql = "desc bill"; System.out.println("Running: " + sql); rs = stmt.executeQuery(sql); while (rs.next()) { System.out.println(rs.getString(1) + "\t" + rs.getString(2)); } } // 加载数据 public static void loadData() throws Exception { SimpleDateFormat format = new SimpleDateFormat("yyyyMMdd"); String filename = format.format(new Date()).concat(".txt"); String filePath = "/usr/tools/".concat(filename); String sql = "load data local inpath '" + filePath + "' overwrite into table bill"; System.out.println("Running: " + sql); stmt.execute(sql); } // 查询数据 public static void selectData() throws Exception { String sql = "select * from bill"; System.out.println("Running: " + sql); rs = stmt.executeQuery(sql); while (rs.next()) { System.out.println(rs.getString("RECORD_XML")); } } // 统计查询(会运行mapreduce作业) public static void countData() throws Exception { String sql = "select count(1) from bill"; System.out.println("Running: " + sql); rs = stmt.executeQuery(sql); while (rs.next()) { System.out.println(rs.getInt(1) ); } } // 删除数据库 public static void dropDatabase() throws Exception { String sql = "drop database if exists hqgf"; System.out.println("Running: " + sql); stmt.execute(sql); } // 删除数据库表 public static void deopTable() throws Exception { String sql = "drop table if exists bill"; System.out.println("Running: " + sql); stmt.execute(sql); } // 释放资源 public static void destory() throws Exception { if ( rs != null) { rs.close(); } if (stmt != null) { stmt.close(); } if (conn != null) { conn.close(); } } }
相关推荐
同样hive metastore也提供了java接口。 使用 import org.apache.hadoop.hive.conf.HiveConf; import org.apache.hadoop.hive.metastore.HiveMetaStoreClient; import org.apache.hadoop.hive.metastore.api.Field...
总结来说,HiveAPI是Java开发的一个实用工具,它利用REST API封装了与Apache Hive的交互,使得在大数据环境下的数据操作变得更加简单、高效。通过理解HiveAPI的工作原理和使用场景,开发者能够更好地利用这个工具来...
hive java开发驱动包列表hive-common-2.3.4.jarhive-exec-2.3.4.jarhive-jdbc-2.3.4.jarhive-llap-client-2.3.4.jarhive-llap-common-2.3.4.jarhive-llap-server-2.3.4.jarhive-llap-tez-2.3.4.jarhive-metastore-...
2. **Java API for Hive**:Hive提供了Java API,允许开发者通过编写Java代码来连接、查询和操作Hive数据库。这个API包括Hive JDBC驱动和Hive Metastore服务客户端,使得Java应用程序能够与Hive Server交互。 3. **...
JDBC是Java中用于数据库访问的标准API,它定义了一组接口和类,使得开发者可以使用统一的方式与各种数据库系统通信。Hive JDBC提供了对Hive的JDBC支持,允许Java应用执行HiveQL语句并获取结果。 要使用Hive JDBC,...
Hive提供了多种编程接口,包括Hive Java API、Hive Python API和Hive Thrift API等。用户可以根据需要选择合适的编程接口来开发Hive应用程序。 Hive应用场景 Hive应用场景包括数据仓库、数据挖掘、商业智能和数据...
本压缩包"javaApi_sparkhiveAPI_hbaseAPI.zip"包含了2019年8月至10月期间针对这些技术的Java版API实现,以及与Spark相关的Hive和HBase API。以下是关于这些技术的详细知识: 1. **Java API for Hive**: - **Hive*...
2. **获取Hive数据**:使用Hive的Java API(如Hive Metastore Thrift Client)连接到Hive服务,查询并获取所需的数据。这通常涉及到解析HQL(Hive SQL)查询,获取查询结果集。 3. **预处理数据**:根据HBase的存储...
Java JDBC(Java Database Connectivity)是Java编程语言中与各种数据库进行交互的标准API。在本教程中,我们将深入探讨如何使用Java JDBC连接到Hive数据库,并执行基本的数据操作。Hive是一个基于Hadoop的数据仓库...
本教程将深入探讨如何使用Java API与Hive进行集成,实现简单的查询操作。我们将围绕以下知识点展开讨论: 1. **Hive简介**: Hive是一个基于Hadoop的数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并...
Java JDBC(Java Database Connectivity)是Java编程语言中与数据库交互的一种标准接口,它允许Java...确保正确配置Hadoop和Hive环境,理解JDBC的工作原理,以及如何在Java中使用JDBC API,是成功实现这一目标的关键。
基于hadoop的Hive数据仓库JavaAPI简单调用的实例,关于Hive的简介在此不赘述。hive提供了三种用户接口:CLI,JDBC/ODBC和 WebUI CLI,即Shell命令行 JDBC/ODBC 是 Hive 的Java,与使用传统数据库JDBC的方式类似 Web...
java运行依赖jar包
Hive Java SDK是用于与Apache Hive进行交互的一种编程接口,主要服务于Java开发者,它使得在Java应用程序中执行HQL(Hive查询语言)或者管理Hive表变得简单易行。新改进可能涉及到性能优化、功能增强、API简化、错误...
因此,这些依赖包可能涉及Inceptor的API、连接器、优化器或其他核心组件,帮助开发者在Java应用中无缝集成和操作Inceptor数据仓库。 总结来说,这个"星环hive-8.0.2 java 依赖包全集"是针对星环Inceptor 8.0.2版本...
在hive java api的时候 : 需要导入hive运行所需的jar包,导入jar包有两种方式可实现 1.使用maven依赖直接修改配置文件,以下为配置内容:(不推荐,会下载额外很多无用包,而且时间很长在1小时左右) 2.挑选必须...
标签:apache、flink、connector、hive、中文文档、jar包、java; 使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码和结构保持不变,注释和说明精准...
这里我们将详细讨论如何通过Java程序实现Hive内部表的小文件合并。 首先,理解Hive内部表和外部表的区别是关键。内部表的数据由Hive完全管理,删除内部表会同时删除其对应的数据。而外部表仅仅是一个指向实际数据的...
在Java中,我们可以使用Spark的Java API来构建数据处理管道。Spark与Hive的集成允许我们直接操作Hive表,将Hive数据转换为Spark DataFrame,这样就可以利用Spark的并行计算能力进行数据预处理和转换。 3. **数据...
压缩包中包含Java通过JDBC连接Hive所需的jar包。包含有,antlr-runtime-3.0.1.jar;commons-logging-1.0.4.jar;hadoop-core-1.2.1.jar;hive-exec-0.10.0.jar;hive-jdbc-0.13.1.jar;hive-metastore-0.9.0.jar;hive-...