- 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 - Leer Datos
El get comando get y el get() mtodo de HTable clase se utilizan para leer los datos de una tabla en HBase. Usando get, usted puede obtener una fila de datos a la vez. Su sintaxis es la siguiente:
get <table name>,row1
El siguiente ejemplo muestra cmo utilizar el comando get. Nos captura la primera fila de la emp tabla.
hbase(main):012:0> get 'emp', '1' COLUMN CELL personal : city timestamp=1417521848375, value=hyderabad personal : name timestamp=1417521785385, value=ramu professional: designation timestamp=1417521885277, value=manager professional: salary timestamp=1417521903862, value=50000 4 row(s) in 0.0270 seconds
Leer una columna especfica
A continuacin se muestra la sintaxis para leer una columna especfica mediante el get mtodo.
hbase>get 'table name', rowid, {COLUMN => column family:column name }
A continuacin se muestra el ejemplo, para leer una columna especfica de HBase tabla.
hbase(main):015:0> get 'emp', 'row1', {COLUMN=>'personal:name'}
COLUMN CELL
personal:name timestamp=1418035791555, value=raju
1 row(s) in 0.0080 seconds
Lectura de datos utilizando la API de Java
Para leer los datos de una tabla HBase, utilice el get() mtodo, de la clase HTable. Este mtodo requiere una instancia de la get clase. Siga los pasos que se indican a continuacin para recuperar los datos de la tabla HBase.
Paso 1: Crear una instancia de la clase de configuracin
HBase Configurationclase 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: Crear una instancia de la clase HTable
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: Obtener una instancia de la clase
Se pueden recuperar datos de la HBase tabla utilizando el get() mtodo, de la HTable clase. Este mtodo extrae una celda de una fila determinada. Se requiere un Get objeto de clase como parmetro. Crear tal y como se muestra a continuacin.
Get get = new Get(toBytes("row1"));
Paso 4: leer los datos
Al recuperar los datos, se puede obtener una sola fila de id, o conseguir un conjunto de filas de un conjunto de identificadores de fila, o escanear una tabla entera o un subconjunto de filas.
Puede recuperar una HBase datos de la tabla utilizando el mtodo add variantes en Get clase.
Para obtener una columna especfica de una determinada columna familia, utilice el mtodo siguiente.
get.addFamily(personal)
Para obtener todas las columnas de una columna especfica familia, utilice el mtodo siguiente.
get.addColumn(personal, name)
Paso 5: Obtener el Resultado
Obtener el resultado de una Get instancia de la clase al mtodo get de la HTable clase . Este mtodo devuelve el resultado objeto de la clase, que tiene el resultado. A continuacin se muestra el uso del get() mtodo.
Result result = table.get(g);
Paso 6: Lectura de valores del resultado Ejemplo
LaResult clase proporciona el getValue() para leer los valores de la instancia. Usar como se muestra a continuacin para leer los valores de los resultados.
byte [] value =
result.getValue(Bytes.toBytes("personal"),Bytes.toBytes("name"));
byte [] value1 =
result.getValue(Bytes.toBytes("personal"),Bytes.toBytes("city"));
A continuacin se incluye el programa completo para leer los valores de una tabla HBase
import java.io.IOException;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.hbase.HBaseConfiguration;
import org.apache.hadoop.hbase.client.Get;
import org.apache.hadoop.hbase.client.HTable;
import org.apache.hadoop.hbase.client.Result;
import org.apache.hadoop.hbase.util.Bytes;
public class RetriveData
{
public static void main(String[] args) throws IOException, Exception
{
// Instantiating Configuration class
Configuration config = HBaseConfiguration.create();
// Instantiating HTable class
HTable table = new HTable(config, "emp");
// Instantiating Get class
Get g = new Get(Bytes.toBytes("row1"));
// Reading the data
Result result = table.get(g);
// Reading values from Result class object
byte [] value = result.getValue(Bytes.toBytes("personal"),Bytes.toBytes("name"));
byte [] value1 = result.getValue(Bytes.toBytes("personal"),Bytes.toBytes("city"));
// Printing the values
String name = Bytes.toString(value);
String city = Bytes.toString(value1);
System.out.println("name: " + name + " city: " + city);
}
}
Compilar y ejecutar el programa como se muestra a continuacin.
$javac RetriveData.java $java RetriveData
Lo siguiente debe ser el producto:
name: Raju city: Delhi