求知 文章 文库 Lib 视频 Code iProcess 课程 认证 咨询 工具 火云堂 讲座吧   成长之路  
会员   
 
追随技术信仰

随时听讲座
每天看新闻
 
 

Hbase教程
Hbase架构
Hbase安装
Hbase Shell
Hbase常用命令
Hbase Admin API
Hbase创建表
Hbase列出表
Hbase禁用表
Hbase启用表
HBase表描述和修改
HBase Exists
HBase删除表
HBase关闭
HBase客户端API
HBase创建数据
HBase更新数据
HBase读取数据
HBase删除数据
HBase扫描
HBase计数和截断
HBase安全
 
 

HBase列出表
18 次浏览
2次  
 捐助

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();

第1步

就可以得到使用HTableDescriptor类长度可变的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

编译和执行上述程序如下所示。

$javac ListTables.java
$java ListTables

下面列出的是输出:

User
emp 

 


您可以捐助,支持我们的公益事业。

1元 10元 50元





认证码: 验证码,看不清楚?请点击刷新验证码 必填



18 次浏览
2次
 捐助
 


每天2个文档/视频
扫描微信二维码订阅
订阅技术月刊
获得每月300个技术资源
 
 

关于我们 | 联系我们 | 京ICP备10020922号 京公海网安备110108001071号