HBase(1):shell基本命令

一.功能实现

使用shell基本命令,进行hbase数据库操作

二.环境准备

1.开启hdfs

2.开启zk

3.开启regionser和master

三.基本Hbase操作

1.hbase namespace

(1)创建namespace

create_namespace 'ns1'
create_namespace 'nstest'

(2)展示namespace

list_namespace
list_namespace_tables 'hbase'  查看'hbase'命名空间下的表

(3)描述namespace

describe_namespace 'ns1'   

(4)删除namespace

drop_namespace  'ns1'

2.DDL

(1)展示用户所有表

list

(2)创建表  

create 'ns1:t1', {NAME => 'f1', VERSIONS => 5},{NAME => 'f2', VERSIONS => 5}
create 't1', 'f1', 'f2', 'f3'
   -》指定某一个命名空间下的某一张表
   -》必须要指定至少一个列簇 {NAME=>'f1'}
   -》"=>"表示等于的意思
   -》一对{}只能定义一个列簇,不同的可以定义多个
   -》{}中的变量必须是大写的

(3)描述一张表

desc 'student'
describe 'nstest:student'

(4)修改表 

修改某个列簇下的某些属性:如version
alter 't1', NAME => 'f1', VERSIONS => 5
如果表下没有这个列簇,就会新增这个列簇
alter 't1', NAME => 'f4', VERSIONS => 5
删除列簇
alter 't1', NAME => 'f1', METHOD => 'delete'
alter 't1', 'delete' => 'f2'

(5)删除表:删除表之前首先要禁用该表

disable 't1'
drop 't1'

3.DML:hbase DML

 (1)put插入

put 'ns1:stuInfo','1001','info:name','张三'
put 'ns1:stuInfo','1001','info:age','18'
put 'ns1:stuInfo','1001','info:sex','男'
put 'ns1:stuInfo','1002','info:name','lisi'
put 'ns1:stuInfo','1002','info:age','18'
put 'ns1:stuInfo','1002','info:sex','female'
put 'ns1:stuInfo','1003','info:name','wangwu'
put 'ns1:stuInfo','1003','info:age','18'
put 'ns1:stuInfo','1003','info:sex','male'	
		
put 'ns1:stuInfo','1001','contact:phone','1111111111'
put 'ns1:stuInfo','1003','contact:email','[email protected]'

(2)get查询

查询某个rowkey的数据
get 'nstest:student','1001'
查询某个列的数据
get 'nstest:student','1001','info:name'
查询某个列簇的数据
get 'nstest:student','1001','info'

(3)scan(支持全表查询)

类似于select * from
scan 'nstest:student'
从指定rowkey开始查,包括了指定rowkey的数据
scan 'nstest:student',{STARTROW => '1002'}
数据包头不包后
scan 'nstest:student',{STARTROW => '1002',STOPROW => '1003'}

(4)delete删除

delete 'nstest:student', '1001', 'info:name' 

删除某rowkey的数据
deleteall 'nstest:student', '1001'

(5)清空数据

truncate table

猜你喜欢

转载自blog.csdn.net/u010886217/article/details/84575226