Una guía para construir modelos de datos en tiempo real con alto rendimiento

Guía para modelos de datos en tiempo real de alto rendimiento

Foto de Lukas Blazek en Unsplash

Los datos se han convertido en una herramienta crítica para la toma de decisiones. Para que sean accionables, los datos deben ser limpiados, transformados y modelados.

Este proceso a menudo forma parte de un pipeline ELT que se ejecuta con una frecuencia determinada, por ejemplo, diariamente.

Por otro lado, para ajustar y tomar decisiones rápidas, a veces los interesados necesitan acceso a los datos más recientes para poder reaccionar rápidamente.

Por ejemplo, si hay una gran caída en el número de usuarios de un sitio web, necesitan ser conscientes de este problema rápidamente y recibir la información necesaria para entender el problema.

La primera vez que me pidieron construir un panel de control con datos en tiempo real, lo conecté directamente a la tabla sin procesar que era en tiempo real y proporcionaba algunos KPI simples como el número de usuarios y los fallos. Para gráficos mensuales y análisis más profundos, creé otro panel de control conectado a nuestro modelo de datos, que se actualizaba diariamente.

Esta estrategia no era óptima: estaba duplicando la lógica entre el almacén de datos y la herramienta de BI, por lo que era más difícil de mantener. Además, el panel de control en tiempo real solo podía funcionar bien con unos pocos días de datos, por lo que los interesados tenían que cambiar al histórico para consultar fechas anteriores.

Sabía que teníamos que hacer algo al respecto. Necesitábamos modelos de datos en tiempo real sin comprometer el rendimiento.

En este artículo, exploraremos diferentes soluciones para construir modelos en tiempo real y sus ventajas y desventajas.

Vistas

Una vista SQL es una tabla virtual que contiene el resultado de una consulta. A diferencia de las tablas, las vistas no almacenan datos. Se definen mediante una consulta que se ejecuta cada vez que alguien consulta la vista.

Aquí tienes un ejemplo de definición de una vista:

CREATE VIEW orders_aggregated AS (  SELECT     order_date,     COUNT(DISTINCT order_id) AS orders,    COUNT(DISTINCT customer_id) AS customers  FROM orders  GROUP BY order_date )

Incluso cuando se agregan nuevas filas a la tabla, las vistas se mantienen actualizadas. Sin embargo, si la tabla es grande, las vistas pueden volverse muy lentas ya que no se almacenan datos.

Deberían ser la primera opción a probar si estás trabajando en un proyecto pequeño.

We will continue to update Zepes; if you have any questions or suggestions, please contact us!

Share:

Was this article helpful?

93 out of 132 found this helpful

Discover more

Inteligencia Artificial

Investigadores de Inception, MBZUAI y Cerebras lanzan en código abierto 'Jais' el modelo de lenguaje árabe más avanzado del mundo

Los grandes modelos de lenguaje como GPT-3 y su impacto en varios aspectos de la sociedad son objeto de un gran inter...

Inteligencia Artificial

La función de detección de suplantación de identidad protege a las marcas y personalidades de las cuentas falsas en las redes sociales

Una empresa canadiense ha incorporado una función de protección contra la suplantación de identidad en su plataforma ...

Inteligencia Artificial

Una inmersión profunda en las implicaciones de seguridad de la personalización y afinación de grandes modelos de lenguaje.

En un esfuerzo colaborativo revolucionario, IBM Research, Princeton University y Virginia Tech han arrojado luz sobre...

Inteligencia Artificial

Alibaba libera el modelo de IA de código abierto para competir con Meta y potenciar a los desarrolladores

En un desarrollo significativo, Alibaba, el gigante chino del comercio electrónico, ha decidido abrir su potente mode...

Inteligencia Artificial

El Bucle de Retroalimentación de la IA Manteniendo la Calidad de Producción del Modelo en la Era del Contenido Generado por IA

Explora cómo el bucle de retroalimentación de IA puede ayudar a mantener la calidad del modelo, mejorar la eficiencia...