Hbase shell基本操作
2017-08-30 10:17
423 查看
1、启动
cd <hbase_home>/bin
$ ./start-hbase.sh
2、启动hbase shell
# find hadoop-hbase dfs files
hadoop fs -ls /hbase
#start shell
hbase shell
#Run a command to verify that cluster is actually running#
list
3、logs配置
Change the default by editing <hbase_home>/conf/hbase-env.sh
export HBASE_LOG_DIR=/new/location/logs
4、后台管理
HBase comes with web based management
– http://localhost:60010
5、端口服务
Both Master and Region servers run web server
– Browsing Master will lead you to region servers
– Regions run on port 60030
6、基本命令
Quote all names
Table and column names
– Single quotes for text
• hbase> get 't1', 'myRowId'
– Double quotes for binary
• Use hexadecimal representation of that binary value
• hbase> get 't1', "key\x03\x3f\xcd"
Display cluster's status via status command
– hbase> status
– hbase> status 'detailed'
• Similar information can be found on HBase
Web Management Console
– http://localhost:60010
7、建表
Create Table
Create table called 'Blog' with the following
schema
– 2 families
–'info' with 3 columns: 'title', 'author', and 'date'
–'content' with 1 column family: 'post'
首先建立表,附带列族columns families
create 'Blog', {NAME=>'info'}, {NAME=>'content'}
然后,添加数据,注意hbase是基于rowkey的列数据库,可以一次添加一列或多列,必须每次添加指定rowkey
使用Put命令:
hbase> put 'table', 'row_id', 'family:column', 'value'
例子:
put 'Blog', 'Michelle-001', 'info:title', 'Michelle'
put 'Blog', 'Matt-001', 'info:author', 'Matt123'
put 'Blog', 'Matt-001', 'info:date', '2009.05.01'
put 'Blog', 'Matt-001', 'content:post', 'here is content'
列可以任意的扩展,比如
put 'Blog', 'Matt-001', 'content:news', 'news is new column'
8、查看数据-指定rowid
#查看数据库
count 'Blog'
count 'Blog', {INTERVAL=>2}
#查看行数据
get 'table', 'row_id'
get 'Blog', 'Matt-001'
get 'Blog', 'Matt-001',{COLUMN=>['info:author','content:post']}
#时间戳
get 'Blog', 'Michelle-004',{COLUMN=>['info:author','content:post'],TIMESTAMP=>1326061625690}
#版本
get 'Blog', 'Matt-001',{ VERSIONS=1}
get 'Blog', 'Matt-001',{COLUMN=>'info:date', VERSIONS=1}
get 'Blog', 'Matt-001',{COLUMN=>'info:date', VERSIONS>=2}
get 'Blog', 'Matt-001',{COLUMN=>'info:date'}
9、查看数据-通过scan指定范围,注意,所有的记录均按时间戳作为范围排序
Limit what columns are retrieved
– hbase> scan 'table', {COLUMNS=>['col1', 'col2']}
• Scan a time range
– hbase> scan 'table', {TIMERANGE => [1303, 13036]}
• Limit results with a filter
– hbase> scan 'Blog', {FILTER =>org.apache.hadoop.hbase.filter.ColumnPaginationFilter.new(1, 0)}
– More about filters later
scan 'Blog', {COLUMNS=>'info:title'}
开始于John,结束并排除Matt的
scan 'Blog', {COLUMNS=>'info:title',STARTROW=>'John', STOPROW=>'Matt'}
scan 'Blog', {COLUMNS=>'info:title', STOPROW=>'Matt'}
10、版本
put 'Blog', 'Michelle-004', 'info:date', '1990.07.06'
put 'Blog', 'Michelle-004', 'info:date', '1990.07.07'
put 'Blog', 'Michelle-004', 'info:date', '1990.07.08'
put 'Blog', 'Michelle-004', 'info:date', '1990.07.09'
get 'Blog', 'Michelle-004',{COLUMN=>'info:date', VERSIONS=>3}
11、Delete records
delete 'Blog', 'Bob-003', 'info:date'
12、Drop table
– Must disable before dropping
– puts the table “offline” so schema based operations can
be performed
– hbase> disable 'table_name'
– hbase> drop 'table_name'
cd <hbase_home>/bin
$ ./start-hbase.sh
2、启动hbase shell
# find hadoop-hbase dfs files
hadoop fs -ls /hbase
#start shell
hbase shell
#Run a command to verify that cluster is actually running#
list
3、logs配置
Change the default by editing <hbase_home>/conf/hbase-env.sh
export HBASE_LOG_DIR=/new/location/logs
4、后台管理
HBase comes with web based management
– http://localhost:60010
5、端口服务
Both Master and Region servers run web server
– Browsing Master will lead you to region servers
– Regions run on port 60030
6、基本命令
Quote all names
Table and column names
– Single quotes for text
• hbase> get 't1', 'myRowId'
– Double quotes for binary
• Use hexadecimal representation of that binary value
• hbase> get 't1', "key\x03\x3f\xcd"
Display cluster's status via status command
– hbase> status
– hbase> status 'detailed'
• Similar information can be found on HBase
Web Management Console
– http://localhost:60010
7、建表
Create Table
Create table called 'Blog' with the following
schema
– 2 families
–'info' with 3 columns: 'title', 'author', and 'date'
–'content' with 1 column family: 'post'
首先建立表,附带列族columns families
create 'Blog', {NAME=>'info'}, {NAME=>'content'}
然后,添加数据,注意hbase是基于rowkey的列数据库,可以一次添加一列或多列,必须每次添加指定rowkey
使用Put命令:
hbase> put 'table', 'row_id', 'family:column', 'value'
例子:
put 'Blog', 'Michelle-001', 'info:title', 'Michelle'
put 'Blog', 'Matt-001', 'info:author', 'Matt123'
put 'Blog', 'Matt-001', 'info:date', '2009.05.01'
put 'Blog', 'Matt-001', 'content:post', 'here is content'
列可以任意的扩展,比如
put 'Blog', 'Matt-001', 'content:news', 'news is new column'
8、查看数据-指定rowid
#查看数据库
count 'Blog'
count 'Blog', {INTERVAL=>2}
#查看行数据
get 'table', 'row_id'
get 'Blog', 'Matt-001'
get 'Blog', 'Matt-001',{COLUMN=>['info:author','content:post']}
#时间戳
get 'Blog', 'Michelle-004',{COLUMN=>['info:author','content:post'],TIMESTAMP=>1326061625690}
#版本
get 'Blog', 'Matt-001',{ VERSIONS=1}
get 'Blog', 'Matt-001',{COLUMN=>'info:date', VERSIONS=1}
get 'Blog', 'Matt-001',{COLUMN=>'info:date', VERSIONS>=2}
get 'Blog', 'Matt-001',{COLUMN=>'info:date'}
9、查看数据-通过scan指定范围,注意,所有的记录均按时间戳作为范围排序
Limit what columns are retrieved
– hbase> scan 'table', {COLUMNS=>['col1', 'col2']}
• Scan a time range
– hbase> scan 'table', {TIMERANGE => [1303, 13036]}
• Limit results with a filter
– hbase> scan 'Blog', {FILTER =>org.apache.hadoop.hbase.filter.ColumnPaginationFilter.new(1, 0)}
– More about filters later
scan 'Blog', {COLUMNS=>'info:title'}
开始于John,结束并排除Matt的
scan 'Blog', {COLUMNS=>'info:title',STARTROW=>'John', STOPROW=>'Matt'}
scan 'Blog', {COLUMNS=>'info:title', STOPROW=>'Matt'}
10、版本
put 'Blog', 'Michelle-004', 'info:date', '1990.07.06'
put 'Blog', 'Michelle-004', 'info:date', '1990.07.07'
put 'Blog', 'Michelle-004', 'info:date', '1990.07.08'
put 'Blog', 'Michelle-004', 'info:date', '1990.07.09'
get 'Blog', 'Michelle-004',{COLUMN=>'info:date', VERSIONS=>3}
11、Delete records
delete 'Blog', 'Bob-003', 'info:date'
12、Drop table
– Must disable before dropping
– puts the table “offline” so schema based operations can
be performed
– hbase> disable 'table_name'
– hbase> drop 'table_name'
相关文章推荐
- HBase Shell 基本操作
- HBase Shell 基本操作
- HBase学习笔记 --- 基本shell操作
- HBase的shell的基本操作的指令
- hbase shell基本操作命令详解
- hbase基本操作(shell 命令,如建表,清空表,增删改查)
- Hbase--基本shell操作
- HBase-shell的基本操作(很不错的文章)
- Hbase 基本shell操作命令
- Hbase笔记二之Hbase Shell基本操作
- HBase Shell基本操作命令
- shell基本命令使用--文件和目录操作
- Linux基本概念及操作(终端、shell、快捷键、通配符)
- HBASE入门概念和基本操作命令
- Linux学习笔记--Shell基本操作
- hbase的常用shell操作
- hbase之python利用thrift操作hbase数据和shell操作
- MongoDB必知必会 - Shell基本操作
- hbase初识---hbase shell操作以及对应java API开发
- Hbase基本操作示例