一、java操作hive

1、启动服务:hiveserver2,让hive开启与外部连接的服务

nohup hiveserver2 1>/dev/null 2>/dev/null &
2、加入hive的依赖包
<dependency>
  <groupId>org.apache.hive</groupId>
  <artifactId>hive-jdbc</artifactId>
  <version>2.1.1</version>
</dependency>
在运行代码之前:配置:• 修改hadoop 配置文件 etc/hadoop/core-site.xml,加入如下配置项
<property>
  <name>hadoop.proxyuser.root.hosts</name>
  <value>*</value>
  </property>
<property>
  <name>hadoop.proxyuser.root.groups</name>
  <value>*</value>
</property>
不然会报错:
User: root is not allowed to impersonate root
配置完成重启一下namenode服务 
3、代码
public class hiveTest {
  public static void main(String[] args) throws Exception {
    //加载驱动
    Class.forName("org.apache.hive.jdbc.HiveDriver");
    //获取连接
    Connection connection = DriverManager.getConnection("jdbc:hive2://192.168.200.10:10000/db04", "root", "");
    //执行语句
    PreparedStatement preparedStatement = connection.prepareStatement("select * from t08");
    //处理结果
    ResultSet resultSet = preparedStatement.executeQuery();
    while (resultSet.next()){
      System.out.println(resultSet.getString(1));
  }  
    //关闭资源
    resultSet.close();
    preparedStatement.close();
    connection.close();
  }
}

二、beeline的使用

1、beeline是hive中提供给我们的一个远程操作工具,可以通过jdbc的连接信息来连接远程的hive
但是在使用之前需要将服务器上的hiveserver2服务开启

nohup hiveserver2 1>/dev/null 2>/dev/null &

2、进入到apache-hive-2.1.1-bin/bin开启

beeline
连接到数据库:!connect jdbc:hive2://192.168.200.10:10000/db04
用户:
密码:
3、输入sql语句

三、shell下进入hive

1、启动hive metastore

如果启动hive时遇到异常:如下,

解决:

./hive --service metastore &

然后在启动:

./hive

java操作hive和beeline的使用的更多相关文章

  1. Java操作Hive

    Hadoop版本:hadoop-2.9.2.tar.gz,Hive版本:apache-hive-2.3.6-src.tar.gz,安装Hive可查看:CentOS安装Hive 保证Hive以正确启动h ...

  2. Hive HiveServer2+beeline+jdbc客户端访问操作

    HiveServer 查看/home/hadoop/bigdatasoftware/apache-hive-0.13.1-bin/bin目录文件,其中有hiveserver2 启动hiveserver ...

  3. 基于CDH5.x 下面使用eclipse 操作hive 。使用java通过jdbc连接HIVESERVICE 创建表

    基于CDH5.x 下面使用eclipse 操作hive .使用java通过jdbc连接HIVESERVICE 创建表 import java.sql.Connection; import java.s ...

  4. 通过 Spark R 操作 Hive

    作为数据工程师,我日常用的主力语言是R,HiveQL,Java与Scala.R是非常适合做数据清洗的脚本语言,并且有非常好用的服务端IDE——RStudio Server:而用户日志主要储存在hive ...

  5. 使用Spring Boot操作Hive JDBC时,启动时报出错误:NoSuchMethodError: org.eclipse.jetty.servlet.ServletMapping.setDef

    使用Spring Boot操作Hive JDBC时,启动时报出错误:NoSuchMethodError: org.eclipse.jetty.servlet.ServletMapping.setDef ...

  6. java执行hive命令或者脚本

    java执行脚本 import java.io.*; import java.text.DateFormat; import java.text.SimpleDateFormat; import ja ...

  7. 大数据学习day25------spark08-----1. 读取数据库的形式创建DataFrame 2. Parquet格式的数据源 3. Orc格式的数据源 4.spark_sql整合hive 5.在IDEA中编写spark程序(用来操作hive) 6. SQL风格和DSL风格以及RDD的形式计算连续登陆三天的用户

    1. 读取数据库的形式创建DataFrame DataFrameFromJDBC object DataFrameFromJDBC { def main(args: Array[String]): U ...

  8. Java操作Sqlite数据库-jdbc连接

    Java操作Sqlite数据库步骤: 1. 导入Sqlite jdbc 本文使用sqlite-jdbc-3.7.2.jar,下载地址 http://pan.baidu.com/s/1kVHAGdD 2 ...

  9. 【MongoDB for Java】Java操作MongoDB

    上一篇文章: http://www.cnblogs.com/hoojo/archive/2011/06/01/2066426.html介绍到了在MongoDB的控制台完成MongoDB的数据操作,通过 ...

随机推荐

  1. PyQt(Python+Qt)学习随笔:QTreeWidgetItem项的子项索引、删除子项的方法

    老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 树型部件QTreeWidget中的QTreeWidgetItem项: 获取子项索引 可通过index ...

  2. Python基础篇学习感悟:学如不及,犹恐失之

    从2019年3月底开始学习Python,4月12日在CSDN发表第一篇博文,时至今日已有4个月零12天. 4个多月的学习,老猿从一个Python小白成长到今天,可以说对Python这门语言已经略知一二 ...

  3. PyQt(Python+Qt)学习随笔:Qt Designer中spacer部件的orientation属性

    在Designer的spacers部件中有2个部件,分别是Horizontal Spacer和Vertical Spacer,这两个部件都有orientation属性,表示Spacer部件的方向. 如 ...

  4. 函数与函数式编程(生成器 && 列表解析 && map函数 && filter函数)-(四)

    在学习python的过程中,无意中看到了函数式编程.在了解的过程中,明白了函数与函数式的区别,函数式编程的几种方式. 函数定义:函数是逻辑结构化和过程化的一种编程方法. 过程定义:过程就是简单特殊没有 ...

  5. swagger添加统一认证参数

    import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Co ...

  6. 痞子衡嵌入式:了解i.MXRT1060系列ROM中串行NOR Flash启动初始化流程优化点

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家分享的是i.MXRT1060系列ROM中串行NOR Flash启动初始化流程优化点. 前段时间痞子衡写了一篇 <深入i.MXRT1050系 ...

  7. Spark流式状态管理(updateStateByKey、mapWithState等)

    通常使用Spark的流式框架如Spark Streaming,做无状态的流式计算是非常方便的,仅需处理每个批次时间间隔内的数据即可,不需要关注之前的数据,这是建立在业务需求对批次之间的数据没有联系的基 ...

  8. git相关操作

    git相关命令 基本操作 git init git add xxx git commit -m "first commit" git tag -a V1.0 -m '我的标签' g ...

  9. TLS 协议

    一.背景 参与了一个Sofa-RPC开源项目,认领了TLS的任务,记录下这次宝贵的经历,并感谢章哥的信任以及在整个过程中对我的帮助. 负责的部分不难,主要是使用h2(HTTP 2加密)协议,完成RPC ...

  10. 是的,你没看错!Python可以实现自动化办公

    是的,你没看错!Python可以实现自动化办公 公众号[伤心的辣条],如今越来越多的人加入到学习Python的队伍当中,尤其是对于很多职场人来说,不管你是程序员还是非程序员,Python已经为很多职场 ...