HBase – 外壳
HBase – 外壳
本章介绍如何启动 HBase 附带的 HBase 交互式 shell。
HBase 外壳
HBase 包含一个 shell,您可以使用它与 HBase 进行通信。HBase 使用 Hadoop 文件系统来存储其数据。它将有一个主服务器和区域服务器。数据存储将采用区域(表)的形式。这些区域将被拆分并存储在区域服务器中。
主服务器管理这些区域服务器,所有这些任务都在 HDFS 上进行。下面给出了 HBase Shell 支持的一些命令。
一般命令
-
status – 提供 HBase 的状态,例如,服务器数量。
-
version – 提供正在使用的 HBase 的版本。
-
table_help – 为表参考命令提供帮助。
-
whoami – 提供有关用户的信息。
数据定义语言
这些是对 HBase 中的表进行操作的命令。
-
create – 创建一个表。
-
list – 列出 HBase 中的所有表。
-
disable – 禁用表。
-
is_disabled – 验证表是否被禁用。
-
enable – 启用表。
-
is_enabled – 验证表是否已启用。
-
describe – 提供表的描述。
-
改变–改变一个表。
-
存在– 验证表是否存在。
-
drop – 从 HBase 中删除一个表。
-
drop_all – 删除与命令中给出的“regex”匹配的表。
-
Java Admin API – 在上述所有命令之前,Java 提供了一个 Admin API 以通过编程实现 DDL 功能。在org.apache.hadoop.hbase.client包下,HBaseAdmin 和 HTableDescriptor 是该包中提供 DDL 功能的两个重要类。
数据操作语言
-
put – 将单元格值放在特定表中指定行的指定列中。
-
get – 获取行或单元格的内容。
-
delete – 删除表格中的单元格值。
-
deleteall – 删除给定行中的所有单元格。
-
scan – 扫描并返回表数据。
-
count – 计算并返回表中的行数。
-
truncate – 禁用、删除和重新创建指定的表。
-
Java 客户端 API – 在上述所有命令之前,Java在 org.apache.hadoop.hbase.client 包下提供了一个客户端 API,以通过编程实现 DML 功能、CRUD(创建检索更新删除)操作等。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>。在继续之前检查外壳的功能。为此,请使用list命令。List是用来获取HBase中所有表的列表的命令。首先,使用此命令验证系统中 HBase 的安装和配置,如下所示。
hbase(main):001:0> list
当您键入此命令时,它会为您提供以下输出。
hbase(main):001:0> list TABLE