【重點(diǎn)】Hbase基本命令

一:Hbase 創(chuàng)建數(shù)據(jù)庫表

1.進(jìn)入hbase shell
2.創(chuàng)建數(shù)據(jù)庫表的命令:create '表名', '列族名1','列族名2','列族名N'
3.如果想查看所有數(shù)據(jù)庫表恋技,可以使用list 命令:
4.可以看到,剛創(chuàng)建的數(shù)據(jù)庫表user 已經(jīng)在數(shù)據(jù)庫表的列表中烫扼,如果要看user表的結(jié)構(gòu)哀澈,可以用命令:describe ‘user’

二:Hbase數(shù)據(jù)庫表數(shù)據(jù)的增、刪割按、改、查

1.Hbase 增加數(shù)據(jù)的語法格式如下:
put ‘表名’, ‘rowKey’, ‘列族 : 列’?,? '值'
2.Hbase查詢數(shù)據(jù)的語法格式如下:
?通過命令:scan ‘表名’? ?來查看表的所有記錄
3.count? '表名' 來查看表中的所有記錄的數(shù)量(根據(jù)rowKey來計(jì)算)
4.通過命令:get '表名','rowkey','列族' 來查看某個(gè)rowKey列族的記錄
? ? ? ? ? ? ? ? ? ? ?get '表名','rowkey','列族:列’來查看rowKey列族的某個(gè)列記錄
5.Hbase刪除數(shù)據(jù)的語法格式如下:
通過命令:delete ‘表名’,‘行名’,‘列族:列' 來刪除某個(gè)記錄
6. get來查詢刪除的記錄是否刪除成功:
? ? ? ? ? ? ? ? ? ? ? ?get?‘表名’,‘行名’,‘列族:列'
7.deleteall '表名','rowkey' 來刪除整行記錄
8.? ? ??scan ’表名‘??來查看整個(gè)表的記錄來看是否刪除成功:
9.truncate '表名'? 來清空表所有的記錄

10.Hbase更新數(shù)據(jù)的語法格式如下:
通過命令:put就是重寫一遍现柠,進(jìn)行覆蓋弛矛,hbase沒有修改,都是追加即對(duì)相同rowKey丈氓、列族和時(shí)間戳的數(shù)據(jù)再次添加即為數(shù)據(jù)的更新
? ? ? ?比如:put ‘user’,’1234’,’info1:name’,’zhangsan’

三:Hbase 刪除數(shù)據(jù)庫表

1.Hbase 刪除數(shù)據(jù)庫的語法格式如下(drop '表名'):
? ??在刪除表時(shí),先要屏蔽該表万俗,才能對(duì)該表進(jìn)行刪除
????第一步: disable ‘表名’,第二步 :drop '表名'
2.?Disable 表后可以通過命令:is_enabled '表名'嚎研,查看當(dāng)前表是否可用
3.false(不可用)课竣。 通過drop命令對(duì)表進(jìn)行刪除:
4.最后用list命令查看user是否已被成功刪除:

四:過濾器

一般需要配合比較運(yùn)算符或比較器共同使用

使用過濾器的語法格式如下所示:
scan '表名'置媳,{Filter => ”過濾器(比較運(yùn)算符,’比較器’)”}
1.行鍵過濾器
(1)RowFilter:針對(duì)行鍵進(jìn)行過濾
? ? ? ? ?例1:顯示行鍵前綴為0開頭的鍵值對(duì)公条;
? ? ? ? ?scan'student',{FILTER=>"RowFilter(=,'substring:001')"}
(2)PrefixFilter:行鍵前綴過濾器
? ? ? ? ?例2:掃描前綴為001的行鍵
? ? ? ? ?scan'student',FILTER=>"PrefixFilter('001')"
(3)FirstKeyOnlyFilter:掃描全表迂曲,顯示每個(gè)邏輯行的第一個(gè)鍵值對(duì)
? ? ? ? ?例4:scan 'student',FILTER=>"FirstKeyOnlyFilter()"
(4)InclusiveStopFilter:替代ENDROW返回終止條件行;
? ? ? ? ?例5:掃描顯示行鍵001到002范圍內(nèi)的鍵值對(duì)
? ? ? ? ?scan 'student', {STARTROW=>'001',FILTER =>"InclusiveStopFilter('002')"}
? ? ? ? ?此條命令等同于:
? ? ? ? ?scan 'student', {STARTROW=>'001',ENDROW => '003'}
2.列族與列過濾器
(1)FamilyFilter:針對(duì)列族進(jìn)行比較和過濾路捧。
? ? ? ? ?例1:顯示列族前綴為stu開頭的鍵值對(duì);
? ??????scan'student',FILTER=>"FamilyFilter(=,'substring:stu’)”
(2)QualifierFilter:列標(biāo)識(shí)過濾器队寇。
? ? ? ? ?例2:顯示列名為name的記錄;? ? ? ? ? ? ? ? ? ?????????scan'student',FILTER=>"QualifierFilter(=,'substring:name')"
(3)ColumnPrefixFilter:對(duì)列名前綴進(jìn)行過濾佳遣。
? ? ? ? ?例2:顯示列名為name的記錄;
? ? ? ? ? ? ? ? ? ? scan'student',FILTER=>"ColumnPrefixFilter('name’)”
? ? ? ? ?等價(jià)于scan'student',FILTER=>"QualifierFilter(=,'substring:name')"

