HBase Exists

 

可以使用exists命令验证表的存在。下面的示例演示了如何使用这个命令。

hbase(main):024:0> exists 'emp'
Table emp does exist 0 row(s) in 0.0750 seconds ================================================================== hbase(main):015:0> exists 'student'
Table student does not exist 0 row(s) in 0.0480 seconds

使用Java API验证表的存在

可以使用HBaseAdmin类的tableExists()方法验证表在HBase中是否存在。按照下面给出的步骤验证HBase表存在。

第1步

Instantiate the HBaseAdimn class

// Instantiating configuration object
Configuration conf = HBaseConfiguration.create(); // Instantiating HBaseAdmin class
HBaseAdmin admin = new HBaseAdmin(conf);

第2步

使用tableExists()方法来验证表的存在。

下面给出的是使用java程序中的Java API来测试一个HBase表的存在。

import java.io.IOException;

import org.apache.hadoop.hbase.HBaseConfiguration;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.hbase.client.HBaseAdmin; public class TableExists{ public static void main(String args[])throws IOException{ // Instantiating configuration class
Configuration conf = HBaseConfiguration.create(); // Instantiating HBaseAdmin class
HBaseAdmin admin = new HBaseAdmin(conf); // Verifying the existance of the table
boolean bool = admin.tableExists("emp");
System.out.println( bool);
}
}

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

$javac TableExists.java
$java TableExists

下面列出的是输出:

true

HBase删除表

用drop命令可以删除表。在删除一个表之前必须先将其禁用。

hbase(main):018:0> disable 'emp'
0 row(s) in 1.4580 seconds hbase(main):019:0> drop 'emp'
0 row(s) in 0.3060 seconds

使用exists 命令验证表是否被删除。

hbase(main):020:0> exists 'emp'
Table emp does not exist 0 row(s) in 0.0730 seconds

drop_all

这个命令是用来在给出删除匹配“regex”表。它的语法如下:

hbase> drop_all ‘t.*’

注意:要删除表,则必须先将其禁用。

示例

假设有一些表的名称为raja, rajani, rajendra, rajesh, 和 raju。

hbase(main):017:0> list
TABLE
raja
rajani
rajendra
rajesh
raju
9 row(s) in 0.0270 seconds

所有这些表以字母raj开始。首先使用disable_all命令禁用所有这些表如下所示。

hbase(main):002:0> disable_all 'raj.*'
raja
rajani
rajendra
rajesh
raju
Disable the above 5 tables (y/n)?
y
5 tables successfully disabled

现在,可以使用 drop_all 命令删除它们,如下所示。

hbase(main):018:0> drop_all 'raj.*'
raja
rajani
rajendra
rajesh
raju Drop the above 5 tables (y/n)? y
5 tables successfully dropped

使用Java API删除表

可以使用 HBaseAdmin 类的deleteTable()方法删除表。按照下面给出是使用Java API来删除表中的步骤。

第1步

实例化HBaseAdmin类。

// creating a configuration object
Configuration conf = HBaseConfiguration.create(); // Creating HBaseAdmin object
HBaseAdmin admin = new HBaseAdmin(conf);

第2步

使用HBaseAdmin类的disableTable()方法禁止表。

admin.disableTable("emp1");

第3步

现在使用HBaseAdmin类的deleteTable()方法删除表。

admin.deleteTable("emp12");

下面给出的是完整的Java程序用于删除HBase表。

import java.io.IOException;

import org.apache.hadoop.hbase.HBaseConfiguration;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.hbase.client.HBaseAdmin; public class DeleteTable { public static void main(String[] args) throws IOException { // Instantiating configuration class
Configuration conf = HBaseConfiguration.create(); // Instantiating HBaseAdmin class
HBaseAdmin admin = new HBaseAdmin(conf); // disabling table named emp
admin.disableTable("emp12"); // Deleting emp
admin.deleteTable("emp12");
System.out.println("Table deleted");
}
}

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

$javac DeleteTable.java
$java DeleteTable

下面是输出结果:

Table deleted

HBase关闭

exit

可以通过键入exit命令退出shell。

hbase(main):021:0> exit

停止HBase

要停止HBase,浏览进入到HBase主文件夹,然后键入以下命令。

./bin/stop-hbase.sh

使用Java API停止HBase

可以使用HBaseAdmin类的shutdown()方法关闭HBase。按照下面给出关闭HBase的步骤:

第1步

实例化HbaseAdmin类。

// Instantiating configuration object
Configuration conf = HBaseConfiguration.create(); // Instantiating HBaseAdmin object
HBaseAdmin admin = new HBaseAdmin(conf);

第2步

使用HBaseAdmin类的shutdown()方法关闭HBase。

admin.shutdown();

下面给出的是停止HBase的程序。

import java.io.IOException;

