Hadoop常用命令学习

创建文件夹
hadoop fs -mkdir /input

将本地文件存储至hadoop
hadoop fs -put E:\hadoop.docx /input

将hadoop上某个文件down至本地已有目录下
hadoop dfs –get /user/t/ok.txt /home/t

删除hadoop上指定文件夹(包含子目录等)
hadoop fs -rm -r -f /output
hdfs dfs –rmr /user/t

删除hadoop上指定文件
hdfs dfs –rm /user/t/ok.txt

在hadoop指定目录下新建一个空文件
hdfs dfs  -touchz  /user/new.txt

将hadoop上某个文件重命名
hdfs dfs –mv  /user/test.txt  /user/ok.txt   (将test.txt重命名为ok.txt)

将hadoop指定目录下所有内容保存为一个文件,同时down至本地
hdfs dfs –getmerge /user /home/t

将正在运行的hadoop作业kill掉
hadoop job –kill  [job-id]

查看帮助
hdfs dfs -help 

运行程序
hadoop jar /E:\hadoop-2.7.7\share\hadoop\mapreduce\hadoop-mapreduce-examples-2.7.7.jar wordcount /input /output

查看目录
hadoop fs -ls output

查看结果
hadoop fs -cat output/part-r-0000


1.对hdfs操作的命令格式是hdfs dfs  
1.1 -ls 表示对hdfs下一级目录的查看
1.2 -lsr 表示对hdfs目录的递归查看
1.3 -mkdir 创建目录
1.4 -put 从Linux上传文件到hdfs
1.5 -get 从hdfs下载文件到linux
1.6 -text 查看文件内容
1.7 -rm 表示删除文件
1.7 -rmr 表示递归删除文件

2.hdfs在对数据存储进行block划分时,如果文件大小超过block,那么按照block大小进行划分;不如block size的,划分为一个块,是实际数据大小。
hadoop常用命令:  
hdfs dfs  查看Hadoop HDFS支持的所有命令   
hdfs dfs –ls  列出目录及文件信息   
hdfs dfs –lsr  循环列出目录、子目录及文件信息   
hdfs dfs –put test.txt /user/sunlightcs  将本地文件系统的test.txt复制到HDFS文件系统的/user/sunlightcs目录下   
hdfs dfs –get /user/sunlightcs/test.txt .  将HDFS中的test.txt复制到本地文件系统中,与-put命令相反   
hdfs dfs –cat /user/sunlightcs/test.txt  查看HDFS文件系统里test.txt的内容   
hdfs dfs –tail /user/sunlightcs/test.txt  查看最后1KB的内容   
hdfs dfs –rm /user/sunlightcs/test.txt  从HDFS文件系统删除test.txt文件,rm命令也可以删除空目录   
hdfs dfs –rmr /user/sunlightcs  删除/user/sunlightcs目录以及所有子目录   
hdfs dfs –copyFromLocal test.txt /user/sunlightcs/test.txt  从本地文件系统复制文件到HDFS文件系统,等同于put命令   
hdfs dfs –copyToLocal /user/sunlightcs/test.txt test.txt  从HDFS文件系统复制文件到本地文件系统,等同于get命令   
hdfs dfs –chgrp [-R] /user/sunlightcs  修改HDFS系统中/user/sunlightcs目录所属群组,选项-R递归执行,跟linux命令一样   
hdfs dfs –chown [-R] /user/sunlightcs  修改HDFS系统中/user/sunlightcs目录拥有者,选项-R递归执行   
hdfs dfs –chmod [-R] MODE /user/sunlightcs  修改HDFS系统中/user/sunlightcs目录权限,MODE可以为相应权限的3位数或+/-{rwx},选项-R递归执行
hdfs dfs –count [-q] PATH  查看PATH目录下,子目录数、文件数、文件大小、文件名/目录名   
hdfs dfs –cp SRC [SRC …] DST       将文件从SRC复制到DST,如果指定了多个SRC,则DST必须为一个目录   
hdfs dfs –du PATH  显示该目录中每个文件或目录的大小   
hdfs dfs –dus PATH  类似于du,PATH为目录时,会显示该目录的总大小   
hdfs dfs –expunge  清空回收站,文件被删除时,它首先会移到临时目录.Trash/中,当超过延迟时间之后,文件才会被永久删除   
hdfs dfs –getmerge SRC [SRC …] LOCALDST [addnl]      获取由SRC指定的所有文件,将它们合并为单个文件,并写入本地文件系统中的LOCALDST,选项addnl将在每个文件的末尾处加上一个换行符   
hdfs dfs –touchz PATH   创建长度为0的空文件   
hdfs dfs –test –[ezd] PATH     对PATH进行如下类型的检查:  -e PATH是否存在,如果PATH存在,返回0,否则返回1  -z 文件是否为空,如果长度为0,返回0,否则返回1  -d 是否为目录,如果PATH为目录,返回0,否则返回1   
hdfs dfs –text PATH  显示文件的内容,当文件为文本文件时,等同于cat,文件为压缩格式(gzip以及hadoop的二进制序列文件格式)时,会先解压缩    hdfs dfs –help ls  查看某个[ls]命令的帮助文档


---------------------------------HBASE---------------------------------------
1. list_namespace:查询所有命名空间
hbase(main):001:0> list_namespace
NAMESPACE                                                                       
default                                                                         
hbase

2. list_namespace_tables : 查询指定命名空间的表
hbase(main):014:0> list_namespace_tables 'hbase'
TABLE
meta
namespace

