HBase基本命令
華為云MapReduce服務中包括了Hapoop、HBase、Spark、Kafka等等大數據組件。這里是基于華為云MapReduce服務集群講解HBase的基本命令。
1.進入HBase shell命令行
注意:如果集群是安全集群(就是創建集群的時候開啟Kerberos認證),在HBase shell之前,需要通過kinit username 進行認證。
#?hbase?shell
2.基本命令實例
在輸入HBase操作命令時不同于SQL語句,命令最后沒有分號。
2.1 查看HBase版本、用戶和狀態
查看版本? ????hbase(main):005:0>?version 查看用戶 ????hbase(main):001:0>?whoami 查看HBase狀態信息 ????hbase(main):002:0>?status
2.2 查看命名空間(namespace)
默認情況下,HBase里面包括hbase和default兩個命名空間。在下面的表操作中,如果沒有指定命名空間,默認就是default命名空間。
hbase(main):011:0>?list_namespace
2.3 創建和刪除命名空間(namespace)
創建命名空間???? ????hbase(main):012:0>?create_namespace?'jun' 查看命名空間 ????hbase(main):013:0>?list_namespace 刪除命名空間 ????hbase(main):014:0>?drop_namespace?'jun'
2.4 查看表
上面講解了命名空間(namespace),默認情況下default命名空間是默認的命名空間。
Examples: ????list????????????查看下的所有表?? ????list?'abc.*'????查看表名以abc開頭的表 ????list?'ns:abc.*'?查看命名空間ns下表名以abc開頭的表 ????list?'ns:.*'????查看命名空間ns下所有表 可以通過?help?'list'查看list命令詳解 實例 ????hbase(main):001:0>?list
2.5 創建表
輸入創建表命令時,需要輸入表名和至少一個列簇名(column family)。創建表時如果指定了命名空間,該命名空間必須存在,否則會報錯。
Examples:???? ????create?'ns1:t1',?'f1'???創建命名空間為ns1、表名為t1、列簇為f1的表??? ????create?'t1',?'f1','f2','f3'??創建表名為t1、列簇為f1/f2/f3三個列簇的表 實例 ????hbase(main):028:0>?create?'test','f1','f2','f3'
2.3 查看表結構
通過desc命令查看表的詳細結構
hbase(main):030:0>?desc?'test'
2.4 刪除表
在刪除表之前,必須要先用disable命令。
hbase(main):007:0>?disable?'test' hbase(main):008:0>?drop?'test'
2.5 修改表結構
創建表test01 ????hbase(main):042:0>?create?'test01','f1',?'f2',?'f3' 添加列簇 ????hbase(main):048:0>?alter?'test01','f4','f5' 刪除列簇???? ????hbase(main):053:0>?alter?'test01',?'delete'?=>?'f5' 詳細的alter命令使用可以通過幫助命令查看 ????hbase(main):056:0>?help?'alter'
2.6 添加數據
hbase(main):064:0>?put?'test01',?'name02',?'f2:age',?'20' 下面詳細介紹一下該命令: test01??==>>???表名 name02??==>>???rowkey(唯一標識符)這個自己定義 f2??????==>>???列簇(可以當作與多列的集合) age?????==>>???列簇下面的一個列,自己定義 20??????==>>???值,表示age屬性的值
2.7 查詢數據
查詢屬性記錄值: ????hbase(main):076:0>?get?'test01','name02','f2:age' 查看整個表數據: ????hbase(main):073:0>?scan?'test01' ????hbase(main):077:0>?scan?'test01',?LIMIT?=>?2 統計表中行數: ????hbase(main):078:0>?count?'test01'
2.8 刪除數據
刪除行中某個列值 ????delete?'test01','name02','f2:age' 刪除一行 ????hbase(main):085:0>?deleteall?'test01','name02'
特別提醒:HBase中不懂的命令可以利用help命令進行查看
詳細內容參考:
1.HBase官方文檔:https://hbase.apache.org/book.html
2.華為云MapReduce服務開發指南HBase應用開發
大數據相關內容可加QQ群 940014001 進群進行詳細咨詢與了解。
HBase MapReduce服務 MRS
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。