import org.apache.hadoop.hbase.HBaseConfiguration;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.hbase.client.HBaseAdmin; public class ShutDownHbase{ public static void main(String args[])throws IOException { // Instantiating configuration class
Configuration conf = HBaseConfiguration.create(); // Instantiating HBaseAdmin class
HBaseAdmin admin = new HBaseAdmin(conf); // Shutting down HBase
System.out.println("Shutting down hbase");
admin.shutdown();
}
}

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

$javac ShutDownHbase.java
$java ShutDownHbase

下面是输出结果:

Shutting down hbase

Hbase记录-HBase基本操作(二)的更多相关文章

  1. Hbase记录-Hbase基础概念

    HBase是什么? HBase是建立在Hadoop文件系统之上的分布式面向列的数据库.它是一个开源项目,是横向扩展的. HBase是一个数据模型,类似于谷歌的大表设计,可以提供快速随机访问海量结构化数 ...

  2. Hbase记录-Hbase shell使用

    HBase Shell HBase包含可以与HBase进行通信的Shell. HBase使用Hadoop文件系统来存储数据.它拥有一个主服务器和区域服务器.数据存储将在区域(表)的形式.这些区域被分割 ...

  3. Hbase记录-HBase基本操作(一)

    HBase创建表 可以使用命令创建一个表,在这里必须指定表名和列族名.在HBase shell中创建表的语法如下所示. create ‘<table name>’,’<column ...

  4. Hbase记录-HBase性能优化指南

    垃圾回收优化当region服务器处理大量的写入负载时,繁重的任务会迫使JRE默认的内存分配策略无法保证程序的稳定性 所以我们可能需要对region服务器的垃圾回收机制进行一些参数调整(因为master ...

  5. Hbase记录-Hbase介绍

    Hbase是什么 HBase是一种构建在HDFS之上的分布式.面向列的存储系统,适用于实时读写.随机访问超大规模数据的集群. HBase的特点 大:一个表可以有上亿行,上百万列. 面向列:面向列表(簇 ...

  6. Hbase记录-Hbase shell使用命令

    1.进入hbase shell  执行./bin/hbase shell 2.进入后,help  帮助信息,如可以使用help 'create' 3.创建表:create 'test','cf'  表 ...

  7. Hbase记录-hbase部署

    #版本支持 #官网下载二进制包,解压到/usr/app下,配置/etc/profile: export HBASE_HOME=/usr/app/hbase export PATH=$HBASE_HOM ...

  8. Hbase记录-Hbase配置项

    hbase.tmp.dir:本地文件系统的临时目录,默认是java.io.tmpdir/hbase−java.io.tmpdir/hbase−{user.name}: hbase.rootdir:hb ...

  9. Hbase记录-HBase扫描/计数/权限

    HBase扫描   scan 命令用于查看HTable数据.使用 scan 命令可以得到表中的数据.它的语法如下: scan ‘<table name>’ 下面的示例演示了如何使用scan ...

随机推荐

  1. Flask-论坛开发-1-基础知识

    对Flask感兴趣的,可以看下这个视频教程:http://study.163.com/course/courseLearn.htm?courseId=1004091002 1. 第一个 flask 程 ...

  2. Windows系统下PHP使用Redis

    参考链接:https://www.cnblogs.com/lhat/p/6402472.html 环境:windows 10  64位操作系统    php 5.4 redis 3.0 1.redis ...

  3. 软件工程_1st weeks

    本周为软件工程课的第一周,本周主要完成了三个工作:了解了github并使用.拜读了<构建之法>并开通了博客以及完成了四则运算的代码实现. 对于第一项工作github的安装和使用,花费了5个 ...

  4. PHP的安装,编译,扩展工具

    1.基本容易混淆的概念 pecl php的社区贡献扩展库,全称为PHP Extension Community Library, 是php的底层库, 使用C语言编写 pear php的应用扩展库,全称 ...

  5. 关于Spring MVC跨域

    1.Sping MVC 3.X跨域 关于跨域问题,主要用的比较多的是cros跨域. 详细介绍请看https://developer.mozilla.org/zh-CN/docs/Web/HTTP/Ac ...

  6. Java之JSON操作(gson)

    使用gson包操作JSON数据. 依赖包:gson-2.8.2.jar <dependency> <groupId>com.google.code.gson</group ...

  7. asp.net 连接SQL Server 数据库并进行相关操作

    asp.net 连接数据库,操作数据库主要需要两个类,一个是SqlConnection,一个是SqlCommand SqlConnection用于连接数据库,打开数据库,关闭数据库. 连接数据库需要特 ...

  8. c# 对象存cookie

    下载并引用Newtonsoft.Json.dll 对象转json,然后存cookies string xxx= Newtonsoft.Json.JsonConvert.SerializeObject( ...

  9. Android recording 录音功能 简单使用小实例

    package com.app.recordingtest; import java.io.File; import java.io.IOException; import android.app.A ...

  10. AtCoder Grand Contest 011

    AtCoder Grand Contest 011 upd:这篇咕了好久,前面几题是三周以前写的... AtCoder Grand Contest 011 A - Airport Bus 翻译 有\( ...