這篇文章主要介紹了hadoop中HBase子項(xiàng)目入門的示例分析,具有一定借鑒價(jià)值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。
在西湖等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強(qiáng)發(fā)展的系統(tǒng)性、市場(chǎng)前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供成都網(wǎng)站建設(shè)、網(wǎng)站設(shè)計(jì) 網(wǎng)站設(shè)計(jì)制作定制網(wǎng)站,公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),高端網(wǎng)站設(shè)計(jì),成都全網(wǎng)營(yíng)銷推廣,外貿(mào)營(yíng)銷網(wǎng)站建設(shè),西湖網(wǎng)站建設(shè)費(fèi)用合理。
HBase 提供了一個(gè)類似于MySQL等關(guān)系型數(shù)據(jù)庫(kù)的hbase shell,通過(guò)該hbase shell可以對(duì)HBase的內(nèi)的相關(guān)表、列族等進(jìn)行操作;HBase shell的help命令比較詳細(xì)的列介紹了HBase所支持的命令.
在這里簡(jiǎn)單舉個(gè)學(xué)生表scores的案例進(jìn)行講解,表數(shù)據(jù)如下:
name grad course:math course:english Tom 1 89 97 Jerry 2 100 90 |
這 里grad對(duì)于表來(lái)說(shuō)是一個(gè)列,course對(duì)于表來(lái)說(shuō)是一個(gè)列族,這個(gè)列族由兩個(gè)列組成:math和english,當(dāng)然我們可以根據(jù)我們的需要在 course中建立更多的列族,如computer,physics,art等相應(yīng)的列添加入course列族中。
下面列出常使用的hbase shell 命令如下:
名稱 | 命令表達(dá)式 |
創(chuàng)建表 | create '表名稱', '列名稱1','列名稱2','列名稱N' |
添加記錄 | put '表名稱', '行名稱', '列名稱:', '值' |
查看記錄 | get '表名稱', '行名稱' |
查看表中的記錄總數(shù) | count '表名稱' |
刪除記錄 | delete '表名' ,'行名稱' , '列名稱' |
刪除一張表 | 先要屏蔽該表,才能對(duì)該表進(jìn)行刪除,第一步 disable '表名稱' 第二步 drop '表名稱' |
查看所有記錄 | scan "表名稱" |
查看某個(gè)表某個(gè)列中所有數(shù)據(jù) | scan "表名稱" , ['列名稱:'] |
更新記錄 | 就是重寫一遍進(jìn)行覆蓋 |
1、建立一個(gè)表格 scores 具有兩個(gè)列族grad 和courese案例如下:
hbase(main):002:0> create 'scores', 'grade', 'course' 0 row(s) in 4.1610 seconds |
2、查看當(dāng)先HBase中具有哪些表
hbase(main):003:0> list scores 1 row(s) in 0.0210 seconds |
3、查看表的構(gòu)造
hbase(main):004:0> describe 'scores' {NAME => 'scores', IS_ROOT => 'false', IS_META => 'false', FAMILIES => [{NAME => 'course', BLOOMFILTER => 'false', IN_MEMORY => 'false', LENGTH => '2147483647', BLOCKCACHE => 'false', VERSIONS => '3', TTL => '-1', COMPRESSION => 'NONE'}, {NAME => 'grade', BLOOMFILTER => 'false', IN_MEMORY => 'false', LENGTH => '2147483647', BLOCKCACHE => 'false', VERSIONS => '3', TTL => '-1', COMPRESSION => 'NONE'}]} 1 row(s) in 0.0130 seconds |
4、 加入一行數(shù)據(jù),行名稱為 Tom 列族grad的列名為”” 值位1
hbase(main):005:0> put 'scores', 'Tom', 'grade:', '1' 0 row(s) in 0.0070 seconds |
5、給Tom這一行的數(shù)據(jù)的列族添加一列
hbase(main):006:0> put 'scores', 'Tom', 'course:math', '89' 0 row(s) in 0.0040 seconds |
6、給Tom這一行的數(shù)據(jù)的列族添加一列
hbase(main):007:0> put 'scores', 'Tom', 'course:english', '97' 0 row(s) in 0.0030 seconds |
7、 加入一行數(shù)據(jù),行名稱為 Jerry 列族grad的列名為”” 值位2
hbase(main):
008
:
0
> put
'scores'
,
'Jerry'
,
'grade:'
,
'2' 0
row(s) in
0.0040
seconds |
8、給Jerry這一行的數(shù)據(jù)的列族添加一列
hbase(main):009:0> put 'scores', 'Jerry', 'course:math', '100' 0 row(s) in 0.0030 seconds |
9、給Jerry這一行的數(shù)據(jù)的列族添加一列
hbase(main):010:0> put 'scores', 'Jerry', 'course:english', '90' 0 row(s) in 0.0050 seconds |
10、查看scores表中Tom的相關(guān)數(shù)據(jù)
hbase(main):011:0> get 'scores', 'Tom' COLUMN CELL
course:english timestamp=1224726394286, value=97
course:math timestamp=1224726377027, value=89
grade: timestamp=1224726360727, value=1 3 row(s) in 0.0070 seconds |
11、判斷表是否enable
hbase(main):012:0>is_enabled 'scores' true 0 row(s) in 0.0110seconds |
12、判斷表是否disable
hbase(main):013:0>is_disabled 'scores' false 0 row(s) in 0.0110seconds |
13、刪除表scores
hbase(main):014:0>disable 'scores' 0 row(s) in 2.0590seconds hbase(main):030:0>drop 'scores' 0 row(s) in 1.1070seconds |
14、查詢表是否存在
hbase(main):015:0>exists 'scores' Table scores doesexist 0 row(s) in 0.1610seconds |
15、查看scores表中所有數(shù)據(jù)
hbase(main):016:0> scan 'scores' ROW COLUMN+CELL
Tom column=course:english, timestamp=1224726394286, value=97
Tom column=course:math, timestamp=1224726377027, value=89
Tom column=grade:, timestamp=1224726360727, value=1
Jerry column=course:english, timestamp=1224726424967, value=90
Jerry column=course:math, timestamp=1224726416145, value=100
Jerry column=grade:, timestamp=1224726404965, value=2 6 row(s) in 0.0410 seconds |
16、查看scores表中所有數(shù)據(jù)courses列族的所有數(shù)據(jù)
hbase(main):017:0> scan 'scores', ['course:']
ROW COLUMN+CELL
Tom column=course:english, timestamp=1224726394286, value=97
Tom column=course:math, timestamp=1224726377027, value=89
Jerry column=course:english, timestamp=1224726424967, value=90
Jerry column=course:math, timestamp=1224726416145, value=100
4 row(s) in 0.0200 seconds
感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享的“hadoop中HBase子項(xiàng)目入門的示例分析”這篇文章對(duì)大家有幫助,同時(shí)也希望大家多多支持創(chuàng)新互聯(lián),關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,更多相關(guān)知識(shí)等著你來(lái)學(xué)習(xí)!