HBase 删除表
1. 使用HBase Shell删除表
使用 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:07gt; exists 'emp' Table emp does not exist 0 row(s) in 0.0730 seconds
2. drop_all
该命令用于删除与命令中给出的“正则表达式”匹配的表。其语法如下:
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
3. 使用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
1. 退出通过输入 exit 命令退出shell 。hbase(main):021:0> exit 2. 停止HBase要停止HBase,请浏览至HBase主文件夹并键入以下命令。./bin/stop-hb ...