(4)MultipleColumnPrefixFilter:可以指定多個(gè)前綴
? ? ? ? ?例3:顯示列名為name和age的記錄零渐;
? ? ? ? ?scan 'student',FILTER=>"MultipleColumnPrefixFilter('name','age')"
(5)ColumnRangeFilter :設(shè)置范圍按字典序?qū)α忻M(jìn)行過濾系忙;?scan'student',FILTER=>"ColumnRangeFilter('bi',true,'na',true)"
3.值過濾器
(1)ValueFilter :值過濾器。
例1:查詢值等于19的所有鍵值對(duì)
scan'student',FILTER=>"ValueFilter(=,'binary:19') " scan'student',FILTER=>"ValueFilter(=,'substring:19')
(2)SingleColumnValueFilter :在指定的列族和列中進(jìn)行值過濾器银还。
例2:查詢stuinfo列族age列中值等于19的所有鍵值對(duì)
scan'student',{COLUMN=>'stuinfo:age',FILTER=>"SingleColumnValueFilter('stuinfo','age',=,'binary:19')"}
4.其他過濾器
(1)ColumnCountGetFilter :限制每個(gè)邏輯行返回的鍵值對(duì)數(shù)
例1:返回行鍵為001的前3個(gè)鍵值對(duì)
get 'student','001',FILTER=>"ColumnCountGetFilter(3)"
(2)PageFilter:基于行的分頁過濾器,設(shè)置返回行數(shù)蛹疯。
例2:顯示一行
scan'student',FILTER=>"PageFilter(1)"
(3)ColumnPaginationFilter:基于列的進(jìn)行分頁過濾器,需要設(shè)置偏移量與返回?cái)?shù)量 苍苞。
例3:顯示每行第1列之后的2個(gè)鍵值對(duì)scan'student',FILTER=>"ColumnPaginationFilter(2,1)"

五:例題

實(shí)操題

