开发学院

您的位置:首页>教程>正文

教程正文

HBase Shell

HBase Shell

  本节介绍如何使用HBase自带的交互shell启动HBase。

HBase Shell

  HBase包含可以与HBase进行通信的Shell。 HBase使用Hadoop文件系统来存储数据。它拥有一个主服务器和区域服务器。数据存储将在区域(表)的形式。这些区域被分割并存储在区域服务器。

  主服务器管理这些区域服务器,所有这些任务发生在HDFS。下面给出的是一些由HBase Shell支持的命令。

通用命令

  • status: 提供HBase的状态,例如,服务器的数量。

  • version: 提供正在使用HBase版本。

  • table_help: 表引用命令提供帮助。

  • whoami: 提供有关用户的信息。

数据定义命令

  下面是关于HBase表操作的命令。

  • create: 创建一个表。

  • list: 列出HBase的所有表。

  • disable: 禁用表。

  • is_disabled: 验证表是否被禁用。

  • enable: 启用一个表。

  • is_enabled: 验证表是否已启用。

  • describe: 提供了一个表的描述。

  • alter: 改变一个表。

  • exists: 验证表是否存在。

  • drop: 从HBase中删除表。

  • drop_all: 丢弃在命令中给出匹配“regex”的表。

  • Java Admin API: 在此之前所有的上述命令,Java提供了一个通过API编程来管理实现DDL功能。在这个org.apache.hadoop.hbase.client包中有HBaseAdmin和HTableDescriptor 这两个重要的类提供DDL功能。

数据操作命令

  • put: 把指定列在指定的行中单元格的值在一个特定的表。

  • get: 取行或单元格的内容。

  • delete: 删除表中的单元格值。

  • deleteall: 删除给定行的所有单元格。

  • scan: 扫描并返回表数据。

  • count: 计数并返回表中的行的数目。

  • truncate: 禁用,删除和重新创建一个指定的表。

  • Java client API: 在此之前所有上述命令,Java提供了一个客户端API来实现DML功能,CRUD(创建检索更新删除)操作更多的是通过编程,在org.apache.hadoop.hbase.client包下。 在此包HTable 的 Put和Get是重要的类。

启动 HBase Shell

  要访问HBase shell,需要进入到HBase的主文件夹。

cd /usr/localhost/
cd Hbase

 可以使用“hbase shell”命令来启动HBase的交互shell,如下所示。

./bin/hbase shell

 如果已成功在系统中安装HBase,那么它会给出 HBase shell 提示符,如下所示。

HBase Shell; enter 'help<RETURN>' for list of supported commands.
Type "exit<RETURN>" to leave the HBase Shell
Version 0.94.23, rf42302b28aceaab773b15f234aa8718fff7eea3c, Wed Aug 27
00:54:09 UTC 2014
hbase(main):001:0>

 要退出交互shell,键入 exit 或使用<Ctrl + C>即可。进一步处理检查shell功能之前,使用 list 命令用于列出所有可用命令。list是用来获取所有HBase 表的列表。首先,验证安装HBase在系统中使用如下所示。

hbase(main):001:0> list

当输入这个命令,它给出下面的输出。

hbase(main):001:0> list
TABLE