2021年大数据HBase(四):HBase的相关操作-客户端命令式!【建议收藏】
全網(wǎng)最詳細(xì)的大數(shù)據(jù)HBase文章系列,強(qiáng)烈建議收藏加關(guān)注!
新文章都已經(jīng)列出歷史文章目錄,幫助大家回顧前面的知識(shí)重點(diǎn)。
目錄
系列歷史文章
前言
HBase的相關(guān)操作-客戶(hù)端命令式
1、進(jìn)入HBase客戶(hù)端命令操作界面
2、查看幫助命令?
3、查看當(dāng)前數(shù)據(jù)庫(kù)中有那些表
4、創(chuàng)建一張表
5、添加數(shù)據(jù)操作 ?
6、查詢(xún)數(shù)據(jù)操作?
7、更新數(shù)據(jù)操作
8、刪除數(shù)據(jù)以及刪除表操作
9、?統(tǒng)計(jì)一張表有多少行數(shù)據(jù)?
10、HBASE高級(jí)shell管理命令?
系列歷史文章
2021年大數(shù)據(jù)HBase(十七):HBase的360度全面調(diào)優(yōu)
2021年大數(shù)據(jù)HBase(十六):HBase的協(xié)處理器(Coprocessor)
2021年大數(shù)據(jù)HBase(十五):HBase的Bulk Load批量加載操作
2021年大數(shù)據(jù)HBase(十四):HBase的原理及其相關(guān)的工作機(jī)制
2021年大數(shù)據(jù)HBase(十三):HBase讀取和存儲(chǔ)數(shù)據(jù)的流程
2021年大數(shù)據(jù)HBase(十二):Apache Phoenix 二級(jí)索引
2021年大數(shù)據(jù)HBase(十一):Apache Phoenix的視圖操作
2021年大數(shù)據(jù)HBase(十):Apache Phoenix的基本入門(mén)操作
2021年大數(shù)據(jù)HBase(九):Apache Phoenix的安裝
2021年大數(shù)據(jù)HBase(八):Apache Phoenix的基本介紹
2021年大數(shù)據(jù)HBase(七):Hbase的架構(gòu)!【建議收藏】
2021年大數(shù)據(jù)HBase(六):HBase的高可用!【建議收藏】
2021年大數(shù)據(jù)HBase(五):HBase的相關(guān)操作-JavaAPI方式!【建議收藏】
2021年大數(shù)據(jù)HBase(四):HBase的相關(guān)操作-客戶(hù)端命令式!【建議收藏】
2021年大數(shù)據(jù)HBase(三):HBase數(shù)據(jù)模型
2021年大數(shù)據(jù)HBase(二):HBase集群安裝操作
2021年大數(shù)據(jù)HBase(一):HBase基本簡(jiǎn)介
前言
?2021大數(shù)據(jù)領(lǐng)域優(yōu)質(zhì)創(chuàng)作博客,帶你從入門(mén)到精通,該博客每天更新,逐漸完善大數(shù)據(jù)各個(gè)知識(shí)體系的文章,幫助大家更高效學(xué)習(xí)。
有對(duì)大數(shù)據(jù)感興趣的可以關(guān)注微信公眾號(hào):三幫大數(shù)據(jù)
HBase的相關(guān)操作-客戶(hù)端命令式
我們可以以shell的方式來(lái)維護(hù)和管理HBase。例如:執(zhí)行建表語(yǔ)句、執(zhí)行增刪改查操作等等
1、進(jìn)入HBase客戶(hù)端命令操作界面
$ bin/hbase shell
2、查看幫助命令?
hbase(main):001:0> help
3、查看當(dāng)前數(shù)據(jù)庫(kù)中有那些表
hbase(main):002:0> lis
4、創(chuàng)建一張表
創(chuàng)建user表,包含info、data兩個(gè)列族 hbase(main):010:0> create 'user', 'info', 'data' 或者 hbase(main):010:0> create 'user', {NAME => 'info', VERSIONS => '3'},{NAME => 'data'}
5、添加數(shù)據(jù)操作 ?
向user表中插入信息,row key為rk0001,列族info中添加name列標(biāo)示符,值為zhangsan hbase(main):011:0> put 'user', 'rk0001', 'info:name', 'zhangsan'
向user表中插入信息,row key為rk0001,列族info中添加gender列標(biāo)示符,值為female hbase(main):012:0> put 'user', 'rk0001', 'info:gender', 'female'
向user表中插入信息,row key為rk0001,列族info中添加age列標(biāo)示符,值為20 hbase(main):013:0> put 'user', 'rk0001', 'info:age', 20
向user表中插入信息,row key為rk0001,列族data中添加pic列標(biāo)示符,值為picture hbase(main):014:0> put 'user', 'rk0001', 'data:pic', 'picture'
6、查詢(xún)數(shù)據(jù)操作?
6.1、通過(guò)rowkey進(jìn)行查詢(xún) 獲取user表中row key為rk0001的所有信息 hbase(main):015:0> get 'user', 'rk0001'
6.2、查看rowkey下面的某個(gè)列族的信息 獲取user表中row key為rk0001,info列族的所有信息 hbase(main):016:0> get 'user', 'rk0001', 'info'
6.3、查看rowkey指定列族指定字段的值 獲取user表中row key為rk0001,info列族的name、age列標(biāo)示符的信息 hbase(main):017:0> get 'user', 'rk0001', 'info:name', 'info:age’
6.4、查看rowkey指定多個(gè)列族的信息 獲取user表中row key為rk0001,info、data列族的信息 hbase(main):018:0> get 'user', 'rk0001', 'info', 'data' 或者你也可以這樣寫(xiě) hbase(main):019:0> get 'user', 'rk0001', {COLUMN => ['info', 'data']} 或者你也可以這樣寫(xiě),也行 hbase(main):020:0> get 'user', 'rk0001', {COLUMN => ['info:name', 'data:pic’]}
6.5、指定rowkey與列值查詢(xún) 獲取user表中row key為rk0001,cell的值為zhangsan的信息 hbase(main):030:0> get 'user', 'rk0001', {FILTER => "ValueFilter(=, 'binary:zhangsan')"}
6.6、查詢(xún)所有數(shù)據(jù) : 查詢(xún)user表中的所有信息 scan 'user' scan 'user' , {FORMATTER => 'toString’} scan 'user' , {LIMIT => 3,FORMATTER => 'toString’}
6.7、列族查詢(xún): 查詢(xún)user表中列族為info的信息 scan 'user', {COLUMNS => 'info'} scan 'user', {COLUMNS => 'info', RAW => true, VERSIONS => 5} scan 'user', {COLUMNS => 'info', RAW => true, VERSIONS => 3}
6.8、多列族查詢(xún): 查詢(xún)user表中列族為info和data的信息 scan 'user', {COLUMNS => ['info', 'data']} scan 'user', {COLUMNS => ['info:name', 'data:pic']}
6.9、指定列族與某個(gè)列名查詢(xún) 查詢(xún)user表中列族為info、列標(biāo)示符為name的信息 scan 'user', {COLUMNS => 'info:name’}
6.10、指定列族與列名以及限定版本查詢(xún) 查詢(xún)user表中列族為info、列標(biāo)示符為name的信息,并且版本最新的5個(gè) scan 'user', {COLUMNS => 'info:name', VERSIONS => 5}
6.11、指定多個(gè)列族與按照數(shù)據(jù)值模糊查詢(xún) 查詢(xún)user表中列族為info和data且列標(biāo)示符中含有a字符的信息 scan 'user', {COLUMNS => ['info', 'data'], FILTER =>? "(QualifierFilter(=,'substring:a'))"}
6.12、rowkey的范圍值查詢(xún) 查詢(xún)user表中列族為info,rk范圍是[rk0001, rk0003)的數(shù)據(jù) scan 'user', {COLUMNS => 'info', STARTROW => 'rk0001', ENDROW => 'rk0003'}
6.13、指定rowkey模糊查詢(xún) 查詢(xún)user表中row key以rk字符開(kāi)頭的 scan 'user',{FILTER=>"PrefixFilter('rk')"}
6.14、指定數(shù)據(jù)范圍值查詢(xún) 查詢(xún)user表中指定范圍的數(shù)據(jù) scan 'user', {TIMERANGE => [1392368783980, 1392380169184]}
過(guò)濾器的查詢(xún)地址: ? http://hbase.apache.org/2.2/devapidocs/index.html?
7、更新數(shù)據(jù)操作
1、更新數(shù)據(jù)值 更新操作同插入操作一模一樣,只不過(guò)有數(shù)據(jù)就更新,沒(méi)數(shù)據(jù)就添加
2、更新版本號(hào) 將user表的f1列族版本號(hào)改為5 hbase(main):050:0> alter 'user', NAME => 'info', VERSIONS => 5
8、刪除數(shù)據(jù)以及刪除表操作
1、指定rowkey以及列名進(jìn)行刪除 刪除user表row key為rk0001,列標(biāo)示符為info:name的數(shù)據(jù) hbase(main):045:0> delete 'user', 'rk0001', 'info:name'
2、指定rowkey,刪除一整行數(shù)據(jù) hbase(main):045:0>deleteall 'user', 'rk0001’ 注意: 1. deleteall 是在 hbase 2.0版本后出現(xiàn)的, 在2.0版本之前, 只需要使用delete這個(gè)命令即可完成所有的刪除數(shù)據(jù)工作, 2. delete刪除數(shù)據(jù)時(shí)候, 只會(huì)刪除最新版本的數(shù)據(jù), 而deleteall 直接將對(duì)應(yīng)數(shù)據(jù)的所有的歷史版本全部刪除
3、刪除一個(gè)列族: alter 'user', NAME => 'info', METHOD => 'delete’ 或 alter 'user', 'delete' => 'info'
4、清空表數(shù)據(jù) hbase(main):017:0> truncate 'user'
5、刪除表 首先需要先讓該表為disable狀態(tài),使用命令: hbase(main):049:0> disable 'user' 然后才能drop這個(gè)表,使用命令:hbase(main):050:0> drop 'user' (注意:如果直接drop表,會(huì)報(bào)錯(cuò):Drop the named table. Table must first be disabled)
9、?統(tǒng)計(jì)一張表有多少行數(shù)據(jù)?
hbase(main):053:0> count 'user'
10、HBASE高級(jí)shell管理命令?
1) status 顯示服務(wù)器狀態(tài) “例如:hbase(main):058:0> status 'node01'
2) whoami : 顯示HBase當(dāng)前用戶(hù),例如: hbase> whoami
3) list : 顯示當(dāng)前所有的表
4) count: 統(tǒng)計(jì)指定表的記錄數(shù),例如: hbase> count 'user'
5) describe : 展示表結(jié)構(gòu)信息
6) exists: 檢查表是否存在,適用于表量特別多的情況
7) is_enabled、is_disabled: 檢查表是否啟用或禁用
8) alter : 該命令可以改變表和列族的模式, 例如: 為當(dāng)前表增加列族: hbase> alter 'user', NAME => 'CF2', VERSIONS => 2 為當(dāng)前表刪除列族: hbase(main):002:0> alter 'user', 'delete' => 'CF2'
9) disable/enable : 禁用一張表/啟用一張表
10) drop : 刪除一張表,記得在刪除表之前必須先禁用
11) truncate : 禁用表-刪除表-創(chuàng)建表
- 📢博客主頁(yè):https://lansonli.blog.csdn.net
- 📢歡迎點(diǎn)贊 👍 收藏 ?留言 📝 如有錯(cuò)誤敬請(qǐng)指正!
- 📢本文由 Lansonli 原創(chuàng),首發(fā)于 CSDN博客🙉
- 📢大數(shù)據(jù)系列文章會(huì)每天更新,停下休息的時(shí)候不要忘了別人還在奔跑,希望大家抓緊時(shí)間學(xué)習(xí),全力奔赴更美好的生活?
總結(jié)
以上是生活随笔為你收集整理的2021年大数据HBase(四):HBase的相关操作-客户端命令式!【建议收藏】的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 2021年大数据HBase(三):HBa
- 下一篇: 2021年大数据HBase(五):HBa