package mytest.hive.jdbc.client; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import org.apache.log4j.Logger; public class HiveJdbcClient { private static String driverName = "org.apache.hive.jdbc.HiveDriver"; private static String url = "jdbc:hive2://master:10000/u1"; //可以转换数据库 private static String user = ""; private static String password = ""; private static String sql = ""; private static ResultSet res; private static final Logger log = Logger.getLogger(HiveJdbcClient.class); public static void main(String[] args) { try { Class.forName(driverName); //Connection conn = DriverManager.getConnection(url, user, password); //默认使用端口10000, 使用默认数据库,用户名密码默认 Connection conn = DriverManager.getConnection(url, user, password); Statement stmt = conn.createStatement(); // 创建的表名 String tableName = "testHiveDriverTable"; /** 第一步:存在就先删除 **/ sql = "drop table " + tableName; // stmt.executeQuery(sql); stmt.execute(sql); /** 第二步:不存在就创建 **/ sql = "create table " + tableName + " (key int, value string) row format delimited fields terminated by '\t'"; //stmt.executeQuery(sql); stmt.execute(sql); // 执行“show tables”操作 sql = "show tables '" + tableName + "'"; System.out.println("Running:" + sql); res = stmt.executeQuery(sql); System.out.println("执行“show tables”运行结果:"); if (res.next()) { System.out.println(res.getString(1)); } // 执行“describe table”操作 sql = "describe " + tableName; System.out.println("Running:" + sql); res = stmt.executeQuery(sql); System.out.println("执行“describe table”运行结果:"); while (res.next()) { System.out.println(res.getString(1) + "\t" + res.getString(2)); } // 执行“load data into table”操作 String filepath = "/home/hadoop/test2_hive.txt"; sql = "load data local inpath '" + filepath + "' into table " + tableName; System.out.println("Running:" + sql); stmt.execute(sql); // 执行“select * query”操作 sql = "select * from " + tableName; System.out.println("Running:" + sql); res = stmt.executeQuery(sql); System.out.println("执行“select * query”运行结果:"); while (res.next()) { System.out.println(res.getInt(1) + "\t" + res.getString(2)); } // 执行“regular hive query”操作 sql = "select max(value) from " + tableName; System.out.println("Running:" + sql); res = stmt.executeQuery(sql); System.out.println("执行“regular hive query”运行结果:"); while (res.next()) { System.out.println(res.getString(1)); } conn.close(); conn = null; System.out.println("------------over----------"); } catch (ClassNotFoundException e) { e.printStackTrace(); log.error(driverName + " not found!", e); System.exit(1); } catch (SQLException e) { e.printStackTrace(); log.error("Connection error!", e); System.exit(1); } } }
相关推荐
.appName("Spark-Hive Demo") \ .config("spark.sql.warehouse.dir", "hdfs://namenode:port/warehouse") \ .enableHiveSupport() \ .getOrCreate() ``` 这段代码创建了一个SparkSession实例,启用了Hive支持,...
而 `hivedemo.rar` 文件提供的显然是一个 Hive JDBC 调用的示例,这将帮助我们了解如何通过 Java 或其他编程语言与 Hive 进行交互。 Hive JDBC(Java Database Connectivity)是 Hive 提供的一种标准接口,允许应用...
hive的安装与配置 一.Hive的安装和配置 1.Hive并不是hadoop自带的组件,因此我们需要去下载hive,此次课我们使用hive 1.2.1版本,下载地址为: 2.下载完成之后,安装包默认保存在下载文件夹中,解压安装包apache-...
Scala代码积累之spark streaming kafka 数据存入到hive源码实例,Scala代码积累之spark streaming kafka 数据存入到hive源码实例。
在这个“hive2-demo”项目中,我们将深入探讨如何使用Java通过JDBC(Java Database Connectivity)接口来访问和操作Hive2。 首先,我们需要了解Hive2的主要改进。相比Hive1.x,Hive2引入了以下关键特性: 1. **...
本示例“hive自定义函数demo”将探讨如何在Hive中开发和使用自定义函数(UDF),这对于扩展Hive的功能和适应特定业务需求至关重要。下面,我们将深入学习与Hive自定义函数相关的知识。 1. **什么是Hive UDF?** ...
在本教程中,我们将深入探讨如何使用Java JDBC连接到Hive数据库,并执行基本的数据操作。Hive是一个基于Hadoop的数据仓库工具,它允许我们对大规模数据集进行SQL-like查询。 首先,我们需要在Java项目中引入Hive ...
pyspark读取hive数据非常简单,因为它有专门的接口来读取,完全不需要像hbase那样,需要做很多配置,pyspark提供的操作hive的接口,使得程序可以直接使用SQL语句从hive里面查询需要的数据,代码如下: from pyspark...
Java连接Hive数据库的示例(Demo)是一个用于演示如何在Java应用程序中与Hive进行交互的代码片段。Hive是基于Hadoop的数据仓库工具,它允许用户使用SQL语法(称为HQL,Hive SQL)对大数据集进行查询、分析和处理。在...
jdbc连接hive的小示例程序,使用方法: 1、在Hadoop服务器上启动远程服务接口,命令: nohup hive --service hiveserver 10000 & (指定端口启动) 2、将test主程序里的IP改为自己用的Hadoop服务器ip,即可使用。
接下来,需要从CDH集群的hive页面上将集群的配置文件下载下来,然后解压放到hive_demo目录下,自己新建一个resource目录用来存放这些配置文件。这些配置文件将在后续的开发中用到。 然后,将jar包添加到IDEA中,...
此篇文章主要选取关键性指标,数据校验数据源Hive和目标ES内的数据是否一致; 因为你不知道将Hive的数据导入到了ElasticSearch后,数据量是否准确,所以需要钉钉报警校验ElasticSearch和Hive数据仓库内的数据质量,...
### Hive开发培训知识点详解 #### 一、Hive概述 - **起源与发展**: Hive是由Facebook开发并贡献给Apache基金会的一个开源项目。自2008年以来,已经成为Apache下的一个重要子项目,广泛应用于大数据处理领域。 - **...
flutter_hive_demo 一个新的Flutter项目。 入门 该项目是Flutter应用程序的起点。 如果这是您的第一个Flutter项目,那么有一些资源可以帮助您入门: 要获得Flutter入门方面的帮助,请查看我们的,其中提供了教程,...
在大数据处理领域,Hive作为一个基于Hadoop的数据仓库工具,为用户提供了一种SQL式的查询语言,使得数据分析工作变得更加便捷。其中,Hive的窗口函数(Window Function)是数据分析中的一个重要特性,它允许我们在...
在【压缩包子文件的文件名称列表】中,我们看到的"hive-demo-master"可能是一个包含Hive使用示例的项目,它可能包含配置文件、Java代码、测试脚本等,用于演示如何在SpringBoot项目中集成Hive,进行数据的读写操作。...
大数据平台和HiveSQL的知识点主要涉及Hadoop生态系统中的Hive工具以及如何使用Hive进行数据仓库的管理和数据查询。下面详细介绍这些知识点。 首先,Hive是一个由Facebook开发并开源的数据仓库工具,旨在将Hadoop的...
springboot +hive+mysql 多数据源切换 个人写了一个demo 并测试通过 下载地址
如何使用Hive钥匙串和Python Flask 您希望可以在看到此项目的演示。 这些都是基于Corey Schafer制作的出色的Flask系列视频。 基本代码来自Corey系列的第6个视频: 代码在 此视频非常适合创建虚拟环境的步骤, 添加...
hive -hiveconf hive.root.logger=DEBUG,console debug ``` #### 创建表 创建一个名为`t_demo`的表,包含两列`d_id`和`d_str`,并指定其存储格式为分隔符形式。 ```sql CREATE TABLE t_demo (d_id STRING, d_str ...