赞
踩
hbase 是一个No SQL数据库
hbase shell 操作语法:插入
增,删,改,查
在shell中字母写错,删除:按住Ctrl然后删除 也可以ctrl+u 全删除
帮助命令:help
创建表:create 'student','cf1'
插入数据:put 'student','1001','cf1:age','20'
查看:scan 'student'
scan 'student',{STARTROW => '1001',STOPROW => '1002'}
scan 'student',{STARTROW => '1001'} 从1001到最后
查询表结构:desc 'student'
get查询:get 'student','1001'
get 'student','1001','cf1:name'
删除某个rowkey:deleteall 'student','10012'
删除一个单元格:delete 'student','1001','cf1:isNull'
删除表:1.disable 'student'
2.drop 'student'
清空表里面数据: truncate 'student'
先停止表,然后清空:1.删除表2.创建一张相同的表。
启用表:enable 'student'
查看表是启用|非启用:
is_enabled 'student'
is_disabled 'student'
统计表的行数:count 'student'
修改版本个数:默认一个alter 'student',{NAME =>'cf1',VERSIONS=> 3}
查看get 'student','1001',{COLUMN=>'cf1:name',VERSIONS=> 5}
退出:quit
1) 进入HBase客户端命令行
hbase shell
2) 查看帮助命令
hbase(main)> help
3) 查看当前数据库中有哪些表
hbase(main)> list
4) 查看当前数据库中有哪些命名空间
hbase(main)> list_namespace
hbase(main)> create 'student','info'
hbase(main)> create 'iparkmerchant_order','smzf'
hbase(main)> create 'staff','info'
2) 插入数据到表
批量插入:
hbase(main) > put 'student2','1001',cf1:name','Thomas'
put 'student2','1001','cf1:sex','male'
put 'student2','1001','cf1:age','18'
put 'student2','1002','cf1:name','Janna'
put 'student2','1002','cf1:sex','female'
put 'student2','1002','cf1:age','20'
数据插入后的数据模型
Rowkey | timestamp | cf1 | |||
name | sex | age |
| ||
1001 |
| Thomas | male | 18 |
|
1002 |
| Janna | female | 20 |
|
3) 扫描查看表数据
hbase(main) > scan 'student'
hbase(main) > scan 'student',{STARTROW => '1001', STOPROW => '1001'}
hbase(main) > scan 'student',{STARTROW => '1001'}
注:这个是从哪一个rowkey开始扫描
4) 查看表结构
hbase(main):012:0> desc 'student'
5) 更新指定字段的数据
hbase(main) > put 'student','1001','info:name','Nick'
hbase(main) > put 'student','1001','info:age','100'
hbase(main) > put 'student','1001','info:isNull',''(仅测试空值问题)
6) 查看“指定行”或“指定列族:列”的数据
hbase(main) > get 'student','1001'
hbase(main) > get 'student','1001','info:name'
7) 删除数据
删除某rowkey的全部数据:
hbase(main) > deleteall 'student','1001'
8) 清空表数据
hbase(main) > truncate 'student'
尖叫提示:清空表的操作顺序为先disable,然后再truncate。
9) 删除表
首先需要先让该表为disable状态:
hbase(main) > disable 'student'
检查这个表是否被禁用
hbase(main) > is_enabled 'hbase_book'
hbase(main) > is_disabled 'hbase_book'
恢复被禁用得表
enable 'student'
然后才能drop这个表:
hbase(main) > drop 'student'
尖叫提示:如果直接drop表,会报错:Drop the named table. Table must first be disabled
ERROR: Table student is enabled. Disable it first.
10) 统计表数据行数
hbase(main) > count 'student'
11) 变更表信息
将info列族中的数据存放3个版本:
hbase(main) > alter 'student',{NAME=>'info',VERSIONS=>3}
查看student的最新的版本的数据
hbase(main) > get 'student','1001'
查看HBase中的多版本
hbase(main) > get 'student','1001',{COLUMN=>'info:name',VERSIONS=>10}
1) satus 例如:显示服务器状态
hbase> status 'bigdata111'
2) exists 检查表是否存在,适用于表量特别多的情况
hbase> exists 'hbase_book'
3) is_enabled/is_disabled 检查表是否启用或禁用
hbase> is_enabled 'hbase_book'
hbase> is_disabled 'hbase_book'
8) alter 该命令可以改变表和列族的模式,例如:
为当前表增加列族:
hbase> alter 'hbase_book', NAME => 'CF2', VERSIONS => 2
为当前表删除列族:
hbase> alter 'hbase_book', 'delete' => 'CF2'
9) disable禁用一张表
hbase> disable 'hbase_book'
hbase> drop 'hbase_book'
10) delete
删除一行中一个单元格的值,例如:
hbase> delete 'hbase_book', 'rowKey', 'CF:C'
11) truncate清空表数据,即禁用表-删除表-创建表
hbase> truncate 'hbase_book'
12) create
创建多个列族:
hbase> create 't1', {NAME => 'f1'}, {NAME => 'f2'}, {NAME => 'f3'}
——————保持饥饿,保持学习
Jackson_MVP
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。