- 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
广告