使用HBase客戶端
更新時間 2023-06-28 22:12:34
最近更新時間: 2023-06-28 22:12:34
分享文章
本章節主要介紹使用HBase客戶端 。
操作場景
該任務指導用戶在運維場景或業務場景中使用HBase客戶端。
前提條件
- 已安裝客戶端。例如安裝目錄為“/opt/hadoopclient”,以下操作的客戶端目錄只是舉例,請根據實際安裝目錄修改。
- 各組件業務用戶由系統管理員根據業務需要創建。
“機機”用戶需要下載keytab文件,“人機”用戶第一次登錄時需修改密碼。
- 非root用戶使用HBase客戶端,請確保該HBase客戶端目錄的屬主為該用戶,否則請參考如下命令修改屬主。
chown user:group -R 客戶端安裝目錄 /HBase
使用Hbase客戶端(MRS 3.x之前版本)
- 以客戶端安裝用戶,登錄安裝客戶端的節點。
- 執行以下命令切換到客戶端目錄。
cd /opt/hadoopclient
- 執行以下命令配置環境變量。
source bigdata_env
- 如果當前集群已啟用Kerberos認證,執行以下命令認證當前用戶,當前用戶需要具有創建HBase表的權限,具體請參見“用戶指南 > 管理現有集群 > MRS多用戶權限管理 > 創建角色”配置擁有對應權限的角色,參考“用戶指南 > 管理現有集群 > MRS多用戶權限管理 > 創建用戶”章節,為用戶綁定對應角色。如果當前集群未啟用Kerberos認證,則無需執行此命令。
kinit 組件業務用戶
例如,kinit hbaseuser。
- 直接執行HBase組件的客戶端命令。
hbase shell
使用HBase客戶端(MRS 3.x及之后版本)
-
以客戶端安裝用戶,登錄安裝客戶端的節點。
-
執行以下命令切換到客戶端目錄。
cd /opt/hadoopclient
- 執行以下命令配置環境變量。
source bigdata_env
- 若安裝了HBase多實例,在使用客戶端連接具體HBase實例時,請執行以下命令加載具體實例的環境變量,否則請跳過此步驟。例如,加載HBase2實例變量:
source HBase2/component_env
- 如果當前集群已啟用Kerberos認證,執行以下命令認證當前用戶,當前用戶需要具有創建HBase表的權限,具體請參見“用戶指南 > 管理現有集群 > MRS多用戶權限管理 > 創建角色”配置擁有對應權限的角色,參考“用戶指南 > 管理現有集群 > MRS多用戶權限管理 > 創建用戶”章節,為用戶綁定對應角色。如果當前集群未啟用Kerberos認證,則無需執行此命令。
kinit 組件業務用戶
- 直接執行HBase組件的客戶端命令。
hbase shell
HBase客戶端常用命令
常用的HBase客戶端命令如下表所示。更多命令可參考//hbase.apache.org/2.2/book.html
詳見下表:HBase客戶端命令
| 命令 | 說明 |
|---|---|
| create | 創建一張表,例如create 'test', 'f1', 'f2', 'f3'。 |
| disable | 停止指定的表,例如disable 'test'。 |
| enable | 啟動指定的表,例如enable 'test'。 |
| alter | 更改表結構。可以通過alter命令增加、修改、刪除列族信息以及表相關的參數值,例如alter 'test', {NAME => 'f3', METHOD => 'delete'}。 |
| describe | 獲取表的描述信息,例如describe 'test'。 |
| drop | 刪除指定表。刪除前表必須已經是停止狀態,例如drop 'test'。 |
| put | 寫入指定cell的value。Cell的定位由表、rowk、列組合起來唯一決定,例如put 'test','r1','f1:c1','myvalue1'。 |
| get | 獲取行的值或者行的指定cell的值。例如get 'test','r1'。 |
| scan | 查詢表數據。參數中指定表名和scanner,例如scan 'test'。 |