zoukankan      html  css  js  c++  java
  • Hive分区

    1、查看分区

    Hive> show partitions  table_name;

    dt=20101101

    dt=20101102

    ....

    Time taken: 0.140 seconds, Fetched: 10 row(s)

    2、  hive>desc  tb  partition(dt=20170612) 

    3.hive>  desc extended  tb  partition(dt=20170612) 

    可以用这个命令查看有时候建立分区是在特定指定location的。

    4、建立分区表

    CREATE EXTERNAL TABLE seed_my (col MAP<STRING, STRING>) partitioned by (dt string) ROW FORMAT DELIMITED FIELDS TERMINATED BY ','  COLLECTION ITEMS TERMINATED BY ' ' MAP KEYS TERMINATED BY '|' STORED AS INPUTFORMAT "org.apache.hadoop.mapred.TextInputFormat" OUTPUTFORMAT "org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat" LOCATION 's3://up/seed/myhome'; 

     

    5、添加分区

    ALTER TABLE table_name ADD PARTITION (dt= '$dt') location '$dt';

    ALTER TABLE table_name ADD IF NOT EXISTS PARTITION (dt='$dt') LOCATION '/sss/$dt'; //一次添加一个分区

    ALTER TABLE table_name ADD PARTITION (dt='$dt', hour='$hour') location '/path/$dt/$hour  PARTITION (dt='$dt',  hour='$hour') location '/path/$dt/$hour';  //一次添加多个分区

    6删除分区

    ALTER TABLE table_name DROP IF EXISTS PARTITION (dt='dt');
    ALTER TABLE table_name DROP IF EXISTS PARTITION (dt='dt', hour='$hour');


    修改分区
    ALTER TABLE table_name PARTITION (dt='$dt') SET LOCATION "$path";
    ALTER TABLE table_name PARTITION (dt='$dt') RENAME TO PARTITION (dt='$dt_yyyymmdd’);

     
     
  • 相关阅读:
    hdu-1862 EXCEL排序
    hdu-1754 I Hate It
    hdu-1538 A Puzzle for Pirates
    在Window下安装Linux (ubuntu-16.04.2)
    Python爬虫--简单的单词查询
    Linux下MySQL在知道密码的情况下修改密码
    Linux下忘记MySQL密码的解决方法和输入mysqld_safe --skip-grant-tables &后无法进入MySQL的解决方法
    Python的下载及安装
    在Netbeans的项目中添加JDBC驱动程序
    Mac下截屏方法
  • 原文地址:https://www.cnblogs.com/xd502djj/p/7010919.html
Copyright © 2011-2022 走看看