Mediante el comando delete, puede eliminar una celda específica de una tabla. La sintaxis del comando es la siguiente:
delete ‘<table name>’, ‘<row>’, ‘<column name >’, ‘<time stamp>’
Este es un ejemplo para eliminar una celda específica. Aquí estamos eliminando el sueldo
hbase(main):006:0> delete 'emp', '1', 'personal data:city', 1417521848375 0 row(s) in 0.0060 seconds
Mediante el "deleteall" comando, puede eliminar todas las celdas de una fila. A continuación se muestra la sintaxis del comando deleteall.
deleteall ‘<table name>’, ‘<row>’,
Este es un ejemplo de "deleteall" comando, donde estamos eliminando todas las células de fila 1 tabla de emp.
hbase(main):007:0> deleteall 'emp','1' 0 row(s) in 0.0240 seconds
Verifique la tabla utilizando el escanear comando. Una muestra de la tabla después de eliminar la tabla se indica a continuación.
hbase(main):022:0> scan 'emp' ROW COLUMN+CELL 2 column=personal data:city, timestamp=1417524574905, value=chennai 2 column=personal data:name, timestamp=1417524556125, value=ravi 2 column=professional data:designation, timestamp=1417524204, value=sr:engg 2 column=professional data:salary, timestamp=1417524604221, value=30000 3 column=personal data:city, timestamp=1417524681780, value=delhi 3 column=personal data:name, timestamp=1417524672067, value=rajesh 3 column=professional data:designation, timestamp=1417523187, value=jr:engg 3 column=professional data:salary, timestamp=1417524702514, value=25000
Puede borrar datos de una tabla mediante el HBase delete() método de la HTable clase. Siga los pasos que se indican a continuación para eliminar los datos de una tabla.
Clase de Configuración HBase añade archivos de configuración de su objeto. Puede crear un objeto de configuración mediante el create() método de la HbaseConfiguration clase la tal como se muestra a continuación.
Configuration conf = HbaseConfiguration.create();
Tiene una clase llamada HTable, una implementación de tabla en HBase. Esta clase se utiliza para comunicarse con un solo HBase tabla. Al crear una instancia esta clase, acepta el objeto de configuración y el nombre de la tabla como parámetros. Puede crear instancias de la clase HTable como se muestra a continuación.
HTable hTable = new HTable(conf, tableName);
Eliminar una instancia de la clase al pasar el rowid de la fila que se va a eliminar, en formato de matriz de bytes. También puede pasar hora y Rowlock a este constructor.
Delete delete = new Delete(toBytes("row1"));
Puede eliminar los datos mediante la eliminación de los métodos eliminar la clase. Esta clase tiene distintos métodos eliminar. Seleccione las columnas o columna familias que han de ser eliminados usando estos métodos. Eche un vistazo a los siguientes ejemplos que muestran el uso de Eliminar métodos de clase.
delete.deleteColumn(Bytes.toBytes("personal"), Bytes.toBytes("name")); delete.deleteFamily(Bytes.toBytes("professional"));
Eliminar los datos seleccionados en la aprobación de la eliminar instancia de eliminar() del HTable clase como se muestra a continuación.
table.delete(delete);
Después de eliminar los datos, cierre la HTable Instancia.
table.close();
A continuación se incluye el programa completo para eliminar los datos de la tabla HBase.
import java.io.IOException; import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.hbase.HBaseConfiguration; import org.apache.hadoop.hbase.client.Delete; import org.apache.hadoop.hbase.client.HTable; import org.apache.hadoop.hbase.util.Bytes; public class DeleteData { public static void main(String[] args) throws IOException { // Instantiating Configuration class Configuration conf = HBaseConfiguration.create(); // Instantiating HTable class HTable table = new HTable(conf, "employee"); // Instantiating Delete class Delete delete = new Delete(Bytes.toBytes("row1")); delete.deleteColumn(Bytes.toBytes("personal"), Bytes.toBytes("name")); delete.deleteFamily(Bytes.toBytes("professional")); // deleting the data table.delete(delete); // closing the HTable object table.close(); System.out.println("data deleted....."); } }
Compilar y ejecutar el programa como se muestra a continuación.
$javac Deletedata.java $java DeleteData
Lo siguiente debe ser el producto:
data deleted