¿Cuáles son los escenarios comunes para usar directivas de actualización de tablas?

En esta sección se describen algunos escenarios conocidos que usan directivas de actualización. Considere la posibilidad de adoptar estos escenarios cuando sus circunstancias sean similares.

En este artículo, obtendrá información sobre los siguientes escenarios comunes:

Enriquecimiento de datos de arquitectura de Medallion

Las directivas de actualización de las tablas proporcionan una manera eficaz de aplicar transformaciones rápidas y son compatibles con la arquitectura de la casa de lago medallion en Fabric.

En la arquitectura del medallón, cuando los datos sin procesar llegan a una tabla de aterrizaje (capa de bronce), se puede usar una directiva de actualización para aplicar transformaciones iniciales y guardar la salida enriquecida en una tabla de capas de plata. Este proceso puede en cascada, donde los datos de la tabla de capas de plata pueden desencadenar otra directiva de actualización para refinar aún más los datos e hidratar una tabla de capas de oro.

En el diagrama siguiente se muestra un ejemplo de una directiva de actualización de enriquecimiento de datos denominada Get_Values. Los datos enriquecidos se generan en una tabla de capas de plata, que incluye un valor de marca de tiempo calculado y valores de búsqueda basados en los datos sin procesar.

Diagrama que muestra el escenario de enriquecimiento de datos de arquitectura de medallion mediante la solución de directivas de actualización.

Enrutamiento de datos

Un caso especial de enriquecimiento de datos se produce cuando un elemento de datos sin procesar contiene datos que se deben enrutar a una tabla diferente basada en uno o varios atributos de los propios datos.

Considere un ejemplo que usa los mismos datos base que el escenario anterior, pero esta vez hay tres mensajes. El primer mensaje es un mensaje de telemetría del dispositivo, el segundo es un mensaje de alarma del dispositivo y el tercer mensaje es un error.

Para controlar este escenario, se usan tres directivas de actualización. La directiva de actualización de Get_Telemetry filtra el mensaje de telemetría del dispositivo, enriquece los datos y lo guarda en la tabla Device_Telemetry . Del mismo modo, la directiva de actualización de Get_Alarms guarda los datos en la tabla Device_Alarms . Por último, la directiva de actualización de Log_Error envía mensajes desconocidos a la tabla Error_Log , lo que permite a los operadores detectar mensajes con formato incorrecto o una evolución inesperada del esquema.

En el diagrama siguiente se muestra el ejemplo con las tres directivas de actualización.

Diagrama que muestra el escenario de enrutamiento de datos mediante la solución de directivas de actualización.

Optimización de los modelos de datos

Las directivas de actualización de las tablas se crean para la velocidad. Las tablas normalmente se ajustan al diseño de esquema star, que admite el desarrollo de modelos de datos optimizados para el rendimiento y la facilidad de uso.

La consulta de tablas en un esquema de star a menudo requiere combinar tablas. Sin embargo, las combinaciones de tabla pueden provocar problemas de rendimiento, especialmente cuando se consultan grandes volúmenes de datos. Para mejorar el rendimiento de las consultas, puede aplanar el modelo almacenando datos desnormalizados en el momento de la ingesta.

La combinación de tablas en el momento de la ingesta tiene la ventaja adicional de operar en un pequeño lote de datos, lo que da lugar a un costo computacional reducido de la combinación. Este enfoque puede mejorar enormemente el rendimiento de las consultas de bajada.

Por ejemplo, puede enriquecer los datos de telemetría sin procesar de un dispositivo buscando valores de una tabla de dimensiones. Una directiva de actualización puede realizar la búsqueda en el tiempo de ingesta y guardar la salida en una tabla desnormalizada. Además, puede ampliar la salida con datos procedentes de una tabla de datos de referencia.

En el diagrama siguiente se muestra el ejemplo, que consta de una directiva de actualización denominada Enrich_Device_Data. Extiende los datos de salida con datos procedentes de la tabla de datos de referencia del sitio .

Diagrama que muestra el escenario de modelos de datos optimizados mediante la solución de directivas de actualización.