Hbase经常使用命令
hbase shell命令的使用
再使用hbase 命令之前先检查一下hbase是否执行正常

- hadoop@Master:/usr/hbase/bin$ jps
- 2640 HMaster
- 27170 NameNode
- 27533 SecondaryNameNode
- 3038 Jps
- 27795 TaskTracker
- 27351 DataNode
- 2574 HQuorumPeer
- 27618 JobTracker
- 2872 HRegionServer

假设执行不正常的话。关闭hbase后又一次启动一下
- stop-hbase.sh
- start-hbase.sh
1. status命令
- hbase(main):008:0> status
- 1 servers, 0 dead, 3.0000 average load
2. version命令
- hbase(main):007:0> version
- 0.94.12, r1524863, Fri Sep 20 00:25:45 UTC 2013
3. create 命令
创建一个名为 test
的表。这个表仅仅有一个列为 cf。
当中表名、列都要用单引號括起来,并以逗号隔开。
- hbase(main):001:0> create 'test', 'cf'
- 0 row(s) in 10.3830 seconds
4. list 命令
查看当前 HBase 中具有哪些表。
- hbase(main):009:0> list
- TABLE
- test
- 1 row(s) in 0.3590 seconds
5. put 命令
使用 put 命令向表中插入数据,參数分别为表名、行名、列名和值,当中列名前须要列族最为前缀,时间戳由系统自己主动生成。
格式: put 表名,行名,列名([列族:列名]),值
样例:
增加一行数据,行名称为“row1”,列族“cf”的列名为”(空字符串)”,值位 value1。
我这里插入3条记录

- hbase(main):003:0> put 'test', 'row1', 'cf:a', 'value1'
- 0 row(s) in 0.2350 seconds
- hbase(main):004:0> put 'test', 'row2', 'cf:b', 'value2'
- 0 row(s) in 0.0350 seconds
- hbase(main):005:0> put 'test', 'row3', 'cf:c', 'value3'
- 0 row(s) in 0.0040 seconds

6. describe 命令
查看表“test”的构造。

- hbase(main):010:0> describe 'test'
- DESCRIPTION ENABLED
- 'test', {NAME => 'cf', DATA_BLOCK_ENCODING => 'NONE true
- ', BLOOMFILTER => 'NONE', REPLICATION_SCOPE => '0',
- VERSIONS => '3', COMPRESSION => 'NONE', MIN_VERSIO
- NS => '0', TTL => '2147483647', KEEP_DELETED_CELLS
- => 'false', BLOCKSIZE => '65536', IN_MEMORY => 'fal
- se', ENCODE_ON_DISK => 'true', BLOCKCACHE => 'true'
- }
- 1 row(s) in 1.6630 seconds

7.get 命令
a.查看表“test”中的行“row2”的相关数据。
- hbase(main):011:0> get 'test','row2'
- COLUMN CELL
- cf:b timestamp=1381568161926, value=value2
- 1 row(s) in 0.4500 seconds
b.查看表“test”中行“row2”列“cf :b”的值。
- hbase(main):012:0> get 'test','row2', 'cf:b'
- COLUMN CELL
- cf:b timestamp=1381568161926, value=value2
- 1 row(s) in 0.3090 seconds
或者
- hbase(main):012:0> get 'test', 'row2', {COLUMN=>'cf:b'}
- hbase(main):012:0> get 'test', 'row2', {COLUMNS=>'cf:b'}
备注:COLUMN 和 COLUMNS 是不同的,scan 操作中的 COLUMNS 指定的是表的列族, get操作中的 COLUMN 指定的是特定的列,COLUMNS 的值实质上为“列族:列修饰符”。COLUMN 和 COLUMNS 必须为大写。
8. scan 命令
a. 查看表“test”中的全部数据。

- hbase(main):006:0> scan 'test'
- ROW COLUMN+CELL
- row1 column=cf:a, timestamp=1381568140492, value=value1
- row2 column=cf:b, timestamp=1381568161926, value=value2
- row3 column=cf:c, timestamp=1381568176693, value=value3
- 3 row(s) in 0.0770 seconds

注意:
scan 命令能够指定 startrow,stoprow 来 scan 多个 row。
比如:
- scan 'user_test',{COLUMNS =>'info:username',LIMIT =>10, STARTROW => 'test', STOPROW=>'test2'}
b.查看表“scores”中列族“course”的全部数据。
- hbase(main):012:0> scan 'scores', {COLUMN => 'grad'}
- hbase(main):012:0> scan 'scores', {COLUMN=>'course:math'}
- hbase(main):012:0> scan 'scores', {COLUMNS => 'course'}
- hbase(main):012:0> scan 'scores', {COLUMNS => 'course'}
9.count 命令——统计出表中有多少条记录
- hbase(main):013:0> count 'test'
- 3 row(s) in 1.6530 seconds
10. exists 命令——查看表是否存在
- hbase(main):014:0> exists 'test'
- Table test does exist
- 0 row(s) in 1.1620 seconds
11. incr 命令
给‘test’这个列添加 uid 字段,并使用counter实现递增
连续运行incr以上。COUNTER VALUE 的值会递增。通过get_counter
- hbase(main):010:0> incr 'test', 'row2', 'uid', 2
- COUNTER VALUE = 2
- hbase(main):011:0> incr 'test', 'row2', 'uid', 3
- COUNTER VALUE = 5
查看表能够看到:

