- HBase 教程
- HBase - 首页
- HBase - 概述
- HBase - 架构
- HBase - 安装
- HBase - Shell
- HBase - 通用命令
- HBase - Admin API
- HBase - 创建表格
- HBase - 列出表格
- HBase - 禁用表格
- HBase - 启用表格
- HBase - 描述和修改
- HBase - 存在
- HBase - 放弃表格
- HBase - 关闭
- HBase - 客户端 API
- HBase - 创建数据
- HBase - 更新数据
- HBase - 读取数据
- HBase - 删除数据
- HBase - 扫描
- HBase - 计数和截断
- HBase - 安全
- HBase 资源
- HBase - 问题和解答
- HBase - 快速指南
- HBase - 有用的资源
HBase - 列出表格
使用 HBase Shell 列出表格
list 是用于列出 HBase 中所有表格的命令。以下是 list 命令的语法。
hbase(main):001:0 > list
当您键入此命令并在 HBase 提示符中执行时,将会显示 HBase 中所有表格的列表,如下所示。
hbase(main):001:0> list TABLE emp
在此处,您可以观察到名为 emp 的表格。
使用 Java API 列出表格
按照以下给定的步骤,可以使用 Java API 从 HBase 获取表格列表。
步骤 1
您在 HBaseAdmin 类中有一个名为 listTables() 的方法,以获取 HBase 中所有表格的列表。此方法返回一个 HTableDescriptor 对象数组。
//creating a configuration object Configuration conf = HBaseConfiguration.create(); //Creating HBaseAdmin object HBaseAdmin admin = new HBaseAdmin(conf); //Getting all the list of tables using HBaseAdmin object HTableDescriptor[] tableDescriptor = admin.listTables();
步骤 2
您可以使用 HTableDescriptor 类的 length 变量来获取 HTableDescriptor[] 数组的长度。使用 getNameAsString() 方法从该对象获取表格名称。使用这些方法运行“for”循环,并获取 HBase 中的表格列表。
以下是使用 Java API 列出 HBase 中所有表格的程序。
import java.io.IOException; import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.hbase.HBaseConfiguration; import org.apache.hadoop.hbase.HTableDescriptor; import org.apache.hadoop.hbase.MasterNotRunningException; import org.apache.hadoop.hbase.client.HBaseAdmin; public class ListTables { public static void main(String args[])throws MasterNotRunningException, IOException{ // Instantiating a configuration class Configuration conf = HBaseConfiguration.create(); // Instantiating HBaseAdmin class HBaseAdmin admin = new HBaseAdmin(conf); // Getting all the list of tables using HBaseAdmin object HTableDescriptor[] tableDescriptor = admin.listTables(); // printing all the table names. for (int i=0; i<tableDescriptor.length;i++ ){ System.out.println(tableDescriptor[i].getNameAsString()); } } }
按如下所示编译和执行上述程序。
$javac ListTables.java $java ListTables
应遵循以下输出
User emp
广告