Hive的API的说明

  之前通过命令行的界面可以操作Hive,可是在实际的生产环境中,往往都是需要写API的,因此对Hive的API简单的列举了一下。并对Hive进行了一个简单的封装。具体的封装可以参考github网站主页:https://github.com/ljy2015/HiveUtil

  在这个过程中,其本质上跟mysql和oracle之间没有大的差别,仅仅是有些细节方面不一样,但是这些细节不注意可能就会犯错,因此细节很重要。下面有几个问题需要在这边说明一下:

1、连接hive数据仓库的时候,是会区分HiveServer1和HiveServer2的,因此对应的驱动名称和jdbc的URL字符串名称也有所不同。下面可以参考一下

针对hive1:

  hive driver class:org.apache.hadoop.hive.jdbc.HiveDriver

  URL: jdbc:hive://192.168.27.233:10000/default

针对hive2:

  hive driver class:org.apache.hive.jdbc.HiveDriver

  URL:jdbc:hive2://192.168.27.233:10000/default

2、在执行"load data local inpath ‘" + filepath + "‘ OVERWRITE into table " + tableName;  时,出现返回的是null,这个情况是跟本地文件的字段之间的间隔符有关。本地文件字段之间的间隔符必须是/x01。

时间: 2024-10-13 18:07:52

Hive的API的说明的相关文章

hive Java API

Java连接hive进行操作的方式有多种,接触到了两种: 首先,hive要起动远程服务接口,命令: hive --service hiveserver -p 50000 &   1. 通过jdbc驱动连接hive 当然还有其他的连接方式,比如ODBC等,这种方式很常用. 不稳定,经常会被大数据量冲挂,不建议使用. package cn.ac.iscas.hiveclient; import java.io.IOException; import java.io.InputStream; impo

使用hive客户端java api读写hive集群上的信息

上文介绍了hdfs集群信息的读取方式,本文说hive 1.先解决依赖 <properties> <hive.version>1.2.1</hive.version> </properties> <dependency> <groupId>org.apache.hive</groupId> <artifactId>hive-exec</artifactId> <version>${hive

sqoop1.4.5 导入 hive IOException running import job: java.io.IOException: Hive exited with status 1

sqoop 导入 hive hive.HiveImport: Exception in thread "main" java.lang.NoSuchMethodError: org.apache.thrift.EncodingUtils.setBit(BIZ)B ERROR tool.ImportTool: Encountered IOException running import job: java.io.IOException: Hive exited with status 1

【Hive】JDBC操作

1 package com.java.hadoop.hive; 2 3 import java.sql.Connection; 4 import java.sql.DriverManager; 5 import java.sql.PreparedStatement; 6 import java.sql.ResultSet; 7 import java.sql.SQLException; 8 import java.sql.Statement; 9 10 import org.apache.had

Hive集成Mysql作为元数据时,提示错误:Specified key was too long; max key length is 767 bytes

在进行Hive集成Mysql作为元数据过程中,做完所有安装配置工作后,进入到hive模式,执行show databases:执行正常,接着执行show tables:时却报错. 关键错误信息如下: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Specified key was too long; max key length is 767 bytes) 具体操作信息如下: hive> show databases; OK

Hive metastore源码阅读(一)

不要问我为什么,因为爱,哈哈哈哈...进入正题,最近做项目顺带学习了下hive metastore的源码,进行下知识总结. hive metastore的整体架构如图: 一.组成结构: 如图我们可以看到,hive metastore的组成结构分为 客户端 服务端 ,那么下来我们逐一进行分析: 1.客户端  从代码的角度来看:尼玛太多了..我们从入口HIVE开始看,可以找到MetaStoreClient客户端的创建: 1 private IMetaStoreClient createMetaSto

联接HIVE SERVER客户端的三种方式

在Hive/bin 目录下输入./hive --service hiveserver 代表hive启动了服务器模式. 和普通模式不同的是,这时hive同时启动了一个名为thrift的服务器. 你不用去研究这个服务器的原理,认为他是一个传递信息的人就好,你可以通过他向hive发送命令,然后hive再把命令送给hadoop. 1.命令行模式: ./hive -h127.0.0.1 -p10000 简单明了,IP和端口. 2.JDBC模式: 名字很糊人的.     private static Str

Hive 官方手册翻译 -- Hive Transactions (Hive 事务)

由 Alan Gates创建, 最终由 Andrew Sherman修改于2018年8月7日 原文链接:https://cwiki.apache.org/confluence/display/Hive/Hive+Transactions 翻译:Google Google翻译,金山软件 金山词霸 校对:南大通用 范振勇 (如有翻译问题,请多指教) 一.Hive 3的警告 升级到Hive 3.0时,由之前版本创建的任何事务性表都需要在每个分区上运行Major(主要/深度)级紧缩操作.更确切地说,自上

flume 测试 hive sink

测试flume,将数据送到hive表中,首先建表. create table order_flume( order_id string, user_id string, eval_set string, order_number string, order_dow string, order_hour_of_day string, days_since_prior_order string) clustered by (order_id) into 5 buckets stored as orc