在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 教程/ 大數(shù)據(jù)/ HBase禁用表
HBase禁用表
HBase創(chuàng)建表
HBase客戶端API
HBase安裝
HBase表描述和修改
HBase Admin API
HBase掃描
HBase創(chuàng)建數(shù)據(jù)
HBase列出表
HBase刪除數(shù)據(jù)
HBase讀取數(shù)據(jù)
HBase常用命令
HBase更新數(shù)據(jù)
HBase關(guān)閉
HBase架構(gòu)
HBase Shell
HBase Exists
HBase安全
HBase教程
HBase啟用表
HBase計數(shù)和截斷
HBase刪除表

HBase禁用表

要刪除表或改變其設(shè)置,首先需要使用 disable 命令關(guān)閉表。使用 enable 命令,可以重新啟用它。

下面給出的語法是用來禁用一個表:

disable emp

下面給出的是一個例子,說明如何禁用表。

hbase(main):025:0> disable 'emp'
0 row(s) in 1.2760 seconds

驗證

禁用表之后,仍然可以通過 list 和exists命令查看到。無法掃描到它存在,它會給下面的錯誤。

hbase(main):028:0> scan 'emp'

ROW         COLUMN+CELL

ERROR: emp is disabled.

is_disabled

這個命令是用來查看表是否被禁用。它的語法如下。

hbase> is_disabled 'table name'

下面的例子驗證表名為emp是否被禁用。如果禁用,它會返回true,如果沒有,它會返回false。

hbase(main):031:0> is_disabled 'emp'

true

0 row(s) in 0.0440 seconds

disable_all

此命令用于禁用所有匹配給定正則表達式的表。disable_all命令的語法如下。

hbase> disable_all 'r.*'

假設(shè)有5個表在HBase,即raja, rajani, rajendra, rajesh 和 raju。下面的代碼將禁用所有以 raj 開始的表。

hbase(main):002:0> disable_all 'raj.*'

raja
rajani
rajendra
rajesh
raju
Disable the above 5 tables (y/n)?

y

5 tables successfully disabled

禁用表使用Java API

要驗證一個表是否被禁用,使用isTableDisabled()方法和disableTable()方法禁用一個表。這些方法屬于HBaseAdmin類。按照下面給出禁用表中的步驟。

第1步

HBaseAdmin類的實例如下所示。

// Creating configuration object
Configuration conf = HBaseConfiguration.create();

// Creating HBaseAdmin object
HBaseAdmin admin = new HBaseAdmin(conf);

第2步

使用isTableDisabled()方法驗證表是否被禁用,如下圖所示。

Boolean b = admin.isTableDisabled("emp");

第3步

如果表未禁用,禁用它,如下圖所示。

if(!b){
   admin.disableTable("emp");
   System.out.println("Table disabled");
}

下面給出的是完整的程序,以驗證表是否被禁用;如果沒有,那么如何禁用它?

import java.io.IOException;

import org.apache.hadoop.conf.Configuration;

import org.apache.hadoop.hbase.HBaseConfiguration;
import org.apache.hadoop.hbase.MasterNotRunningException;
import org.apache.hadoop.hbase.client.HBaseAdmin;

public class DisableTable{

   public static void main(String args[]) throws MasterNotRunningException, IOException{

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

   // Verifying weather the table is disabled
   Boolean bool = admin.isTableDisabled("emp");
   System.out.println(bool);

   // Disabling the table using HBaseAdmin object
   if(!bool){
      admin.disableTable("emp");
      System.out.println("Table disabled");
   }

   }
}

編譯和執(zhí)行上述程序如下所示。

$javac DisableTable.java
$java DsiableTable

下面列出的是輸出:

false
Table disabled

上一篇:HBase刪除表下一篇:HBase常用命令