hbase 基础

hbase 基础,第1张

hbase 基础 基础

非交互使用

-n | --non-interactive 参数

$ echo "describe 'test1'" | ./hbase shell -n

Version 0.98.3-hadoop2, rd5e65a9144e315bb0a964e7730871af32f5018d5, Sat May 31 19:56:09 PDT 2014

describe 'test1'

DEscriptION                                          ENABLED
 'test1', {NAME => 'cf', DATA_BLOCK_ENCODING => 'NON true
 E', BLOOMFILTER => 'ROW', REPLICATION_SCOPE => '0',
  VERSIONS => '1', COMPRESSION => 'NONE', MIN_VERSIO
 NS => '0', TTL => 'FOREVER', KEEP_DELETED_CELLS =>
 'false', BLOCKSIZE => '65536', IN_MEMORY => 'false'
 , BLOCKCACHE => 'true'}
1 row(s) in 3.2410 seconds

hbase默认执行成功返回0失败返回非零,但是返回非零可能是由于rpc通信失败等,故非零不一定执行失败,下次相关 *** 作需检查。

#!/bin/bash
echo "describe 'test'" | ./hbase shell -n > /dev/null 2>&1
status=$?
echo "The status was " $status
if ($status == 0); then
    echo "The command succeeded"
else
    echo "The command may have failed."
fi
return $status

交互使用

即使用使用hbase cli client

./hbase shell
基本概念:

hbase使用列式存储,其中类似关系型数据库中的列,其称为列族。顾名思义,列族就是很多类似RDB列数据的组合,列族中一个类似RDB的列称为一个单元格(CELL)

表结构:

列名(COLUMN)列名…单元格(CELL)单元格

如下有一个RDB的用户信息表和对应的hbase表,表名info

RDB: info

user

userNameageaddressmathew18shanghaikuro24kunming

item

iddesirescore00100011girlfrend101000001houseandcarandmoremoney…8

hbase: info

其中三个user为一个列族,三个item为一个列族,每一个单元格为一个cell

rowKeyuseruseruseritemitemitemuser.nameuser.ageuser.addressitem.iditem.desireitem.score001mathre18shaghai00100011girlfrend1002kuro24kunming01000001houseandcarandmoremoney8…………………

具体如下:

| ROW   |  COLUMN+CELL   |
| u0001 | column=info:address, timestamp=1630481161063, value=shanghai |
| u0001 | column=info:age, timestamp=1630481111589, value=24           |
| u0001 | column=info:gender, timestamp=1630481130520, value=F         |
| u0001 | column=info:name, timestamp=1630481076110, value=testMan     |
| u0001 | column=item:desc, timestamp=1630481534305, value=shanghai    |
| u0001 | column=item:number, timestamp=1630481534285, value=2         |
| u0001 | column=item:price, timestamp=1630481534263, value=34000000   |
| u0001 | column=item:product, timestamp=1630481534240, value=p0001    |
| u0002 | column=info:address, timestamp=1630481233449, value=shanghai |
| u0002 | column=info:age, timestamp=1630481231793, value=27           |
| u0002 | column=info:gender, timestamp=1630481231815, value=F         |
| u0002 | column=info:name, timestamp=1630481231771, value=coder       |
| u0002 | column=item:product, timestamp=1630481534327, value=p0002    |

shell输入时语法错误处理

输错命令显示

hbase(main):002:0> desc school;
hbase(main):003:0* >
hbase(main):004:0* >
hbase(main):005:0*
hbase(main):006:0* >desc

可以继续输入> 然后输入命令

shell命令 查看

schema:

查看所有命名空间

list_namespace

查看命名空间信息

describe_namespac  'nameSpace name'

查看命名空间内所有表

list_namespace_tables  'nameSpace name'

查看表信息

desc 'table name' | describe 'table name'

datas

查看表数据

1>
    tb=get_table 'table name'
    # 查看所有数据
    tb.scan
2> 
	# 查看所有数据
	scan 'table name'
	# 指定范围
	## rowkey
	
	## 指定列
	

info

查看region信息

 
插入数据 

单条插入

批量导入

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5679169.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存