You need to enable JavaScript to run this app.
导航

HBase Shell

最近更新时间2022.12.23 15:39:21

首次发布时间2022.12.21 11:34:52

火山引擎 E-MapReduce(EMR)集群中,您可以使用 HBase Shell 命令的方式进入交互式命令。本文为您介绍常用的 HBase Shell 命令。

1 前提条件

已创建包含 HBase 组件服务的 EMR 集群。详见创建集群

2 基本命令

2.1 DDL Shell 命令

  1. Create
    创建一个表。传递一个表名和一组列族规范(至少一个),以及表配置(可选)。
    列说明规范可以是一个简单的字符串(名称),也可以是一个字典,必须包括 NAME 属性。
    例如:

    创建一个 namespace=ns1 和表限定符=t1的表
    hbase> create 'ns1:t1', {NAME => 'f1', VERSIONS => 5}
    
    指定配置项
    hbase> create 't1', 'f1', {NUMREGIONS => 15, SPLITALGO => 'HexStringSplit', REGION_REPLICATION => 2, CONFIGURATION => {'hbase.hregion.scan.loadColumnFamiliesOnDemand' => 'true'}}
    
  2. List

    列出所有的表

    hbase> list
    
  3. enable/disable

    启用/禁用一张表

    hbase> enable 't1'
    hbase> disable 't1'
    
  4. Drop

    删除一张表,删除前必须先 disable 表

    hbase> drop 't1'
    

2.2 General Shell命令

  1. Status

    查看 HBase 当前状态

    hbase> status
    
  2. Version

    查看 HBase 当前版本

    hbase> version
    
  3. Whoami

    查看当前用户

    hbase> whoami
    

2.3 DML Shell 命令

  1. Get

    获取行或单元格内容;传递表名、行和一个由列、时间戳、时间范围和版本组成的字典(可选)

    hbase> get 'ns1:t1', 'r1'
    hbase> get 't1', 'r1', {COLUMN => 'c1', TIMESTAMP => ts1, VERSIONS => 4}
    
  2. Put

    在指定的 table/row/column 和时间戳坐标处放置一个单元格“value”

    将一个单元格值放入表“ns1:t1”或“t1”的“r1”行的“c1”列,并标记为“ts1”的时间戳,执行
    hbase> put 'ns1:t1', 'r1', 'c1', 'value'
    
  3. Delete

    在指定的 table/row/column 和(可选的)时间戳坐标处放置一个删除单元格值。删除必须与被删除单元格的坐标精确匹配

    要从't1'表的'r1'行的'c1'列中删除一个单元格,执行以下操作
    hbase> delete 'ns1:t1', 'r1', 'c1', ts1
    

3 其他命令

除上述命令外,HBase Shell 还支持丰富的其他功能命令,比如 tools 命令,namespace 命令等,具体命令用法可参看http://xueai8.com/course/191/article