Utilizando el drop comando, puede eliminar una tabla. Antes de caer una tabla, tendrá que deshabilitar.
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
Verificar si se eliminará la tabla utilizando el comando exists.
hbase(main):020:0> exists 'emp' Table emp does not exist 0 row(s) in 0.0730 seconds
Este comando se utiliza para eliminar las tablas haciendo coincidir los "regex" dados en el comando. Su sintaxis es la siguiente:
hbase> drop_all ‘t.*’
Nota: Antes de caer una tabla, se debe desactivar.
Supongamos que hay las tablas con el nombre raja, rajani, rajendra, rajesh y raju.
hbase(main):017:0> list TABLE raja rajani rajendra rajesh raju 9 row(s) in 0.0270 seconds
Todos estos cuadros comienzan con las letras raj. En primer lugar, nos desactivar todas estas tablas mediante el disable_all comando como se muestra a continuación.
hbase(main):002:0> disable_all 'raj.*' raja rajani rajendra rajesh raju Disable the above 5 tables (y/n)? y 5 tables successfully disabled
Ahora puede eliminar todos ellos mediante el drop_all comando como se indica a continuación.
hbase(main):018:0> drop_all 'raj.*' raja rajani rajendra rajesh raju Drop the above 5 tables (y/n)? y 5 tables successfully dropped
Puede eliminar una tabla con la deleteTable() en la HBaseAdmin clase. Siga los pasos que se indican a continuación para eliminar una tabla utilizando la API de java.
Cree una instancia de la clase HBaseAdmin.
// creating a configuration object Configuration conf = HBaseConfiguration.create(); // Creating HBaseAdmin object HBaseAdmin admin = new HBaseAdmin(conf);
Desactivar la tabla utilizando el disableTable()de la HBaseAdmin clase.
admin.disableTable("emp1");
Ahora elimine la tabla utilizando el deleteTable() de la HBaseAdmin clase.
admin.deleteTable("emp12");
A continuación, se completa el programa java para eliminar una tabla en 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"); } }
Compilar y ejecutar el programa como se muestra a continuación.
$javac DeleteTable.java $java DeleteTable
Lo siguiente debe ser el producto:
Table deleted