大数据 java操作hive

大数据 java操作hive


版权声明:

本文为博主学习整理原创文章,如有不正之处请多多指教。

未经博主允许不得转载。

 https://blog.csdn.net/qq_42595261/article/details/83022249


  • 虚拟机上操作,保证hive数据库能正常连接进入。

  •  

 

如因退出没有用到命令(quit;),第二次进入则会报错。解决方法,切换到

[root@xcl ~]# cd apache-hive-2.1.1-bin/conf/

[root@xcl conf]#  vi hive-site.xml  

 

 

最后进行初始化命令为:schematool -initSchema -dbType mysql

 

在任意目录下输入hive,则ok。

  • 创建数据库、在数据库中创建数据表,在本地“造数据”

 

Create databases text;

例:

CREATE TABLE t4(name String ,age int,likes ARRAY<String>,relation MAP<String,String>,location struct<country:String,city:String ,doornum:int>) ROW FORMAT  DELIMITED FIELDS TERMINATED BY ',' COLLECTION ITEMS TERMINATED BY '^' MAP KEYS TERMINATED BY ':';

 

“造的数据”已经分好类

# 字段分割符是逗号

# 数组类型分隔符是^号

# map数据类型分割符是冒号

 

tom,18,lol^篮球^音乐,father:tom1^mother:lili,US^LOS^16

 

用load上传本地数据到表中

load data local inpath '/usr/local/apps/test1.txt' into table t4;

 

  • eclipse操作步骤(要配好maven创建maven项目)

 

  • maven项目需要的包,在“pom.xml”中添加

 

<dependency>

<groupId>org.apache.hive </groupId>

<artifactId>hive-jdbc </artifactId>

<version>2.1.1</version>

</dependency>

 

java连接hive代码:

            //加载驱动

            Class.forName("org.apache.hive.jdbc.HiveDriver");

            //获取连接

            String url="jdbc:hive2://192.168.1.90:10000/test";

            Connection connection=  DriverManager.getConnection(url,"root","");

           //执行sql

            PreparedStatement ps=connection.prepareStatement("SELECT  *  FROM table01 ");

           //获取结果

            ResultSet rs=ps.executeQuery();

            while (rs.next()){

                System.out.println("测试数据输出结果是:"+rs.getString(1));

            }

            //关闭连接

            rs.close();

            ps.close();

            connection.close();

 

在代码中添加

 

 

注意:引的包全是sql  引完后会报异常,抛出异常即可

 

如出现这个问题

 

解决方法:

 

<dependency>

                   <groupId>jdk.tools</groupId>

                   <artifactId>jdk.tools</artifactId>

                   <version>1.7</version>

                   <scope>system</scope>

                   <systemPath>${JAVA_HOME}/lib/tools.jar</systemPath>

</dependency>

 

 

 

 

 

 

 

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值