hbase基本操作命令及练习

本文详细介绍了HBase的各种操作命令,包括命名空间管理、表的创建与修改、数据的增删查改、扫描操作以及表的清空与删除等。通过实例展示了如何在HBase中进行数据操作,如创建表`clazz_per`,插入、查询和删除数据等。
摘要由CSDN通过智能技术生成

hbase基本操作命令

1.命名空间

list_namespace:列举所以命名空间
list_namespace_tables:列举指定命名空间中的表
alter_namespace:修改命名空间
create_namespace:创建命名空间
describe_namespace:查看指定命名空间配置
drop_namespace:删除命名空间

2.新建表

create ‘命名空间:表名’ , ‘列族名1’ , ‘列族名2’,… , ‘列族名n’
create ‘命名空间:表名’,{语法参数}

在这里插入图片描述

3.查看表

desc '命名空间:表名’
describe '命名空间:表名’
list ‘命名空间:正则表达式’
exists '命名空间:表名’

list:列出HBase中所有的表信息

4.修改表

修改列族
alter ‘命名空间:表名’,{语法参数}
删除列族
alter ‘命名空间:表名’, NAME => ‘f1’, METHOD => ‘delete’
alter ‘命名空间:表名’, ‘delete’ => 'f1‘
修改表属性
alter ‘命名空间:表名’, MAX_FILESIZE => '134217728’
alter ‘命名空间:表名’, METHOD => ‘table_att_unset’, NAME => ‘MAX_FILESIZE’

5.删除表

disabled ‘命名空间:表名’
drop ‘命名空间:表名’

6.表数据增加

put:向表、行、列指定的单元格添加数据
一次只能为一个表的一行数据的一个列添加一个数据

put ‘表名’ , ‘行键’ , ‘列族:列标识符’ , '插入值’
put ‘表名’ , ‘行键’ , ‘列族:列标识符’ , ‘插入值’ ,时间戳

在这里插入图片描述

在添加数据时,HBase会自动为添加的数据添加一个时间戳,当然,也可以在添加数据时人工指定时间戳的值

7.表数据获取

get:通过表名、行、列、时间戳、时间范围和版本号来获得相应单元格的值

get的参数可以是table表名,rowkey,以及column,value.无法通过get直接获取一个表中的所有行,必须指定rowkey

get ‘表名’,‘rowkey’,‘列族’
get ‘表名’,‘rowkey’,‘列族:列’
get ‘表名’,‘rowkey’,‘列族’,‘列族’
get ‘表名’,‘rowkey’,{TIMERANGE=[时间戳,时间戳]}
get ‘表名’,‘rowkey’,{FILTER=>“ValueFiter(=,‘banary:值’)”}

在这里插入图片描述
8.表数据扫描
scan 浏览表的相关信息

scan ‘表名’, {其他参数}
scan '表名
scan ‘表名’,{COLUMN=>‘列族’}
scan ‘表名’,{COLUMN=>‘列族:列’}
scan ‘表名’,{STARTROW=>‘rowkey’,ENDROW=>‘rowkey’}
scan ‘表名’,{STARTROW=>‘rowkey’,LIMIT=>行数}
scan ‘表名’,FILTER=“RowFilter(操作符,‘binary=rowkey’)”
scan ‘表名’,FILTER=“RowFilter(=,‘substring=rowkey’)”
scan ‘表名’,FILTER=“ValueFilter(=,‘banary:值’)”

在这里插入图片描述
9.表数据删除

delete删除指定列
deleteall:删除指定行的数据

delete ‘表名’, ‘行键’, '列簇’
deleteall ‘表名’, '行键’

在这里插入图片描述
在这里插入图片描述
10.表数据清空

truncate是通过删除表后重新创建表结构实现的

truncate ‘表名’,
truncate_preserve ‘表名’
在这里插入图片描述

11.删除表

enable/disable:使表有效或无效
drop:删除表

12.查询表中数据的行数

count ‘表名’

在这里插入图片描述

练习题:
1、创建表 clazz_per,列族 scount ‘表名’
tudent,course,版本数 2
2、列表显示创建的表
3、显示 student 的表结构
4、插入数据
4、扫描表的所有数据
5、查看表中所有学生信息
6、查看表中所有学生的姓名以及 java 的成绩
7、查看表中数值大于 90 的所有记录
8、查看表中行键大于 1890002 的 1 行记录
9、查询列 name,返回首行记录
12、将表中 1890001 的姓名更新为 lidan 和 longdan,查看指定最近的 2 个版本
13、删除 1890001 的整行记录
14、清空表中所有记录
15、删除表 clazz_per

create 
'clazz_per',{NAME=>'student',VERSIONS=>2},{NAME=>'course',VERSIONS=>2}

list

describe 'clazz_per'

put 'clazz_per','1890001','student:name','changshan'
put 'clazz_per','1890001','student:age','20'
put 'clazz_per','1890001','course:java','90'
put 'clazz_per','1890001','course:vue','80'
put 'clazz_per','1890002','student:name','lisi'
put 'clazz_per','1890002','student:age','19'
put 'clazz_per','1890002','course:java','60'
put 'clazz_per','1890002','course:vue','70'
put 'clazz_per','1890003','student:name','liuwu'
put 'clazz_per','1890003','student:age','21'
put 'clazz_per','1890003','course:java','70'
put 'clazz_per','1890003','course:vue','90'
put 'clazz_per','1890004','student:name','liliu'
put 'clazz_per','1890004','student:age','20'
put 'clazz_per','1890004','course:java','55'
put 'clazz_per','1890004','course:vue','40'

scan 'clazz_per'

scan 'clazz_per',{COLUMNS=>'student'} 

scan 'clazz_per',{COLUMNS=>['student:name','course:java']}

scan 'clazz_per',{FILTER=>"ValueFilter(>,'binary:90')"}

scan 'clazz_per',{STARTROW=>'1890003',LIMIT=>1}

scan 'clazz_per',{COLUMNS=>'student:name',LIMIT=>1}

put 'clazz_per','1890001','student:name','longdan'

put 'clazz_per','1890001','student:name','lidan'

scan 'clazz_per',{COLUMNS=>'student:name',VERSIONS=>2}

deleteall 'clazz_per'','1890001'

truncate 'clazz_per'

distable 'clazz_per'

drop 'clazz_per'
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值