¿Qué es Apache HBase?

¿Qué es HBase?

HBase es un sistema de gestión de bases de datos no relacionales orientado a columnas que se ejecuta sobre Hadoop Distributed File System (HDFS), un componente principal de Apache Hadoop.

HBase proporciona una forma tolerante a fallos de almacenamiento de conjuntos de datos dispersos, que son comunes en muchos casos de uso de big data. Es ideal para el procesamiento de datos en tiempo real o para el acceso aleatorio de lectura/escritura a grandes volúmenes de datos.

A diferencia de los sistemas de bases de datos relacionales, HBase no admite un lenguaje de consulta estructurado como SQL; de hecho, HBase no es un almacén de datos relacional. Las aplicaciones HBase están escritas en Java de forma muy parecida a una aplicación típica de Apache MapReduce. HBase admite la escritura de aplicaciones en Apache Avro, REST y Thrift.

Un sistema HBase está diseñado para escalar linealmente. Se compone de un conjunto de tablas estándar con filas y columnas, muy parecido a una base de datos tradicional. Cada tabla debe tener un elemento definido como clave principal, y todos los intentos de acceso a las tablas HBase deben utilizar esta clave principal.

Avro, como componente, admite un amplio conjunto de tipos de datos primitivos que incluyen: datos numéricos, binarios y cadenas; y una serie de tipos complejos que incluyen matrices, mapas, enumeraciones y registros. También se puede definir un orden de clasificación para los datos.

HBase confía en ZooKeeper para una coordinación de alto rendimiento. ZooKeeper está integrado en HBase, pero si está ejecutando un clúster de producción, se sugiere que tenga un clúster ZooKeeper dedicado que esté integrado con su clúster HBase.

HBase funciona bien con Hive, un motor de consulta para el procesamiento por lotes de big data, para permitir aplicaciones de big data tolerantes a fallos.

Un ejemplo de HBase

Una columna de HBase representa un atributo de un objeto; si la tabla almacena registros de diagnóstico de servidores en su entorno, cada fila podría ser un registro y una columna típica podría ser la marca de tiempo de cuándo se escribió el registro o el nombre del servidor donde se originó el registro.

HBase permite agrupar muchos atributos en familias de columnas, de modo que los elementos de una familia de columnas se almacenan todos juntos. Esto difiere de una base de datos relacional orientada a filas, donde todas las columnas de una fila determinada se almacenan juntas. Con HBase, debe predefinir el esquema de tabla y especificar las familias de columnas. Sin embargo, se pueden agregar nuevas columnas a las familias en cualquier momento, lo que hace que el esquema sea flexible y pueda adaptarse a los requisitos cambiantes de la aplicación.

Al igual que HDFS cuenta con un NameNode y nodos esclavos, y MapReduce con un JobTracker y nodos esclavos TaskTracker, HBase se basa en conceptos similares. En HBase, un nodo maestro gestiona el clúster, mientras que los servidores de región almacenan partes de las tablas y procesan los datos. Del mismo modo que HDFS plantea algunas preocupaciones a nivel empresarial debido a la disponibilidad del NameNode, HBase también es vulnerable a la pérdida de su nodo maestro.

AI Academy

¿Es la gestión de datos el secreto de la IA generativa?

Explore por qué los datos de alta calidad son esenciales para el uso satisfactorio de la IA generativa.

Representación en 3D de una espiral de varios iconos alineados, como una cámara, un potenciómetro de volumen y un portapapeles
Soluciones relacionadas
IBM StreamSets

Cree y gestione canalizaciones de datos de streaming inteligentes a través de una interfaz gráfica intuitiva, y facilite una integración de datos fluida en entornos híbridos y multinube.

Explore StreamSets
IBM watsonx.data

Watsonx.data le permite escalar la analítica y la IA con todos sus datos, residan donde residan, a través de un almacén de datos abierto, híbrido y gobernado.

Descubra watsonx.data
Servicios de asesoramiento sobre datos y análisis

Desbloquee el valor de los datos empresariales con IBM Consulting, y construya una organización impulsada por conocimientos que ofrezca ventajas empresariales.

Descubra los servicios de análisis
De el siguiente paso

Diseñe una estrategia de datos que elimine los silos, reduzca la complejidad y mejore la calidad de los datos para ofrecer experiencias excepcionales a clientes y empleados.

  1. Explore las soluciones de gestión de datos
  2. Descubra watsonx.data