- hbase(main):012:0> scan 'test'
- ROW COLUMN+CELL
- row1 column=uid:1, timestamp=1381571789416, value=buym:1
- row2 column=uid:, timestamp=1381572436088, value=\x00\x00\x00\x
- 00\x00\x00\x00\x05
- row2 column=uid:2, timestamp=1381571805008, value=buym:20
- 2 row(s) in 0.0790 seconds

12. delete 命令
删除表“test”中行为“row3”, 列族“cf”中的“c”。
- hbase(main):015:0> delete 'test','row3','cf:c'
- 0 row(s) in 0.4640 seconds
13. truncate 命令——将表删除后再又一次创建

- hbase(main):018:0> truncate 'test'
- Truncating 'test' table (it may take a while):
- - Disabling table...
- - Dropping table...
- - Creating table...
- 0 row(s) in 5.6480 seconds

14. disbale、drop 命令
通过“disable”和“drop”命令删除“test”表。
- hbase(main):001:0> disable 'test'
- hbase(main):003:0> drop 'test'
- 0 row(s) in 3.9310 seconds
Hbase经常使用命令的更多相关文章
- HBase基本shell命令
HBase基本shell命令 以下shell命令都是经过测试,正常展示,若有不足,还望指点! 1.创建表 create ‘表名称’,‘列族名称1’,‘列族名称1’create 'test_M_01', ...
- (转)Hbase shell 常用命令(1)
Hbase shell 常用命令(1) link:http://blog.csdn.net/scutshuxue/article/details/6988348 下面我们看看HBase Shell的一 ...
- HBase的Shell命令
1.HBase提供了一个shell的终端给用户交互 2.HBase Shell的DDL操作 (1)先进入HBase的 Shell命令行,即HBASE_HOME/bin/hbase shell …… & ...
- Hbase启动hbase shell运行命令报Class path contains multiple SLF4J bindings.错误
1:Hbase启动hbase shell运行命令报Class path contains multiple SLF4J bindings.错误,是因为jar包冲突了,所以对于和hadoop的jar包冲 ...
- Hbase的shell命令学习
在学习Hbase的shell命令,之前先得了解如何进入hbase的shell命令行,通过执行如下简单的命令回车后进入hbase的shell命令行界面 hbase shell 进入hbase命令行后,执 ...
- 原 HBase 常用Shell命令
HBase 常用Shell命令 1.进入hbase shell console $HBASE_HOME/bin/hbase shell 如果有kerberos认证,需要事先使用相应的keytab进行一 ...
- HBase使用flush命令之后存储的位置
HBase使用flush命令之后存储的位置 根据系统安装位置的不一样而不一样,当前是在: hadoop fs -ls /apps/hbase/data/data/default/t1 下面: 使用ha ...
- 【CDN+】 Hbase入门 以及Hbase shell基础命令
前言 大数据的基础离不开Hbase, 本文就hbase的基础概念,特点,以及框架进行简介, 实际操作种需要注意hbase shell的使用. Hbase 基础 官网:https://hbase.ap ...
- hbase shell 常见命令
quick start from official Hbase hbase(main):003:0> create 'test', 'cf' 0 row(s) in 1.2200 second ...
- HBase 常用Shell命令
两个月前使用过hbase,现在最基本的命令都淡忘了,留一个备查~ 进入hbase shell console$HBASE_HOME/bin/hbase shell如果有kerberos认证,需要事先使 ...
随机推荐
- Get started - UIkit documentation
Get started - UIkit documentation Get started Get familiar with the basic setup and structure of UIk ...
- [置顶] Windows Phone后台音乐详解一
应用于: Windows Phone 8 | Windows PhoneOS 7.1 你可以为winphone编写在后台播放音乐的app.这表示即使当用户点击返回或开始按钮离开你的应用界面时,你的应用 ...
- ASP.NET Core 中文文档
ASP.NET Core 中文文档 翻译计划 五月中旬 .NET Core RC2 如期发布,我们遂决定翻译 ASP.NET Core 文档.我们在 何镇汐先生. 悲梦先生. 张仁建先生和 雷欧纳德先 ...
- [欧拉回路+手动开栈] poj 1780 Code
题目链接: http://poj.org/problem? id=1780 Code Time Limit: 1000MS Memory Limit: 65536K Total Submissio ...
- JavaScript编程:使用DOM操作样式表
6.使用DOM操作样式表: 操纵元素的Style样式属性: background-color:style.backgroundColor color:style.col ...
- oradebug推进scn
有时候我们遇到例如以下错误: ORA-01092: ORACLE instance terminated. Disconnection forced ORA-00600: internal error ...
- .NET常见面试题
面试题 1 什么是 CTS.CLS 和CLR 公共语言运行库(CLR)是一个CLI 的一个实现,包含了.NET 运行引擎和符合 CLI 的类库. 通用类型系统(CTS)包含在微软公司提交的 CLI ...
- 一步一步实现FormsAuthentic验证登录
本文不讲原理,只讲用法,原理性的东西网上特别多,不过还是会对一些要用到的东西进行解释,不深入讲原理.本文中用的是Vs2012 .net mvc 4.0.原理看这篇文章,看完这个文章绝对受益匪浅. ...
- oracle逗号字符串拼接小工具
oracle逗号字符串拼接小工具 http://www.zui#dai#ma.com/share/1932670249667584.htm 在使用oracle进行数据查询时,常常需要使用到in语句,如 ...
- Delphi安装NT服务程序时(不出现提示信息)
如果我们不加上"/silent",那么Delphi在安装和卸载NT服务程序时候,都会出现一个提示信息,不希望出现这个提示信息,那么使用如下命令: 1,安装:“你的nt程序 /ins ...