zoukankan      html  css  js  c++  java
  • Hive命令学习

    创建修改

    创建表

    CREATE TABLE testtable (foo INT, bar STRING);

    CREATE TABLE testtable LIKE other;

    CREATE TABLE logs(ts bigint,line string) PARTITIONED BY (dt String,country String);
    注:hive建表的时候默认的分割符是'01',若在建表的时候没有指明分隔符,load文件的时候文件的分隔符需要是'01'
    建表指定分隔符,例:

    create table pokes(foo int,bar string) 
      row format delimited fields
      terminated by '	'
      lines terminated by '
    ' stored as textfile;
    load data local inpath '/root/pokes.txt' into table pokes;

    更新命令

    更新表的名称:
    ALTER TABLE source RENAME TO target;

    添加新一列
    ALTER TABLE invites ADD COLUMNS (new_col2 INT COMMENT 'a comment');

    从本地文件加载数据:
    hive> LOAD DATA LOCAL INPATH '/home/hadoop/input/ncdc/micro-tab/sample.txt' OVERWRITE INTO TABLE records;

    删除表:
    DROP TABLE records;

    分区表语法

    添加分区表语法(表已创建,在此基础上添加分区):ALTER TABLE table_name ADD
    partition_spec [ LOCATION 'location1' ]
    partition_spec [ LOCATION 'location2' ] ...

    ALTER TABLE day_table ADD
    PARTITION (dt='2008-08-08', hour='08')
    location '/path/pv1.txt'

    删除分区语法:ALTER TABLE table_name DROP
    partition_spec, partition_spec,...

    用户可以用 ALTER TABLE DROP PARTITION 来删除分区。分区的元数据和数据将被一并删除。例:

    ALTER TABLE day_hour_table DROP PARTITION (dt='2008-08-08', hour='09');

    数据加载进分区表中语法

    LOAD DATA [LOCAL] INPATH 'filepath' [OVERWRITE] INTO TABLE tablename [PARTITION (partcol1=val1, partcol2=val2 ...)]

    例:

    LOAD DATA INPATH '/user/pv.txt' INTO TABLE day_hour_table PARTITION(dt='2008-08- 08', hour='08'); LOAD DATA local INPATH '/user/hua/*' INTO TABLE day_hour partition(dt='2010-07- 07');
    当数据被加载至表中时,不会对数据进行任何转换。Load操作只是将数据复制至Hive表对应的位置。数据加载时在表下自动创建一个目录

    查看命令

    展示表中有多少分区:

    SHOW PARTITIONS logs;

    SHOW TABLES '.*s';

    显示表的结构信息

    DESCRIBE testtable;

    显示所有函数:
    hive> show functions;

    查看函数用法:
    hive> describe function substr;

    查看数组、map、结构
    hive> select col1[0],col2['b'],col3.c from complex;

    参考源:http://blog.csdn.net/xiaoping8411/article/details/7605039

  • 相关阅读:
    golang不想http自动处理重定向的解决方案
    学习WebDav
    keepass+坚果云管理我的密码
    定制右键功能,看这一篇就够了
    翻转二叉树
    加密sqlite3数据库文件
    算出cron表达式接下来几次执行时间
    关于斐波那契数列的3种解法
    golang通过cgo调用lua
    学习go语言并完成第一个作品
  • 原文地址:https://www.cnblogs.com/cfox/p/3396337.html
Copyright © 2011-2022 走看看