HBase Crear tabla con Java Ejemplo de API y shell
⚡ Resumen inteligente
HBase almacena datos en tablas, y puede crear y manejar esas tablas de dos maneras: a través de la Java API con HTableDescripto bien HBaseAdmin, o directamente en la consola de HBase usando el comando create.

Cómo crear una tabla en HBase con Java API
En HBase, las tablas se pueden crear de dos maneras: a través de la Java API y a través del shell de HBase. Esta sección cubre la Java API, que permite a una aplicación crear tablas y cargar datos mediante programación como parte de una tarea más amplia.
A través de la Java API, podemos crear tablas en HBase y también cargar datos en tablas usando Java codificación. Las dos cosas que configuramos aquí son:
- Establecer una conexión con HBase a través de Java API.
- El uso de Eclipse por la Java codificación, depuración y pruebas.
A continuación se muestran los pasos para crear tablas en HBase a través de Java API.
Paso 1) Crea un Java Proyecto en Eclipse
En este paso, vamos a crear un Java proyecto en Eclipse para la conexión HBase, denominada “HbaseConnection”.
The New Java El cuadro de diálogo del proyecto que aparece a continuación muestra cómo se está configurando el proyecto "HbaseConnection":
Si observamos la captura de pantalla anterior:
- Introduzca el nombre del proyecto en este recuadro. En nuestro caso, el nombre del proyecto es “HbaseConnection”.
- Marque esta casilla para establecer la ubicación predeterminada donde se guardará la conexión. En este caso, la ruta es /home/hduser/work/HbaseConnection.
- Marque la casilla de la Java ambiente aquí. En este caso JavaSE-1.7 es el Java edición.
- Seleccione la opción donde desea guardar el archivo. En nuestro caso, seleccionamos la segunda opción: "Crear una carpeta separada para archivos fuente y de clase".
- Haga clic en el botón Finalizar, que crea el proyecto “HbaseConnection” en Eclipse y abre el Eclipse
Paso 2) Configure la ruta de compilación en Eclipse
En la Eclipse Página de inicio, siga estos pasos para abrir la configuración de la ruta de compilación:
Right click on project -> Select Build Path -> Configure build path
La siguiente captura de pantalla muestra el menú contextual que se utiliza para abrir la configuración de la ruta de compilación:
Según la captura de pantalla anterior:
- Haz clic con el botón derecho en un proyecto.
- Seleccione la ruta de compilación.
- Seleccione Configurar ruta de compilación.
Tras hacer clic en Configurar ruta de compilación, se abre otra ventana, como se muestra en la captura de pantalla a continuación. En la pestaña Bibliotecas es donde se añaden los archivos JAR de HBase y Hadoop al proyecto:
En este paso, agregamos los JAR de HBase relevantes al Java proyecto tal como se muestra en la captura de pantalla.
- Archivos JAR importantes que deben agregarse: hbase-0.94.8.jar y hadoop-core-1.1.2.jar.
- Dirígete a la pestaña Bibliotecas.
- Pulse la opción Agregar JAR externos.
- Seleccione los archivos JAR importantes necesarios.
- Presione el botón Finalizar para agregar estos archivos al “src” de la Java proyecto dentro de Bibliotecas.
Una vez añadidos los archivos JAR, aparecerán en la ubicación "src" del proyecto, como se muestra a continuación:
Todos los archivos JAR que forman parte del proyecto ya están listos para su uso con el ecosistema Hadoop.
Paso 3) Establecer la conexión HBase
En este paso, utilizando HBaseConnection.java, se establece la conexión HBase a través de Java codificación.
En la Eclipse menú superior, ejecutar una Java programa como se muestra a continuación: Ejecutar -> Ejecutar como -> Java Aplicación. El menú que aparece a continuación muestra el programa que se está iniciando:
- Seleccione Ejecutar.
- Seleccione Ejecutar como Java Solicitud.
- Este código establece una conexión con HBase a través de Java API.
- Tras ejecutar este código, se crea la tabla “guru99” en HBase con dos familias de columnas llamadas “education” y “projects”. Actualmente, solo se crea el esquema vacío en HBase.
El fragmento de código que aparece a continuación resalta la tabla HTable.Descripto bien, y las llamadas a addFamily que construyen el esquema de la tabla:
En la captura de pantalla anterior, estamos realizando las siguientes funciones:
- Usando HTableDescripto bien, podemos crear la tabla “guru99” en HBase.
- Utilizando el método addFamily, añadimos “education” y “projects” como familias de columnas a la tabla “guru99”.
El siguiente código establecerá una conexión con HBase y creará la tabla “guru99” con dos familias de columnas. Coloque este código debajo del documento HBaseConnection.java:
// Place this code inside Hbase connection import java.io.IOException; import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.hbase.HBaseConfiguration; import org.apache.hadoop.hbase.HColumnDescriptor; import org.apache.hadoop.hbase.HTableDescriptor; Import org.apache.hadoop.hbase.client.HBaseAdmin; public class HBaseConnection { public static void main(String[] args) throws IOException { HBaseConfigurationhc = new HBaseConfiguration(new Configuration()); HTableDescriptorht = new HTableDescriptor("guru99"); ht.addFamily( new HColumnDescriptor("education")); ht.addFamily( new HColumnDescriptor("projects")); System.out.println( "connecting" ); HBaseAdminhba = new HBaseAdmin( hc ); System.out.println( "Creating Table" ); hba.createTable( ht ); System.out.println("Done......"); } }
Este es el código requerido que debe colocar en HBaseConnection.java antes de ejecutar el Java .
Tras ejecutar este programa, se establece una conexión con HBase y, a su vez, se crea una tabla con nombres de columna.
- El nombre de la tabla es “guru99”.
- Las familias de columnas son “educación” y “proyectos”.
Paso 4) Verifique la tabla creada en HBase
Podemos comprobar si la tabla “guru99” se creó con dos familias de columnas en HBase utilizando el modo de consola de HBase con el comando “list”. El comando “list” proporciona información sobre todas las tablas creadas en HBase.
Al ejecutar el comando de lista en la consola de HBase, se confirma la nueva tabla, como se muestra a continuación:
- Code Comprobando en la consola de HBase ejecutando el comando “list”.
- Si ejecutamos el comando “list”, se mostrarán las tablas creadas en HBase. En nuestro caso, podemos ver que se ha creado la tabla “guru99”.
HBase Crear tabla con Shell
Además de la Java Mediante la API, puede crear una tabla directamente desde la consola de HBase, que es la forma más rápida de configurar una tabla para realizar pruebas rápidas. La sintaxis para crear una tabla en HBase mediante la consola es:
Syntax: create <tablename>, <columnfamilyname>
Ejemplo:-
hbase(main):001:0> create 'education' ,'guru99' 0 rows(s) in 0.312 seconds =>Hbase::Table – education
El ejemplo anterior explica cómo crear una tabla en HBase con el nombre especificado según las características de cada familia de columnas. Además, también podemos pasarle atributos específicos de la tabla.
create 'guru99', {NAME=>'Edu', VERSIONS=>213423443}
Aquí, el bloque {NAME=>'Edu', VERSIONS=>…} define una familia de columnas llamada “Edu” y el número de versiones de celda que conserva. El número elevado es solo un ejemplo; en la práctica, VERSIONS es un valor pequeño, como 3 o 5.
Enumerar, describir y verificar las tablas de HBase.
Crear una tabla es solo la primera parte del manejo de tablas en HBase. Una vez que existe la tabla "guru99", algunos comandos generales le permiten inspeccionarla y confirmar su estado antes de leer, escribir o modificar datos. Puede ejecutar todos ellos desde el Caparazón HBase.
El comando de lista devuelve todas las tablas de usuario en HBase:
hbase> list
El comando describe muestra la estructura de una tabla, incluyendo sus familias de columnas y si está habilitada actualmente:
hbase> describe 'guru99'
El comando exists comprueba si existe una tabla, e is_enabled informa si la tabla puede aceptar escrituras:
hbase> exists 'guru99' hbase> is_enabled 'guru99'
Estas comprobaciones de solo lectura se pueden ejecutar de forma segura en cualquier momento. Son la manera más rápida de confirmar que una tabla se creó correctamente y de revisar sus familias de columnas antes de cargar los datos.
Modificar una tabla de HBase
El esquema de una tabla de HBase no es fijo tras su creación. El comando `alter` modifica las familias de columnas y los atributos del ámbito de la tabla sin recrearla. Dependiendo de su versión de HBase, es posible que deba deshabilitar la tabla primero, luego ejecutar `alter` y volver a habilitarla.
Para agregar una nueva familia de columnas a la tabla “guru99”:
hbase> alter 'guru99', {NAME => 'contact'}
Para configurar cuántas versiones conserva una familia de columnas:
hbase> alter 'guru99', NAME => 'education', VERSIONS => 5
Para eliminar una familia de columnas de la tabla:
hbase> alter 'guru99', {NAME => 'contact', METHOD => 'delete'}
También puede cambiar los atributos del ámbito de la tabla. Por ejemplo, marcar la tabla como de solo lectura o establecer el tamaño máximo del archivo de región en 128 MB:
hbase> alter 'guru99', READONLY hbase> alter 'guru99', MAX_FILESIZE => '134217728'
Dado que la modificación reescribe el esquema, planifique los cambios cuidadosamente en una tabla de producción y confirme el resultado posteriormente con la función describe.
Deshabilitar, habilitar y eliminar tablas de HBase
Para eliminar una tabla o aplicar ciertos cambios, HBase requiere que primero la desactives. Al desactivarla, la tabla queda fuera de línea, impidiendo que cualquier cliente pueda leerla o escribir en ella, lo que garantiza la seguridad de los cambios estructurales.
Deshabilita una tabla y comprueba su estado con is_disabled:
hbase> disable 'guru99' hbase> is_disabled 'guru99'
Vuelva a habilitar la tabla para reanudar las operaciones de lectura y escritura:
hbase> enable 'guru99'
Una tabla debe estar deshabilitada antes de poder ser eliminada. Eliminarping Elimina la tabla y todos sus datos de forma permanente, así que úselo con cuidado:
hbase> disable 'guru99' hbase> drop 'guru99'
Para eliminar varias tablas a la vez, drop_all elimina todas las tablas cuyo nombre coincide con una expresión regular. Juntos, create, alter, disable, enable y drop cubren el ciclo de vida completo de manejo de datos en tablas de HBase.






