Hbase 简明教程
HBase - Shell
本章解释如何启动 HBase 附带的交互式 shell。
HBase Shell
HBase 包含一个 shell,你可以使用它与 HBase 通信。HBase 使用 Hadoop 文件系统来存储数据。它将拥有一个主服务器和区域服务器。数据存储将以区域(表)的形式进行。这些区域将被拆分为区域服务器中存储。
主服务器管理这些区域服务器并且所有这些任务都在 HDFS 上进行。以下是 HBase Shell 支持的一些命令。
General Commands
-
status - 提供 HBase 的状态,例如服务器数量。
-
version - 提供正在使用的 HBase 版本。
-
table_help - 提供有关引用命令的表帮助。
-
whoami - 提供有关用户的信息。
Data Definition Language
这些是对 HBase 中的表进行操作的命令。
-
create - 创建一个表。
-
list - 列出 HBase 中的所有表。
-
disable - 禁用一个表。
-
is_disabled - 验证一个表是否已禁用。
-
enable - 启用一个表。
-
is_enabled - 验证一个表是否已启用。
-
describe - 提供表的描述信息。
-
alter - 修改一个表。
-
exists - 验证一个表是否存在。
-
drop - 从 HBase 中删除一个表。
-
drop_all - 删除匹配命令中给定的‘正则表达式’的表。
-
Java Admin API - 在上述所有命令之前,Java 提供了一个 Admin API,可以通过编程实现 DDL 功能。在 org.apache.hadoop.hbase.client 包下,HBaseAdmin 和 HTableDescriptor 是该包中提供 DDL 功能的两个重要类。
Data Manipulation Language
-
put - 在特定表的特定行中特定列处放置单元格值。
-
get - 提取行或单元格的内容。
-
delete - 删除表中的单元格值。
-
deleteall - 删除给定行中的所有单元格。
-
scan - 扫描并返回表数据。
-
count - 计算并返回表中的行数。
-
truncate - 禁用、删除和重新创建指定表。
-
Java client API - 在上述所有命令之前,Java 提供了一个客户端 API,可以通过 org.apache.hadoop.hbase.client 包下的编程来实现 DML 功能,即 CRUD (创建检索更新删除)操作等。 HTable Put 和 Get 是该包中的重要类。
Starting 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