HBase es una base de datos distribuida no relacional de código abierto inspirada en Bigtable de Google y escrita en Java . Se desarrolla como parte de Apache Software Foundation 's Apache Hadoop proyecto y se ejecuta en la parte superior de HDFS (Hadoop Distributed File System) o Alluxio , proporcionando Bigtable-como capacidades para Hadoop. Es decir, que proporciona una tolerancia a fallos manera de almacenar grandes cantidades de escasa datos (pequeñas cantidades de información capturadas dentro de una gran colección de datos vacíos o sin importancia, como encontrar los 50 elementos más grandes en un grupo de 2 mil millones de registros, o encontrar los elementos distintos de cero que representan menos del 0,1% de una gran colección).
Autor (es) original (es) | Set de poder |
---|---|
Desarrollador (es) | Fundación de software Apache |
Versión inicial | 28 de marzo de 2008 |
Lanzamiento estable | 2.3.4 / 22 de enero de 2021 [1] |
Versión de vista previa | 2.4.2 / 17 de marzo de 2021 [1] |
Repositorio | Repositorio HBase |
Escrito en | Java |
Sistema operativo | Multiplataforma |
Tipo | Base de datos distribuida |
Licencia | Licencia Apache 2.0 |
Sitio web | hbase |
HBase presenta compresión, operación en memoria y filtros Bloom por columna, como se describe en el documento original de Bigtable. [2] Las tablas en HBase pueden servir como entrada y salida para los trabajos de MapReduce que se ejecutan en Hadoop, y se puede acceder a ellas a través de la API de Java, pero también a través de las API de puerta de enlace REST , Avro o Thrift . HBase es un almacén de columnas anchas y ha sido ampliamente adoptado debido a su linaje con Hadoop y HDFS. HBase se ejecuta sobre HDFS y es adecuado para operaciones de lectura y escritura más rápidas en grandes conjuntos de datos con alto rendimiento y baja latencia de entrada / salida.
HBase no es un reemplazo directo de una base de datos SQL clásica ; sin embargo, el proyecto Apache Phoenix proporciona una capa SQL para HBase y un controlador JDBC que se puede integrar con varias aplicaciones de análisis e inteligencia empresarial . El proyecto Apache Trafodion proporciona un motor de consulta SQL con controladores ODBC y JDBC y protección de transacciones ACID distribuida en varias declaraciones, tablas y filas que utilizan HBase como motor de almacenamiento.
HBase ahora ofrece varios sitios web basados en datos [3], pero la plataforma de mensajería de Facebook migró recientemente de HBase a MyRocks . [4] [5] A diferencia de las bases de datos relacionales y tradicionales, HBase no admite secuencias de comandos SQL; en cambio, el equivalente está escrito en Java, empleando similitudes con una aplicación MapReduce.
En el lenguaje del teorema CAP de Eric Brewer , HBase es un sistema de tipo CP.
Historia
Apache HBase comenzó como un proyecto de la empresa Powerset debido a la necesidad de procesar cantidades masivas de datos para fines de búsqueda en lenguaje natural . Desde 2010 es un proyecto Apache de primer nivel.
Facebook eligió implementar su nueva plataforma de mensajería usando HBase en noviembre de 2010, pero se mudó de HBase en 2018. [4]
La serie 2.2.z es la línea de lanzamiento estable actual, reemplaza las líneas de lanzamiento anteriores.
Casos de uso e implementaciones de producción
Empresas que usan HBase
La siguiente es una lista de empresas notables que han usado o están usando HBase:
- 23andMe
- Adobe
- Airbnb utiliza HBase como parte de su marco de cálculo de flujo en tiempo real AirStream [6]
- Grupo Alibaba
- Amadeus IT Group , como su principal base de datos de almacenamiento a largo plazo.
- Bloomberg , para el almacenamiento de datos de series de tiempo
- Facebook utilizó HBase para su plataforma de mensajería entre 2010 y 2018
- Flipkart utiliza HBase para su índice de búsqueda [7] y los conocimientos del usuario. [8]
- Ráfaga
- HubSpot
- Imgur utiliza HBase para impulsar su sistema de notificaciones [9] [10]
- Kakao [11]
- Meesho
- Netflix [12]
- Pinterest [13]
- Préstamos Quicken
- Rica relevancia
- Combustible para cohetes
- Salesforce.com [14]
- Sears
- Sophos , para algunos de sus sistemas de back-end.
- Spotify utiliza HBase como base para trabajos de aprendizaje automático y Hadoop. [15]
- Tuenti utiliza HBase para su plataforma de mensajería. [16] [17]
- Xiaomi
- Yahoo!
Ver también
- NoSQL
- Tienda de columna ancha
- Mesa grande
- Apache Cassandra
- Oracle NOSQL
- Hipertabla
- Apache Accumulo
- MongoDB
- Proyecto Voldemort
- Riak
- Sqoop
- Elasticsearch
- Apache Phoenix
Referencias
- ^ a b "Apache HBase - Descargas de Apache HBase" . Consultado el 21 de marzo de 2021 .
- ^ Chang, et al. (2006). Bigtable: un sistema de almacenamiento distribuido para datos estructurados
- ^ "Apache HBase - Desarrollado por Apache HBase ™" . hbase.apache.org . Consultado el 8 de abril de 2018 .
- ^ a b "Migración del almacenamiento de Messenger para optimizar el rendimiento" . www.facebook.com . Consultado el 5 de julio de 2018 .
- ^ Facebook: Por qué nuestras comunicaciones de 'próxima generación' abandonaron MySQL. Recuperado: 17 de diciembre de 2010
- ^ HBaseCon (2 de agosto de 2016). "Apache HBase en Airbnb" . slideshare.net . Consultado el 8 de abril de 2018 .
- ^ "Indexación de búsqueda casi en tiempo real" .
- ^ "¿La localidad de datos siempre está lista para usar en Hadoop?" .
- ^ "Por qué Imgur abandonó MySQL a favor de HBase - Base de datos DZone" . dzone.com . Consultado el 8 de abril de 2018 .
- ^ "Tech Tuesday: Imgur Notifications: From MySQL to HBase - The Imgur Blog" . blog.imgur.com . Consultado el 8 de abril de 2018 .
- ^ Doyung Yoon. "S2Graph: una base de datos de gráficos a gran escala con HBase" .
- ^ Parque Cheolsoo y Ashwin Shankar. "Netflix: Integración de Spark a escala de petabytes" .
- ^ Engineering, Pinterest (30 de marzo de 2018). "Mejorando la eficiencia de la copia de seguridad de HBase en Pinterest" . Medio . Consultado el 14 de abril de 2020 .
- ^ "Hbase en Salesforce.com" .
- ^ Josh Baer. "Cómo Apache impulsa las recomendaciones musicales de Spotify" .
- ^ "Tuenti Group Chat: Simple, pero complejo" .
- ^ "Tuenti Asyncthrift" .
Bibliografía
- Dimiduk, Nick; Khurana, Amandeep (28 de noviembre de 2012). HBase en acción (1ª ed.). Publicaciones Manning . pag. 350. ISBN 978-1617290527.
- George, Lars (20 de septiembre de 2011). HBase: La guía definitiva (1ª ed.). O'Reilly Media . pag. 556. ISBN 978-1449396107.
- Jiang, Yifeng (16 de agosto de 2012). Libro de recetas de administración de HBase (1ª ed.). Packt Publishing . pag. 332. ISBN 978-1849517140.
enlaces externos
- Página de inicio oficial de Apache HBase
- Descripción general de la arquitectura de HBase