zoukankan      html  css  js  c++  java
  • 创建GZIP压缩格式的HIVE表

    2015年05月06日 13:37:22 大数据部 阅读数 3232更多

    本文链接:https://blog.csdn.net/BDCHome/article/details/45534687

    GZIP为Linux系统中最常用的压缩格式,创建GZIP压缩格式的HIVE表具体步骤如下。

    1、以 STORED AS TEXTFILE 为存储格式创建HIVE表

    CREATE TABLE TRACKLOG (
        DATEDAY STRING COMMENT "日期",
        IP STRING COMMENT "IP",
        COOKIEID STRING COMMENT "用户COOKIE",
        USERID STRING COMMENT "用户ID", 
        LOGSERVERIP STRING COMMENT "记录日志服务器IP",
        REFERER STRING COMMENT "来源 :用户浏览网页的REFER",
        REQUESTURL STRING COMMENT "访问网址 : 当前访问网址"
    ) PARTITIONED BY(DAY STRING)
    ROW FORMAT DELIMITED FIELDS TERMINATED BY ' '
    STORED AS TEXTFILE ;

    2、TEXTFILE格式可使用普通文本格式数据、也可使用GZIP的压缩格式,HIVE做自动解压GZIP的格式。

    3、GZIP的压缩方法:
    压缩当前目录下所有的 *.dat 文件

    gzip *.dat

    4、装载数据到HIVE分区表中

    LOAD DATA LOCAL INPATH 
    '/DISKG/BIGDATA/10-0-251-146/TRACKLOG/20150123*.DAT' 
    OVERWRITE INTO TABLE TRACKLOG PARTITION (DAY='20150123'); 

    或者通过mapreduce加载数据,需要先设置hive的压缩参数:

    set hive.enforce.bucketing=true; 
    set hive.exec.compress.output=true;  
    set mapred.output.compress=true;  
    set mapred.output.compression.codec=org.apache.hadoop.io.compress.GzipCodec;  
    set io.compression.codecs=org.apache.hadoop.io.compress.GzipCodec;  
    
    insert overwrite table trackloggzip 
    PARTITION (day='20150124') 
    select 
        dateday, datetime ,ip,cookie  ,userid   
        ,logserverip ,source ,requesturl ,remark1 
        ,remark2,alexaflag ,ua ,  wirelessflag 
    from tracklog where day='20150124';

    5、删除一个分区

    ALTER TABLE TRACKLOG DROP PARTITION(DAY='20130823') 

    6、GZIP的压缩,有着较好的通用性(LINUX系统中最常用的压缩方式),及良好的压缩比率(经测试文本压缩为23%),同时SPARK-SQL也能完美支持GZIP的格式。

  • 相关阅读:
    div相对屏幕居中
    Webstorm快捷键
    VIM快捷键
    美食 pizza 家常菜
    ln -s 软链接
    解决Linux服务器执行出现-bash: ./xxx.sh: /bin/sh^M: bad interpreter: No such file or directory
    PHP Apache 搭建FastCGI环境
    VS Code 添加php.validate.executablePath 路径
    git push 时报错 remote: The project you were looking for could not be found.
    PHP类中私有静态成员初始化
  • 原文地址:https://www.cnblogs.com/grj001/p/12224203.html
Copyright © 2011-2022 走看看