Translate

martes, 27 de noviembre de 2018

Comparando HBase con una base de datos relacional



Base de datos relacional
Apache HBase
Escala de forma horizontal
Escala de forma vertical
Usa SQL para leer registros en la tabla
Usa una API y Mapreduce para resolver las consultas
Esta organizada en tablas donde cada fila tienen el mismo numero de columnas que todas las filas de la tabla.
Esta organizada en tablas pero cada fila puede tener un numero variable de columnas.
La cantidad de datos que se pueden guardar dependen de la capacidad de un server
La cantidad de datos que se pueden guardar dependen de la capacidad del cluster de servidores
Tiene un esquema restrictivo
Tiene un esquema flexible
Soporta ACID, es decir soporta transacciones
No soporta ACID, no soporta transacciones
Es ideal para datos estructurados
Es ideal para datos estructurados y no estructurados.
Centralizada
Distribuida
Soporta joins
No soporta joins
Soporta integridad referencial
No soporta integridad referencial





Por lo visto son cosas totalmente diferentes, pensadas para casos de uso diferentes. Por lo tanto lo peor que podemos hacer es tomar un problema que se resuelve con una base de datos relacional y tratar de utilizar HBase.