- HBase - Inicio
- HBase - Descripción General
- HBase - Arquitectura
- HBase - Instalación
- HBase - Shell
- HBase - Comandos Generales
- HBase - Admin API
- HBase - Crear Tabla
- HBase - Listado Tabla
- HBase - Desactivación de una Tabla
- HBase - Permitiendo una Tabla
- HBase - Describir y Modificar
- HBase - Existe
- HBase - Soltar la Tabla
- HBase - Apagado
- HBase - API de Cliente
- HBase - Crear Datos
- HBase - Actualizar Datos
- HBase - Leer Datos
- HBase - Eliminar Datos
- HBase - Escanear
- HBase El Conde y Truncar
- HBase - Seguridad
HBase - Actualizar Datos
Usted puede actualizar un valor de la celda utilizando el update comando put. Para ello, slo tienes que seguir la misma sintaxis y mencionar el nuevo valor como se muestra a continuacin.
put table name,row ,'Column family:column name',new value
El nuevo valor dado sustituye el valor existente, la actualizacin de la fila.
Ejemplo
Supongamos que hay una tabla en HBase llamado emp con los siguientes datos
hbase(main):003:0> scan 'emp' ROW COLUMN+CELL row1 column=personal:name, timestamp=1418051555, value=raju row1 column=personal:city, timestamp=1418275907, value=Hyderabad row1 column=professional:designation, timestamp=14180555,value=manager row1 column=professional:salary, timestamp=1418035791555,value=50000 1 row(s) in 0.0100 seconds
El siguiente comando se actualizar el valor de ciudad del empleado de nombre "Raju" a Delhi.
hbase(main):002:0> put 'emp','row1','personal:city','Delhi' 0 row(s) in 0.0400 seconds
La actualizacin de la tabla se ve de la siguiente manera desde donde se puede observar la ciudad de Raju ha sido cambiado a "Delhi".
hbase(main):003:0> scan 'emp' ROW COLUMN+CELL row1 column=personal:name, timestamp=1418035791555, value=raju row1 column=personal:city, timestamp=1418274645907, value=Delhi row1 column=professional:designation, timestamp=141857555,value=manager row1 column=professional:salary, timestamp=1418039555, value=50000 1 row(s) in 0.0100 seconds
Actualizacin de datos utilizando la API de Java
Puede actualizar los datos en una celda en concreto utilizando el put() mtodo. Siga los pasos que se indican a continuacin para actualizar un valor de la celda de una tabla.
Paso 1: Crear una instancia de la clase de configuracin
Clase de Configuracin HBase aade archivos de configuracin de su objeto. Puede crear un objeto de configuracin mediante el create() mtodo de la HbaseConfiguration clase como se muestra a continuacin.
Configuration conf = HbaseConfiguration.create();
Paso 2: Instantiatethe HTable Clase
Tiene una clase llamada HTable, una implementacin 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 configuracin y el nombre de la tabla como parmetros. Puede crear instancias de la clase HTable como se muestra a continuacin.
HTable hTable = new HTable(conf, tableName);
Paso 3: Poner Clase Instantiatethe
Para insertar datos en tabla HBase, el add() mtodo y sus variantes. Este mtodo pertenece a poner, por lo tanto crear una instancia de la poner clase que. Esta clase requiere el nombre de la fila que desea insertar los datos en formato de cadena. Puede crear instancias de la clase que tal como se muestra a continuacin.
Put p = new Put(Bytes.toBytes("row1"));
Paso 4: Updatean celulares existentes
El add() mtodo de Put clase se utiliza para insertar datos. Se requiere de 3 matrices de bytes representa la columna familia, la columna calificativo (nombre de columna), y el valor que se va a insertar, respectivamente. Insertar datos en HBase tabla mediante el add() mtodo como se muestra a continuacin.
p.add(Bytes.toBytes("coloumn family "), Bytes.toBytes("column
name"),Bytes.toBytes("value"));
p.add(Bytes.toBytes("personal"),
Bytes.toBytes("city"),Bytes.toBytes("Delih"));
Paso 5: Guardar los datos de la tabla
Despus de insertar las filas necesarias, guardar los cambios mediante la adicin a la instancia el put() mtodo , de la clase HTable como se muestra a continuacin.
hTable.put(p);
Paso 6: Cierre HTable Ejemplo
Despus de crear los datos de tabla HBase, cierre la HTable ejemplo usando el mtodo close() como se muestra a continuacin.
hTable.close();
A continuacin se incluye el programa completo para actualizar los datos en una tabla en particular.
import java.io.IOException;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.hbase.HBaseConfiguration;
import org.apache.hadoop.hbase.client.HTable;
import org.apache.hadoop.hbase.client.Put;
import org.apache.hadoop.hbase.util.Bytes;
public class UpdateData{
public static void main(String[] args) throws IOException
{
// Instantiating Configuration class
Configuration config = HBaseConfiguration.create();
// Instantiating HTable class
HTable hTable = new HTable(config, "emp");
// Instantiating Put class
//accepts a row name
Put p = new Put(Bytes.toBytes("row1"));
// Updating a cell value
p.add(Bytes.toBytes("personal"),
Bytes.toBytes("city"),Bytes.toBytes("Delih"));
// Saving the put Instance to the HTable.
hTable.put(p);
System.out.println("data Updated");
// closing HTable
hTable.close();
}
}
Compilar y ejecutar el programa como se muestra a continuacin.
$javac UpdateData.java $java UpdateData
Lo siguiente debe ser el producto:
data Updated