TOP

hadoop及hive常用命令查询
2018-11-29 01:42:45 】 浏览:627
Tags:hadoop hive 常用 命令 查询

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/hzhj2007/article/details/81740810

hadoop操作命令

基本命令格式:

hadoop fs -cmd < args >

  • 创建目录
hadoop fs -mkdir -p < hdfs path>

  • 删除文件
hadoop fs -rm < hdfs file >
  • 删除目录
hadoop fs -rm -r < hdfs dir>	#删除目录
hadoop fs -rm -r < hdfs dir>/* #删除目录中的内容

  • 修改路径
hadoop fs -mv < hdfs file or dir >... < hdfs dir >
hadoop fs -cp < hdfs file > < hdfs file >

  • 查看目录文件
hadoop fs -ls -R /
  • 查询文件数目
hadoop fs -count < hdfs path >
  • 查询文件大小

hadoop fs -du - h < hdsf path>
  • 路径的状态信息
hdoop fs -stat [format] < hdfs path > [format]可选参数有:%b(文件大小),%o(Block大小),%n(文件名),%r(副本个数),%y(最后一次修改日期和时间)

其他

  • 上传本地文件至hdfs中
hadoop fs -put < local file or dir >...< hdfs dir >	hdfs dir 一定要存在,否则命令不会执行
  • 下载hdfs文件至本地
hadoop fs -get < hdfs file > < local file or dir> local file不能和 hdfs file名字不能相同,否则会提示文件已存在

hive操作命令

执行环境

hive环境中所有命令续以分号“;”结尾。

hive	终端输入该命令即可进入hive环境
hive>quit;	退出hive环境

  • 创建表

CREATE EXTERNAL TABLE ${table_name}	#创建一个指定名字的表。若该表存在,则抛出异常;EXTERNAL,外部表,须指定LOCATION
(
cookie string comment '用户COOKIE',	#字段信息:key, key类型, 注释
price int comment '用户对应车型价格',
source int comment '来源'
)
PARTITIONED BY(dt STRING, type STRING)	#两个分区,每一个分区单独存在一个目录下
ROW FORMAT DELIMITED FIELDS TERMINATED BY '\t' LINES TERMINATED BY '\n'	#'\t'为分割符,'\n'为换行符
STORED AS TEXTFILE	#存储格式:TEXTFILE(默认), RCFILE(行列存储),INPUTFORMAT(自定义)
LOCATION '${HDFS_DIR}/${hive_db}/${table_level}/${table_name}';	#指定位置
ALTER TABLE ${table_name} SET SERDEPROPERTIES('serialization.null.format'='');	#修改表中默认的NULL为''
  • 复制表,不复制数据

CREATE TABLE ${new_table_name} LIKE ${old_table_name};
  • 增加分区
alter table ${table_name} add partition(dt='2017-11-01') location '${HDFS_DIR}/${hive_db}/${table_level}/${table_name}/part20171101';

  • 删除表

drop table if exists ${table_name};
  • 删除分区
alter table ${table_name} drop partition(dt ='2017-11-01', type='test');

  • 更改分区表的位置

  • 修改表的名字
alter table ${old_name} rename to ${new_name};

  • 查询hive库
show databases;	查看所有hive库列表
desc database ${db_name};	查看hive库信息
  • 查询表字段
show tables;	查看表列表
desc ${table_name};	查看某表信息
  • 查看表的分区

show partitions ${table_name};	#

其他

  • 上传本地文件至hive表

load data local inpath '/data/home/huangzhongjie/car_list.txt' overwrite into table car_list partition(dt='2017-11-01',type='train');	#overwrite:重写,会覆盖之前所有数据

参考文献:

  1. https://hadoop.apache.org/docs/r1.0.4/cn/hdfs_shell.html
  2. https://cloud.tencent.com/document/product/589/12317
  3. http://www.runoob.com/wp-content/uploads/2016/07/png-Hadoop-by-StuQ.png

hadoop及hive常用命令查询 https://www.cppentry.com/bencandy.php?fid=114&id=189650

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇Hadoop底层机制 下一篇深入浅出Hadoop: 高效处理大数据