zoukankan      html  css  js  c++  java
  • hive基本语法

    创建表

    CREATE [EXTERNAL] TABLE t_lxw1234 (
      id INT,
      ip STRING COMMENT '访问者IP',
      avg_view_depth DECIMAL(5,1),
      bounce_rate DECIMAL(6,5)
    ) COMMENT 'lxw的大数据田地-lxw1234.com'
    PARTITIONED BY (day STRING)
    ROW FORMAT DELIMITED
    FIELDS TERMINATED BY ','
    MAP KEYS TERMINATED BY ':'
    STORED AS textfile
    LOCATION 'hdfs://cdh5/tmp/lxw1234/';

    EXTERNAL:表示该表为外部表,如果不指定EXTERNAL关键字,则表示内部表
    COMMENT: 为表和列添加注释。关键字PARTITIONED BY: 表示该表为分区表,分区字段为day,类型为string。

    ROW FORMAT DELIMITED: 指定表的分隔符,通常后面要与以下关键字连用
    FIELDS TERMINATED BY ',':指定每行中字段分隔符为逗号
    LINES TERMINATED BY ' ':指定行分隔符 。
    COLLECTION ITEMS TERMINATED BY ',':指定集合中元素之间的分隔符
    MAP KEYS TERMINATED BY ':' :指定数据中Map类型的Key与Value之间的分隔符
    STORED AS file_format :指定表在HDFS上的文件存储格式,
    可选的文件存储格式有:
      TEXTFILE:文本(默认值);
      SEQUENCEFILE:二进制序列文件;
      RCFILE、ORC、PARQUET:几种列式存储格式文件。
      LOCATION: 指定表在HDFS上的存储位置。

    加载数据到hive

    1、加载本地文件到hive表
      load data local inpath '/opt/datas/emp.txt' into table default.emp ;
      load data local inpath '/usr/local/app/emp.txt' into table default.emp partition (month='201805',day='31') ;
    2、加载hdfs文件到hive中
      load data inpath '/user/beifeng/hive/datas/emp.txt' overwrite into table default.emp ;
    3、加载数据覆盖表中已有的数据
      load data inpath '/user/beifeng/hive/datas/emp.txt' into table default.emp ;
    4、创建表是通过insert加载
      create table default.emp_ci like emp ;
      insert into table default.emp_ci select * from default.emp ;

    hive到文件

    1、导入数据到本地目录
      insert overwrite local directory '/opt/datas/hive_exp_emp' select * from default.emp ;
      insert overwrite local directory '/opt/datas/hive_exp_emp2'
        ROW FORMAT DELIMITED FIELDS TERMINATED BY ' ' COLLECTION ITEMS TERMINATED BY ' '
        select * from default.emp ;
    2、导出数据到HDFS中
      insert overwrite directory '/user/zhangxin/export_test' select value from test_table;
    3、hive -e "select * from default.emp ;" > /opt/datas/exp_res.txt

    执行脚本

    hive -f words.hql
    hive> source /home/hadoop/words.hql;
    hive -e "select * from db_hive.student ;"
    hive -e "show create table words;">>words.ddl

  • 相关阅读:
    XmlDocument和XDocument转String
    C# 6.0 (C# vNext) 新功能之:Null-Conditional Operator(转)
    <%%>与<scriptrunat=server>,<%=%>与<%#%>的区别(转)
    WINDOWS的用户和用户组说明
    C#获取网页内容的三种方式(转)
    C#操作XML方法:新增、修改和删除节点与属性
    linq to xml操作XML(转)
    C#使用tesseract3.02识别验证码模拟登录(转)
    C#修饰符
    SQL语句备份和还原数据库(转)
  • 原文地址:https://www.cnblogs.com/boye169/p/14839332.html
Copyright © 2011-2022 走看看