domingo, 24 de febrero de 2019

Relacional vs. HBase Schemas


No hay una asignación uno a uno de las bases de datos relacionales a HBase. En el diseño relacional, el enfoque y el esfuerzo están alrededor de describir la entidad y su interacción con otras entidades.

Pero con HBase, tiene un diseño de esquema de "consulta primero"; todas las posibles consultas deben identificarse primero, y el modelo de esquema debe diseñarse en consecuencia. Debes diseñar tu esquema HBase para aprovechar las fortalezas de HBase. Piense en sus patrones de acceso y diseñe su esquema para que los datos que se leen juntos se almacenen juntos. Recuerde que HBase está diseñado para agrupación. Por lo tanto tenemos que tener en cuenta estos 3 puntos a la hora de diseñar una estema hbase:


  • Los datos distribuidos se almacenan y se accede juntos.
  • Se centra en las consultas, así que concéntrese en cómo se leen los datos
  • Diseño para las consultas.


En una base de datos relacional, la normalización de el esquema tiene como beneficios:


  • No tiene que actualizar varias copias cuando se produce una actualización, lo que hace que las escrituras sean más rápidas.
  • Reduce el tamaño de almacenamiento al tener una sola copia en lugar de varias copias.
  • Sin embargo, esto provoca uniones o joins. Como los datos deben recuperarse de más tablas, las consultas pueden tardar más tiempo.

En un almacén de datos des-normalizado, almacena en una tabla lo que serían múltiples índices en un mundo relacional. La des-normalización puede considerarse como un reemplazo para las uniones. A menudo, con HBase, des-normaliza o duplica datos para que los datos se accedan y almacenen juntos.

Este es un ejemplo de desnormalización en HBase, si sus tablas existen en una relación de uno a varios, es posible modelarlo en HBase como una sola fila. Esto hace que las lecturas sean mucho más rápidas que unir tablas.

La clave de fila corresponde al ID de entidad principal, el Id. para HBase puede ser  una familia de columnas para los datos. Este tipo de diseño de esquema es apropiado cuando la única forma de acceder a las entidades secundarias es a través de la entidad principal.



No hay comentarios.:

Publicar un comentario