日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

HBase Shell常用的命令

發布時間:2025/3/19 编程问答 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 HBase Shell常用的命令 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

場景

HBase在CentOS上分布集群安裝:

https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/119511593

在上面搭建起來HBase的分布集群環境后,看下HBase Shell的常用命令。

前面我們已經用到HBase Shell命令:status和exit。HBase shell命令又分為

幾個組,輸入:help "cmd",可查看所有分組及其包含的命令,如果需要了解具體命令

的用法,將參數“cmd”換成具體命令即可,如:help"status"。

注:

博客:
https://blog.csdn.net/badao_liumang_qizhi
關注公眾號
霸道的程序猿
獲取編程相關電子書、教程推送與免費下載。

實現

1、創建表:create

create '表名稱','列名稱1','列名稱2'

示例:

create 'scores','grade','course'

2、查看所有表:list

使用list命令可以查看當前HBase數據庫中所有表

list

3、查看表中所有列族的詳細信息:describe

語法:describe '表名'

列族描述信息的具體含義

上面創建scores表的語法為簡寫,完整寫法如下

create 'scores',{NAME=>'grade',VERSION=>5},{NAME=>'course',VERSION=5}

??? 對比前面的方式,此命令指定了列族名稱及可保存的單元時間版本最大數量。可以

看出,指定列族參數的格式為:參數名=>參數值,注意賦值符號為“=>”且參數名必

須大寫。如果指定了多個參數,應以逗號分開,最后所有參數以“{}”括起來表示一個

列族。

4、添加數據:put

語法:put '表名稱','行鍵','列鍵','值'

示例:

hbase:013:0> put 'scores','badao','grade:','1' Took 0.0305 seconds??????????????????????????????????????????????????????????????????????????????????????????????????? hbase:014:0> put 'scores','tom','course:art','80' Took 0.0178 seconds??????????????????????????????????????????????????????????????????????????????????????????????????? hbase:015:0> put 'scores','tom','course:math','88' Took 0.0406 seconds??????????????????????????????????????????????????????????????????????????????????????????????????? hbase:016:0> put 'scores','tom','grade','2' Took 0.0203 seconds??????????????????????????????????????????????????????????????????????????????????????????????????? hbase:017:0> put 'scores','badao','course:art','86' Took 0.0157 seconds??????????????????????????????????????????????????????????????????????????????????????????????????? hbase:018:0> put 'scores','badao','course:math','85' Took 0.0297 seconds??????????????????????????????????????????????????????????????????????????????????????????????????? hbase:019:0>

5、掃描表:scan

scan用于進行全表單元掃描

語法:scan'表名稱',{COLUMNS=>['列族名1','列族名2'],參數名=>參數值}

大括號內的內容為掃描條件,如不指定則查詢所有的數據

scan'scores'


輸出結果顯示共2行數據,因為在scan的結果中,將相同行鍵的所有單元視為一行。?

如果對有些列族不關心,便可指定只查詢某個列族。

scan 'scores',{COLUMNS=>'course'}

將COLUMNS替換成COLUMN,表示查詢某個列鍵,下面掃描所有行的列鍵為course:math的單元并使用LIMIT參數限制只輸出一個。

scan'scores',{COLUMN=>'course:math',LIMIT=>1}

?

6、獲取數據:get

get用于獲取行的所有單元或者某個指定的單元

語法:

get’表名稱','行鍵',{COLUMNS=>[‘列族名','列族名2'],參數名=>參數值}

get’表名稱','行鍵',{COLUMN=>[‘列鍵1','列鍵2'],參數名=>參數值}

與scan相比多一個行鍵參數。scan查找的目標是全表的某個列族、列鍵,而get

查找的目標是某行的某個列族、列鍵。

例如:查找行鍵為badao的所有單元

get 'scores','badao'

例如:查找行鍵為badao,列鍵為course:math的單元

get 'scores','badao',{COLUMN=>'course:math'}

7、刪除數據:delete

語法:

delete '表名稱','行鍵','列鍵'

deleteall '表名稱','行鍵'

delete只能刪除一個單元,而deleteall能刪除一行。

示例:

delete 'scores','tom','course:art'

8、修改表

使用alter可為表增加或修改列族

語法:alter '表名稱',參數名=>參數值,...

其中列族名參數NAME必須提供,如果已存在則修改,否則會增加一個列族。

將scores表的列族course的VERSIONS參數修改為5示例:

alter 'scores',NAME=>'course',VERSIONS=>'5'

同時修改或增加多個列族時應以逗號分開,并且每個列族用{}括起來。

示例:

alter 'scores',{NAME=>'grade',VERSIONS=>'5'},{NAME='course',VERSIONS= >'5'}

9、刪除表:drop

HBase表分為兩種狀態:ENABLED和DISABLED,分別表示是否可用。

使用disable將表置為不可用狀態

disable 'scores'

使用enable將表置為可用狀態

enable 'scores'

當表為ENABLED狀態時,會被禁止刪除。所以必須先將表置為DISABLED狀態才可被刪除。

總結

以上是生活随笔為你收集整理的HBase Shell常用的命令的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。