- 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 - Crear Datos
Este captulo muestra cmo crear datos en una tabla HBase. Para crear los datos de una tabla HBase, los siguientes comandos y mtodos se utilizan:
- put Comando
- add() Mtodo de clase y
- Put() mtodo HTable de clase.
Como ejemplo, vamos a crear la siguiente tabla en HBase.
Con el comando put, puede insertar filas en una tabla. Su sintaxis es la siguiente:
put <table name>,row1,<colfamily:colname>,<value>
Insercin de la Primera Fila
Que nos inserte la primera fila los valores de la tabla emp como se muestra a continuacin.
hbase(main):005:0> put 'emp','1','personal data:name','raju' 0 row(s) in 0.6600 seconds hbase(main):006:0> put 'emp','1','personal data:city','hyderabad' 0 row(s) in 0.0410 seconds hbase(main):007:0> put 'emp','1','professional data:designation','manager' 0 row(s) in 0.0240 seconds hbase(main):007:0> put 'emp','1','professional data:salary','50000' 0 row(s) in 0.0240 seconds
Insertar las filas restantes utilizando el comando put de la misma manera. Si se inserta el cuadro en su conjunto, se obtiene el siguiente resultado.
hbase(main):022:0> scan 'emp' ROW COLUMN+CELL 1 column=personal data:city, timestamp=1417524216501, value=hyderabad 1 column=personal data:name, timestamp=1417524185058, value=ramu 1 column=professional data:designation, timestamp=1417524232601, value=manager 1 column=professional data:salary, timestamp=1417524244109, value=50000 2 column=personal data:city, timestamp=1417524574905, value=chennai 2 column=personal data:name, timestamp=1417524556125, value=ravi 2 column=professional data:designation, timestamp=1417524592204, 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=1417524693187, value=jr:engg 3 column=professional data:salary, timestamp=1417524702514, value=25000
Insertar los datos utilizando la API de Java
Puede insertar datos en Hbase utilizando el add() mtodo de la put clase. Usted puede ahorrar mediante el put() mtodo de la HTable clase. Estas clases forman parte de la org.apache.hadoop.hbase.paquete del cliente. A continuacin se dan los pasos para crear los datos de una tabla de HBase.
Paso 1: Crear una instancia de la clase de configuracin
La clase Configuration agrega HBase 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 objeto de configuracin y nombre de la tabla como parmetros. HTable puede crear una instancia de clase, como se muestra a continuacin.
HTable hTable = new HTable(conf, tableName);
Paso 3: Instantiatethe PutClass
Para insertar datos en una tabla HBase, el add() mtodo y sus variantes. Este mtodo pertenece a poner, por lo tanto crear una instancia de la clase que. Esta clase requiere el nombre de la fila que desea insertar los datos en formato de cadena. Puede crear instancias de la put clase que tal como se muestra a continuacin.
Put p = new Put(Bytes.toBytes("row1"));
Paso 4: InsertData
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 los datos en la HBase tabla utilizando el mtodo add() como se muestra a continuacin.
p.add(Bytes.toBytes("coloumn family "), Bytes.toBytes("column
name"),Bytes.toBytes("value"));
Paso 5: Pulse Guardar los datos de la tabla
Despus de insertar las filas necesarias, guardar los cambios mediante la adicin de la instancia para poner el put() mtodo HTable de clase, como se muestra a continuacin.
hTable.put(p);
Paso 6: Cerrar la Instancia HTable
Despus de crear los datos de la tabla HBase, cierre la HTable ejemplo usando el close() mtodo como se muestra a continuacin.
hTable.close();
A continuacin se incluye el programa completo para crear datos en HBase Tabla.
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 InsertData{
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"));
// adding values using add() method
// accepts column family name, qualifier/row name ,value
p.add(Bytes.toBytes("personal"),
Bytes.toBytes("name"),Bytes.toBytes("raju"));
p.add(Bytes.toBytes("personal"),
Bytes.toBytes("city"),Bytes.toBytes("hyderabad"));
p.add(Bytes.toBytes("professional"),Bytes.toBytes("designation"),
Bytes.toBytes("manager"));
p.add(Bytes.toBytes("professional"),Bytes.toBytes("salary"),
Bytes.toBytes("50000"));
// Saving the put Instance to the HTable.
hTable.put(p);
System.out.println("data inserted");
// closing HTable
hTable.close();
}
}
Compilar y ejecutar el programa como se muestra a continuacin.
$javac InsertData.java $java InsertData
Lo siguiente debe ser el producto:
data inserted