zoukankan      html  css  js  c++  java
  • Hive学习(二)

    1、Hive数据导入

    2、Hive的数据查询

    3、Hive的Java客户端和自定义函数

    1、Hive数据导入

    (1.1)使用Load语句导入

    HiveQL中提供LOAD DATA命令,用于导入数据到Hive表中。根据导入文件是在本地,还是在HDFS文件系统上,LOAD DATA命令,又可分为LOAD DATA LOCAL INPATHLOAD DATA INPATH

    将student02.txt导入t2中

    load data  local inpath '/root/data/student01.txt' into table t2
    如果指明Local 则说明数据存储在lnux操作系统上,否则数据存储在HDFS中
    假设文件在HDFS中
    load data inpath'/user/b.txt' into table t2;

    数据加载到分区表中

    load data local inpath  '/root/data/'  
    
    into 
    
    table partition_table_1
    
    partition(sex='')
    load data local inpath  '/root/data/'  
    
    into 
    
    table partition_table_2
    
    partition(sex='')

    (1.2)使用Sqoop导入数据

    (1.3)使用HDFS命令

    Hive表数据与HDFS文件是对应的,因此,可以使用HDFS文件管理命令将文件直接复制/移动到Hive表数据存放目录,从而达到将数据导入相应Hive表的目的。 
    使用如下命令,建立一个Hive表user:

    create table user(id int,name string) row format delimited fields terminated by ',' ;

    通过以下命令将“a.txt”文件直接复制到表对应的数据存放目录:

    hadoop fs -put a.txt /user/hive/warehouse/user/

    (1.4)使用 insert   into table tablename select ...语句

    首先使用如下命令创建一个新的Hive表userlog。

    create table userlog(id int,name string)

    接着使用如下命令从以上提及到的user表中获取数据插入userlog表中。

    insert into  table  userlog 
       selectid,name from user

    (1.5)使用create table tablenames as select ...语句

    可以在创建Hive表的同时从其他表获取数据进行填充。比如执行如下语句,表示创建了一个新的Hive表,同时从上述提及到的user表中获取数据进行了填充。

    create table  personlog 
    as 
    select id,name from user

    2、Hive的数据查询

    3、Hive的Java客户端和自定义函数

  • 相关阅读:
    Install the Maven in your computer
    《李嘉诚全传》--孙良珠
    Crystal Reports 2008(水晶报表) 第一个报表
    《唤醒心中的巨人》--[美]安东尼·罗宾
    《写给女人》--[美]桃乐丝·卡耐基
    Crystal Reports 2008(水晶报表) JDBC连接mysql数据库
    Crystal Reports 2008(水晶报表) 启动时检查更新
    Crystal Reports 2008(水晶报表) 安装
    《百年孤独》--[哥伦比亚]加夫列尔·加西亚·马尔克斯
    《自己拯救自己》--[英]塞缪尔·斯迈尔斯
  • 原文地址:https://www.cnblogs.com/wangleBlogs/p/9668833.html
Copyright © 2011-2022 走看看