(1) 啟動(dòng)HBase? ??
cd /opt/hbase-1.2.6/bin/? ? 進(jìn)入hbase安裝的bin目錄下
./start-hbase.sh
(2) 連接HBase實(shí)例
hbase shell
(3) 查看存在哪些表
list
(4) 創(chuàng)造表people,表中有列簇info
create 'people','info'
(5)? 向people表的列族info中添加數(shù)據(jù)(數(shù)據(jù)根據(jù)上表內(nèi)容填寫)
put ‘people’,’1001’,’info:name’,’jenny’
put ‘people’,’1002’,’info:name’,’sam’
put ‘people’,’1002’,’info:age’,’20’
(6)? people表添加一個(gè)列簇salary
alter 'people','salary'
(7)? 查看people表結(jié)構(gòu)
describe 'people'
(8)? 向people表的列族salary中添加數(shù)據(jù)羹呵,并且base列的版本號(hào)(時(shí)間戳)都自定義為“1”(數(shù)據(jù)根據(jù)上表內(nèi)容填寫)
put ‘people’,’1001’,’salary:base’,’2000’,1
put ‘people’,’1002’,’salary:base’,’1300’,1
put ‘people’,’1002’,’salary:subsidy’,’500’
(9)? 修改行鍵1002的列族salary的base列的值為1800,版本號(hào)為“2”
put ‘people’,’1002’,’salary:base’,’1800’,2
(10)? 查看people表的所有的數(shù)據(jù)
scan 'people'
(11)? 查看行鍵1002的列族salary的base列的版本號(hào)為1的值
get ‘people’,’1002’,{COLUMN=>’salary:base’,TIMESTAMP=>1}
(12)? 使用“FamilyFilter”過濾器顯示列族前綴為“sa”開頭的鍵值對(duì)
scan ‘people’,FILTER=>”FamilyFilter(=,'substring:sa’)”
(13)? 使用“RowFilter”過濾器顯示行鍵等于1001的鍵值對(duì)
scan ‘people’,FILTER=>"RowFilter(=,'binary:1001')"
(14)? 使用“ValueFilter”過濾器查詢base值大于等于2000的所有鍵值對(duì)
scan 'people',FILTER=>"ColumnPrefixFilter('base') AND ValueFilter(>=,'binary:2000') "
(15)? 刪除行鍵為1002歉铝,列族為info,列為age的數(shù)據(jù)
delete ‘people’,’1002’,’info:age’
(16)? 清空表people
truncate 'people'
(17)? 刪除表
drop ‘people’

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市凑耻,隨后出現(xiàn)的幾起案子柠贤,更是在濱河造成了極大的恐慌类缤,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,941評(píng)論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件宴霸,死亡現(xiàn)場離奇詭異,居然都是意外死亡瓢谢,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,397評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門氓扛,熙熙樓的掌柜王于貴愁眉苦臉地迎上來论笔,“玉大人,你說我怎么就攤上這事翅楼。” “怎么了理茎?”我有些...
    開封第一講書人閱讀 165,345評(píng)論 0 356
  • 文/不壞的土叔 我叫張陵管嬉,是天一觀的道長。 經(jīng)常有香客問我蚯撩,道長,這世上最難降的妖魔是什么胎挎? 我笑而不...
    開封第一講書人閱讀 58,851評(píng)論 1 295
  • 正文 為了忘掉前任犹菇,我火速辦了婚禮德迹,結(jié)果婚禮上揭芍,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好筷转,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,868評(píng)論 6 392
  • 文/花漫 我一把揭開白布悬而。 她就那樣靜靜地躺著,像睡著了一般摊滔。 火紅的嫁衣襯著肌膚如雪店乐。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,688評(píng)論 1 305
  • 那天腺兴,我揣著相機(jī)與錄音廉侧,去河邊找鬼。 笑死段誊,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的连舍。 我是一名探鬼主播,決...
    沈念sama閱讀 40,414評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼盼玄,長吁一口氣:“原來是場噩夢啊……” “哼潜腻!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起融涣,我...
    開封第一講書人閱讀 39,319評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎剃斧,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體悯衬,經(jīng)...
    沈念sama閱讀 45,775評(píng)論 1 315
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,945評(píng)論 3 336
  • 正文 我和宋清朗相戀三年策橘,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了娜亿。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,096評(píng)論 1 350
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡买决,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出嘁灯,到底是詐尸還是另有隱情,我是刑警寧澤丑婿,帶...
    沈念sama閱讀 35,789評(píng)論 5 346
  • 正文 年R本政府宣布没卸,位于F島的核電站,受9級(jí)特大地震影響约计,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜煤蚌,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,437評(píng)論 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望俗孝。 院中可真熱鬧魄健,春花似錦赋铝、人聲如沸沽瘦。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,993評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至筑凫,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間巍实,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,107評(píng)論 1 271
  • 我被黑心中介騙來泰國打工令漂, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人叠必。 一個(gè)月前我還...
    沈念sama閱讀 48,308評(píng)論 3 372
  • 正文 我出身青樓妹窖,卻偏偏與公主長得像,于是被迫代替她去往敵國和親嘱吗。 傳聞我的和親對(duì)象是個(gè)殘疾皇子滔驾,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,037評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容

  • hbase提供了一個(gè)shell的終端 退出使用quit或者ctrl+c即可。注:需要關(guān)閉hadoop的安全模式不然...
    printf200閱讀 462評(píng)論 0 1
  • 1绕德、進(jìn)入HBase客戶端命令操作界面node01執(zhí)行以下命令摊阀,進(jìn)入HBase的shell客戶端cd /kkb/in...
    我還不夠強(qiáng)閱讀 198評(píng)論 0 0
  • 1. HBase簡介 1.1 什么是HBase HBASE是一個(gè)高可靠性、高性能胞此、面向列、可伸縮的分布式存儲(chǔ)系統(tǒng)漱牵,...
    Yobhel閱讀 565評(píng)論 0 0
  • 1酣胀、進(jìn)入hbase的shell hbase提供了一個(gè)shell的終端給用戶交互 [root@hadoop3 con...
    一條IT閱讀 5,711評(píng)論 0 1
  • 1、進(jìn)入hbase的shell hbase提供了一個(gè)shell的終端給用戶交互 退出使用quit或者ctrl+c需...
    小月半會(huì)飛閱讀 11,679評(píng)論 0 3