3. create_namespace : 创建指定的命名空间
hbase(main):018:0> create_namespace 'myns'
hbase(main):019:0> list_namespace
NAMESPACE
default
hbase
myns

4. describe_namespace : 查询指定命名空间的结构
hbase(main):021:0> describe_namespace 'myns'
DESCRIPTION
{NAME => 'myns'}


5. alter_namespace :修改命名空间的结构
hbase(main):022:0>  alter_namespace 'myns', {METHOD => 'set', 'name' => 'eRRRchou'}

hbase(main):023:0> describe_namespace 'myns'
DESCRIPTION
{NAME => 'myns', name => 'eRRRchou'}
修改命名空间的结构=>删除name
hbase(main):022:0> alter_namespace 'myns', {METHOD => 'unset', NAME => 'name'}
hbase(main):023:0> describe_namespace 'myns'

6. 删除命名空间
hbase(main):026:0> drop_namespace 'myns'

hbase(main):027:0> list_namespace
NAMESPACE
default
hbase

7. 利用新添加的命名空间建表
hbase(main):032:0> create 'myns:t1', 'f1', 'f2'
DDL
1. 查询所有表
hbase(main):002:0> list
TABLE                                                                           
HelloHbase                                                                      
kylin_metadata                                                                  
myns:t1                                                                         
3 row(s) in 0.0140 seconds

=> ["HelloHbase", "kylin_metadata", "myns:t1"]

2. describe : 查询表结构
hbase(main):003:0> describe 'myns:t1'

{NAME => 'f1', BLOOMFILTER => 'ROW', VERSIONS => '1', IN_MEMORY => 'false', KEEP
_DELETED_CELLS => 'FALSE', DATA_BLOCK_ENCODING => 'NONE', TTL => 'FOREVER', COMP
RESSION => 'NONE', MIN_VERSIONS => '0', BLOCKCACHE => 'true', BLOCKSIZE => '6553
6', REPLICATION_SCOPE => '0'}                                                   
{NAME => 'f2', BLOOMFILTER => 'ROW', VERSIONS => '1', IN_MEMORY => 'false', KEEP
_DELETED_CELLS => 'FALSE', DATA_BLOCK_ENCODING => 'NONE', TTL => 'FOREVER', COMP
RESSION => 'NONE', MIN_VERSIONS => '0', BLOCKCACHE => 'true', BLOCKSIZE => '6553
6', REPLICATION_SCOPE => '0'}

3. 创建分片表
hbase(main):007:0> create 'myns:t2', 'f1', SPLITS => ['10', '20', '30', '40']

4. 修改表,添加修改列簇信息
hbase(main):009:0> alter 'myns:t1', {NAME=>'info1'}
hbase(main):010:0> describe 'myns:t1'

5. 删除列簇
hbase(main):014:0> alter 'myns:t1', {'delete' => 'info1'}
hbase(main):015:0> describe 'myns:t1'

6. 删除表
hbase(main):016:0> disable 'myns:t1'
hbase(main):017:0> drop 'myns:t1'
DML
用到的表创建语句:
hbase(main):011:0> create 'myns:user_info','base_info','extra_info'

1. 插入数据(put命令,不能一次性插入多条)
hbase(main):012:0> put 'myns:user_info','001','base_info:username','张三'

2. scan扫描
hbase(main):024:0> scan 'myns:user_info'

3. 通过指定版本查询
hbase(main):024:0> scan 'myns:user_info', {RAW => true, VERSIONS => 1}
hbase(main):024:0> scan 'myns:user_info', {RAW => true, VERSIONS => 2}

4. 查询指定列的数据
hbase(main):014:0> scan 'myns:user_info',{COLUMNS => 'base_info:username'}

5. 分页查询
hbase(main):021:0> scan 'myns:user_info', {COLUMNS => ['base_info:username'], LIMIT => 10, STARTROW => '001'}

6. get查询
hbase(main):015:0> get 'myns:user_info','001','base_info:username'
hbase(main):017:0> put 'myns:user_info','001','base_info:love','basketball'
hbase(main):018:0> get 'myns:user_info','001'

7. 根据时间戳查询 是一个范围,包头不包尾
hbase(main):029:0> get 'myns:user_info','001', {'TIMERANGE' => [1571650017702, 1571650614606]}

8. hbase排序
插入到hbase中去的数据,hbase会自动排序存储:
排序规则:  首先看行键,然后看列族名,然后看列(key)名; 按字典顺序

9. 更新数据
hbase(main):010:0> put 'myns:user_info', '001', 'base_info:name', 'rock'
hbase(main):011:0> put 'myns:user_info', '001', 'base_info:name', 'eRRRchou'

10. incr计数器
hbase(main):053:0> incr 'myns:user_info', '002', 'base_info:age3'

11. 删除
hbase(main):058:0> delete 'myns:user_info', '002', 'base_info:age3'

12. 删除一行
hbase(main):028:0> deleteall 'myns:user_info','001'

13. 删除一个版本
hbase(main):081:0> delete 'myns:user_info','001','extra_info:feature', TIMESTAMP=>1546922931075

14. 删除一个表
hbase(main):082:0> disable 'myns:user_info'
hbase(main):083:0> drop 'myns:user_info'

15. 判断表是否存在
hbase(main):084:0> exists 'myns:user_info'

16. 表生效和失效
hbase(main):085:0> enable 'myns:user_info'
hbase(main):086:0> disable 'myns:user_info'

17. 统计表行数
hbase(main):088:0> count 'myns:user_info'

18. 清空表数据
hbase(main):089:0> truncate 'myns:user_info'     
     
 

  • 3
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值