设为首页 加入收藏

TOP

Hbase基本命令
2018-11-29 02:48:03 】 浏览:29
Tags:Hbase 基本 命令
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_36567024/article/details/79432239
-》hbase的shell命令
-》启动shell:bin/hbase shell
-》如果shell要删除命令,需要按住ctrl+backsapce键
-》help帮助信息

Group name: general
Commands: status, table_help, version, whoami


Group name: ddl
Commands: alter, alter_async, alter_status, create, describe, disable, disable_all, drop, drop_all, enable, enable_all,exists, get_table, is_disabled, is_enabled, list, show_filters

Group name: namespace
Commands: alter_namespace, create_namespace, describe_namespace, drop_namespace, list_namespace, list_namespace_tables


Group name: dml
Commands: append, count, delete, deleteall, get, get_counter, incr, put, scan, truncate, truncate_preserve


-》namesapce
-》展示命名空间
list_namespace
-》创建命名空间
create_namespace 'hadoop20'
create_namespace 'ns1', {'hadoop'=>'20'} (很少用)
-》描述命名空间
describe_namespace 'hadoop20'
-》修改命名空间(几乎不重要)
alter_namespace 'ns1', {METHOD => 'set', 'hadoop' => '30'}
-》删除命名空间
drop_namespace


-》table
-》展示表
list
-》创建表
create 'ns1:t1', {NAME => 'f1', VERSIONS => 5}
-》NAME:列簇
-》VERSIONS:版本,默认的是1
-》每一个大括号里面只能有一个列簇,不同的大括号可以定义不同的列簇
-》大括号里的变量必须大写如:NAME
-》=>表示等于的意思
create 't1', 'f1', 'f2', 'f3'
-》't1'表示表名
-》'f1', 'f2', 'f3' 表示列簇
-》自己创建
create 'hadoop20:stu_info' ,{NAME => 'info'}
create 'stu_info', 'f1', 'f2', 'f3'
-》描述表
describe 'hadoop20:stu_info'
desc 'hadoop20:stu_info'
-》修改表
alter 'hadoop20:stu_info', NAME => 'f1', VERSIONS => 5
alter 'hadoop20:stu_info', 'f1', {NAME => 'f2', IN_MEMORY => true}, {NAME => 'f3', VERSIONS => 5}
-》修改并非是修改,而是添加或删除一个列簇
-》表名称、列簇名称已经不能更改
-》创建表时,注意列簇名称、表名称要想好
alter 'hadoop20:stu_info', NAME => 'f1', METHOD => 'delete'
alter 'hadoop20:stu_info', 'delete' => 'f2'
-》删除表
disable 'stu_info'
drop 'stu_info'
-》删除表之前要首先禁用该表
-》启用:enable


-》DML语句
-》插入/修改数据put
put 'ns1:t1', 'r1', 'c1', 'value'
-》r1表示rowkey
-》c1表示列簇
-》value表示值
put 'hadoop20:stu_info' , '1001' ,'info:name' ,'tom'
put 'hadoop20:stu_info' , '1001' ,'info:age' ,'18'
put 'hadoop20:stu_info' , '1001' ,'info:sex' ,'male'
put 'hadoop20:stu_info' , '1002' ,'info:name' ,'tom'
put 'hadoop20:stu_info' , '1002' ,'info:age' ,'18'
put 'hadoop20:stu_info' , '1002' ,'info:sex' ,'male'
put 'hadoop20:stu_info' , '1003' ,'info:name' ,'tom'
put 'hadoop20:stu_info' , '1003' ,'info:age' ,'18'
put 'hadoop20:stu_info' , '1003' ,'info:sex' ,'male'
-》查询数据
-》get查询
-》不支持全表查询(快速查询)
get 'hadoop20:stu_info', '1001' 查询某个rowkey的数据
get 'hadoop20:stu_info', '1001', 'info' 指定某个列簇的查询
get 'hadoop20:stu_info', '1001', 'info:name' 指定某个列
-》hbase数据默认是按照字典序进行排序
-》scan查询
-》支持全表查询,类似于select * from的方式
scan 'hadoop20:stu_info'
-》支持部分的查询
scan 'ns1:t1', {COLUMNS => ['c1', 'c2'], LIMIT => 10, STARTROW => 'xyz'}
scan 'ns1:t1', {COLUMNS => ['c1', 'c2'], LIMIT => 10, STARTROW => 'xyz',STOPROW=> 'XYZ'}
-》走一个
scan 'hadoop20:stu_info', {COLUMNS => ['info'], STARTROW => '1002'}
scan 'hadoop20:stu_info', {COLUMNS => ['info'], STARTROW => '1002',STOPROW => '1003'}
-》包头不包尾
-》删除数据
-》delete 'hadoop20:stu_info', '1003', 'info'
delete 'hadoop20:stu_info', '1003'
-》删除一个列簇或者rowkey是删不掉的,只能删除某个列的数据,就是指定列
delete 'hadoop20:stu_info', '1003', 'info:name'
-》deleteall 'hadoop20:stu_info', '1003'
deleteall 'hadoop20:stu_info', '1003', 'info'
-》通过deleteall删除某一个rowkey或列簇
-》清空数据
-》truncate, truncate_preserve
-》区别:
-》truncate 清除数据,并且清除了分区的个数
-》truncate_preserve 清除数据,不清除分区的个数
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇HBase入门-MySQL与HBase 下一篇hbase 数据量和cpu的关系

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目