Data Quality en DataWorks ofrece una amplia variedad de plantillas de monitoreo integradas. Este tema describe la lógica de verificación de Data Quality y las plantillas de reglas de monitoreo integradas disponibles.
Plantillas de reglas integradas
Use las plantillas de reglas integradas para configurar rápidamente reglas de monitoreo para una sola tabla o para varias tablas de forma masiva. Para más detalles, consulte Create a monitoring rule for a single table y Create monitoring rules for multiple tables in bulk.
|
Categoría de plantilla |
Nombre de plantilla |
Descripción |
|
Número de filas |
Valor fijo |
Comprueba que el recuento de filas coincida con un valor fijo. |
|
Tabla no vacía |
Comprueba que la tabla contenga como mínimo una fila. |
|
|
Diferencia de 1 día |
Verifica el cambio diario en el recuento de filas. Nota
La línea base es el recuento de filas de la partición del día anterior. El sistema compara el recuento de filas recopilado del día actual con esta línea base y calcula la diferencia. |
|
|
Cambio en el recuento de filas de la tabla desde el ciclo anterior |
La línea base es el recuento de filas de la partición del ciclo de programación anterior. El sistema compara el recuento de filas recopilado del día actual con esta línea base y calcula la diferencia. |
|
|
Volatilidad de 1, 7, 30 días y primer día del mes |
Compara el recuento de filas actual con los recuentos de hace 1 día, 7 días, 30 días y el primer día del mes actual. Calcula la volatilidad y la compara con los umbrales. Activa una alerta si se supera algún umbral. |
|
|
Volatilidad de 1, 7, 30 días |
Compara el recuento de filas actual con los recuentos de hace 1 día, 7 días y 30 días para calcular la volatilidad. Nota
Compara el recuento de filas actual con la muestra del día anterior, la muestra de hace 7 días y la muestra de hace 30 días. Calcula la volatilidad y la compara con los umbrales. Activa una alerta si alguna volatilidad supera el umbral. |
|
|
Volatilidad de 1 día |
Usa el recuento de filas del día anterior como línea base, lo compara con el recuento de filas recopilado del día actual y calcula la volatilidad. Activa una alerta si se supera el umbral. |
|
|
Volatilidad de 30 días |
Usa el recuento de filas de hace 30 días como línea base, lo compara con el recuento de filas recopilado del día actual y calcula la volatilidad. Activa una alerta si se supera el umbral. |
|
|
Volatilidad de 7 días |
Usa el recuento de filas de hace 7 días como línea base, lo compara con el recuento de filas recopilado del día actual y calcula la volatilidad. Activa una alerta si se supera el umbral. |
|
|
Filas de tabla (umbral dinámico inteligente) |
Cuando el umbral dinámico inteligente está habilitado, no es necesario configurar manualmente los umbrales de volatilidad ni los valores esperados. El sistema determina automáticamente umbrales razonables mediante algoritmos inteligentes y activa alertas o bloqueos ante anomalías. |
|
|
Volatilidad promedio de 30 días |
Monitorea las fluctuaciones en el recuento de filas. La línea base es el recuento promedio de filas durante los últimos 30 días, calculado como (suma de recuentos diarios de filas durante 30 días) / 30. |
|
|
Volatilidad promedio de 7 días |
Monitorea las fluctuaciones en el recuento de filas. La línea base es el recuento promedio de filas durante los últimos 7 días, calculado como (suma de recuentos diarios de filas durante 7 días) / 7. |
|
|
Volatilidad del ciclo superior |
Usa el recuento de filas de la partición del ciclo de programación anterior como línea base, lo compara con el recuento de filas recopilado del día actual y calcula la volatilidad. |
|
|
Rango personalizado de filas de tabla |
Permite definir el método de comparación y el rango de umbral para el recuento de filas de la tabla. |
|
|
Tasa de coincidencia de condiciones |
Tasa de coincidencia de condiciones, rango personalizado |
Permite definir el método de comparación y el rango de umbral para la tasa de coincidencia de las condiciones de filtro. |
|
Tamaño de tabla |
Tamaño de tabla, valor fijo |
El tamaño de almacenamiento de la tabla (en bytes). |
|
Tamaño de tabla, diferencia de 1 día (bytes) |
La diferencia en el tamaño de almacenamiento de la tabla en comparación con hace 1 día (en bytes). |
|
|
Tamaño de tabla, diferencia del ciclo superior |
La diferencia en el tamaño de la tabla en comparación con el ciclo de programación anterior (en bytes). |
|
|
Tamaño de tabla, volatilidad de 1 día |
Monitorea las fluctuaciones en el tamaño de la tabla. Compara el tamaño actual de la tabla con la muestra del día anterior, calcula la volatilidad y la compara con los umbrales. Activa una alerta si se supera algún umbral. Por ejemplo, si establece el umbral naranja en 5% y el umbral rojo en 10%, se activa una alerta naranja cuando la volatilidad supera el 5% pero no excede el 10%, y se activa una alerta roja cuando la volatilidad supera el 10%. |
|
|
Tamaño de tabla, volatilidad de 30 días |
Monitorea las fluctuaciones en el tamaño de la tabla. Compara el tamaño actual de la tabla con la muestra de hace 30 días, calcula la volatilidad y la compara con los umbrales. Activa una alerta si se supera algún umbral. |
|
|
Tamaño de tabla, volatilidad de 7 días |
Monitorea las fluctuaciones en el tamaño de la tabla. Compara el tamaño actual de la tabla con la muestra de hace 7 días, calcula la volatilidad y la compara con los umbrales. Activa una alerta si se supera algún umbral. |
|
|
Tamaño de tabla (umbral dinámico inteligente) |
Cuando el umbral dinámico inteligente está habilitado, no es necesario configurar manualmente los umbrales de volatilidad ni los valores esperados. El sistema determina automáticamente umbrales razonables mediante algoritmos inteligentes y activa alertas o bloqueos ante anomalías. |
|
|
Filas con valores nulos |
Recuento de nulos, valor fijo |
Compara el recuento de valores nulos de la columna con un valor fijo. Nota
Los valores nulos se determinan al convertirlos a la expresión SQL |
|
Recuento de nulos igual a 0 |
Comprueba si el recuento de valores nulos es 0. |
|
|
Recuento de nulos / total de filas |
Recuento de nulos / total de filas, valor fijo |
Compara la proporción entre el recuento de nulos y el recuento total de filas con un valor fijo. Nota
El valor fijo es un número decimal. |
|
Validación de formato |
Validación con expresión regular |
Comprueba si los valores de la columna coinciden con una expresión regular. |
|
Validación de formato de fecha |
Comprueba si los valores de la columna coinciden con un formato de fecha. |
|
|
Validación de formato de correo electrónico |
Comprueba si los valores de la columna coinciden con un formato de correo electrónico. |
|
|
Validación de formato de identificación oficial |
Comprueba si los valores de la columna coinciden con un formato de identificación oficial. |
|
|
Validación de formato de número celular |
Comprueba si los valores de la columna coinciden con un formato de número de celular. |
|
|
Validación de formato de moneda |
Comprueba si los valores de la columna coinciden con un formato de moneda. |
|
|
Validación de formato numérico |
Comprueba si los valores de la columna coinciden con un formato numérico. |
|
|
Validación de formato de número telefónico |
Comprueba si los valores de la columna coinciden con un formato de número telefónico. |
|
|
Filas con valores duplicados |
Recuento de duplicados, valor fijo |
El recuento de duplicados es el recuento total de filas menos el recuento de valores distintos. Compara el recuento de duplicados con un valor fijo. |
|
Recuento de duplicados de columna igual a 0 |
Comprueba si el recuento de duplicados de la columna es 0. |
|
|
Valores únicos multicolumna |
Recuento de duplicados multicolumna igual a 0 |
Comprueba si el recuento de duplicados multicolumna es 0. |
|
Recuento de duplicados / total de filas |
Recuento de duplicados / total de filas, valor fijo |
Compara la proporción entre el recuento de duplicados y el recuento total de filas con un valor fijo. |
|
Recuento de valores únicos |
Recuento de valores únicos, valor fijo |
Compara el recuento de valores distintos con un número esperado (verificación de valor fijo). |
|
Recuento de valores únicos, volatilidad de 1, 7, 30 días |
Compara el recuento de valores distintos con muestras de hace 1 día, 7 días y 30 días para calcular la volatilidad. |
|
|
Recuento de valores únicos (umbral dinámico inteligente) |
Cuando el umbral dinámico inteligente está habilitado, no es necesario configurar manualmente los umbrales de volatilidad ni los valores esperados. El sistema determina automáticamente umbrales razonables mediante algoritmos inteligentes y activa alertas o bloqueos ante anomalías. |
|
|
Recuento de valores únicos / total de filas |
Recuento de valores únicos / total de filas, valor fijo |
Compara la proporción entre el recuento de valores únicos y el recuento total de filas con un valor fijo. |
|
Valor mínimo |
Valor mínimo, volatilidad de 1, 7, 30 días |
Obtiene el valor mínimo de la columna y lo compara con muestras de hace 1 día, 7 días y 30 días. Calcula la volatilidad y activa una alerta si se supera algún umbral. |
|
Valor mínimo (umbral dinámico inteligente) |
Cuando el umbral dinámico inteligente está habilitado, no es necesario configurar manualmente los umbrales de volatilidad ni los valores esperados. El sistema determina automáticamente umbrales razonables mediante algoritmos inteligentes y activa alertas o bloqueos ante anomalías. |
|
|
Valor mínimo, volatilidad de 1 día |
Obtiene el valor mínimo de la columna, lo compara con el valor de hace 1 día y calcula la volatilidad respecto al umbral. |
|
|
Valor mínimo, volatilidad del ciclo superior |
Obtiene el valor mínimo de la columna, lo compara con el valor del ciclo de programación anterior y calcula la volatilidad. Activa una alerta si se supera el umbral. |
|
|
Valor mínimo de columna, rango personalizado |
Permite definir el método de comparación y el rango de umbral para el valor mínimo de la columna. |
|
|
Valor máximo |
Valor máximo, volatilidad de 1, 7, 30 días |
Obtiene el valor máximo de la columna y lo compara con muestras de hace 1 día, 7 días y 30 días. Calcula la volatilidad y activa una alerta si se supera algún umbral. |
|
Valor máximo (umbral dinámico inteligente) |
Cuando el umbral dinámico inteligente está habilitado, no es necesario configurar manualmente los umbrales de volatilidad ni los valores esperados. El sistema determina automáticamente umbrales razonables mediante algoritmos inteligentes y activa alertas o bloqueos ante anomalías. |
|
|
Valor máximo, volatilidad de 1 día |
Obtiene el valor máximo de la columna, lo compara con el valor de hace 1 día y calcula la volatilidad respecto al umbral. |
|
|
Valor máximo, volatilidad del ciclo superior |
Obtiene el valor máximo de la columna, lo compara con el valor del ciclo de programación anterior y calcula la volatilidad. Activa una alerta si se supera el umbral. |
|
|
Valor máximo de columna, rango personalizado |
Permite definir el método de comparación y el rango de umbral para el valor máximo de la columna. |
|
|
Valor promedio |
Valor promedio, volatilidad de 1, 7, 30 días |
Obtiene el valor promedio de la columna y lo compara con muestras de hace 1 día, 7 días y 30 días. Calcula la volatilidad y activa una alerta si se supera algún umbral. Nota
El valor promedio de la columna se compara con el valor promedio del día anterior, de hace 7 días y de hace 30 días, respectivamente. |
|
Valor promedio (umbral dinámico inteligente) |
Cuando el umbral dinámico inteligente está habilitado, no es necesario configurar manualmente los umbrales de volatilidad ni los valores esperados. El sistema determina automáticamente umbrales razonables mediante algoritmos inteligentes y activa alertas o bloqueos ante anomalías. |
|
|
Valor promedio, volatilidad de 1 día |
Obtiene el valor promedio de la columna, lo compara con el valor de hace 1 día y calcula la volatilidad respecto al umbral. |
|
|
Valor promedio de columna, rango personalizado |
Permite definir el método de comparación y el rango de umbral para el valor promedio de la columna. |
|
|
Suma |
Suma, volatilidad de 1, 7, 30 días |
Obtiene la suma de la columna y la compara con muestras de hace 1 día, 7 días y 30 días. Calcula la volatilidad y activa una alerta si se supera algún umbral. |
|
Suma (umbral dinámico inteligente) |
Cuando el umbral dinámico inteligente está habilitado, no es necesario configurar manualmente los umbrales de volatilidad ni los valores esperados. El sistema determina automáticamente umbrales razonables mediante algoritmos inteligentes y activa alertas o bloqueos ante anomalías. |
|
|
Suma, volatilidad de 1 día |
Obtiene la suma de la columna, la compara con el valor de hace 1 día y calcula la volatilidad respecto al umbral. |
|
|
Suma, volatilidad del ciclo superior |
Obtiene la suma de la columna, la compara con el valor del ciclo de programación anterior y calcula la volatilidad. Activa una alerta si se supera el umbral. |
|
|
Suma de columna, rango personalizado |
Permite definir el método de comparación y el rango de umbral para la suma de la columna. |
|
|
Valores de enumeración |
Recuento de valores únicos de enumeración no coincidentes, valor fijo |
Compara el recuento de valores distintos de enumeración no coincidentes. |
|
Recuento de filas de enumeración no coincidentes, valor fijo |
El recuento de filas con valores de enumeración no coincidentes en la columna, comparado con un valor fijo especificado. |
|
|
Recuento de filas de enumeración no coincidentes igual a 0 |
Estado normal esperado: el valor fijo y el método de comparación se establecen en = 0. Se activa una alerta siempre que el recuento de filas de enumeración no coincidentes sea > 0. |
|
|
Valores de enumeración, personalizado, valor fijo |
Permite personalizar estadísticas relacionadas con enumeraciones, como recuentos, recuentos de filas, métodos de comparación y umbrales. |
|
|
Valores discretos |
Valor discreto (recuento de grupos por valor), valor fijo |
Después de una operación GROUP BY, el recuento de cada grupo se compara con un valor fijo. |
|
Valor discreto (número de grupos), valor fijo |
Después de una operación GROUP BY, el número de grupos se compara con un valor fijo. |
|
|
Valor discreto (número de grupos) (umbral dinámico inteligente) |
Cuando el umbral dinámico inteligente está habilitado, no es necesario configurar manualmente los umbrales de volatilidad ni los valores esperados. El sistema determina automáticamente umbrales razonables mediante algoritmos inteligentes y activa alertas o bloqueos ante anomalías. |
|
|
Valor discreto (recuento de grupos por valor) (umbral dinámico inteligente) |
Cuando el umbral dinámico inteligente está habilitado, no es necesario configurar manualmente los umbrales de volatilidad ni los valores esperados. El sistema determina automáticamente umbrales razonables mediante algoritmos inteligentes y activa alertas o bloqueos ante anomalías. |
|
|
Valor discreto (número de grupos), volatilidad de 1 día |
Después de una operación GROUP BY, el número de grupos se compara con la muestra de hace 1 día para calcular la volatilidad. |
|
|
Valor discreto (número de grupos y recuento de grupos por valor), volatilidad de 1, 7, 30 días |
Después de una operación GROUP BY, el número de grupos y el recuento de cada grupo se comparan con muestras de hace 1 día, 7 días y 30 días para calcular la volatilidad. |
Las plantillas de reglas de tamaño de tabla no son compatibles con tablas EMR.
Descripción del cálculo
Cálculo de volatilidad: La fórmula de volatilidad es (Current value - Baseline value) / Baseline value. Valor actual es el valor real de la métrica en la verificación actual, y Valor de línea base se determina dinámicamente según la plantilla que seleccione. Por ejemplo:
Para las plantillas de volatilidad de N días, la línea base es el valor de la métrica de hace N días para la misma regla.
Para las plantillas de volatilidad promedio de N días, la línea base es el promedio aritmético de los valores de la métrica durante los últimos N días.
Para las plantillas de volatilidad del ciclo superior, la línea base es el valor de la métrica del ciclo de programación anterior.
Lógica de verificación
Data Quality admite tres métodos de verificación: comparación de valor fijo, comparación de volatilidad y umbral dinámico.
|
Método de verificación |
Lógica de verificación |
|
Comparación de valor fijo |
Evalúa la expresión de verificación y devuelve un valor booleano. Se admiten los siguientes operadores de comparación: |
|
Comparación de volatilidad |
Este método monitorea la magnitud de los cambios en las métricas y admite tres tipos de comparación:
El sistema determina el nivel de alerta basándose en el umbral naranja y el umbral rojo que configure. |
|
Umbral dinámico |
No es necesario establecer umbrales manualmente. El sistema detecta automáticamente la corrección de las métricas en tiempo real mediante modelos algorítmicos. Se activa una alerta si la métrica supera un rango de fluctuación razonable. |
Apéndice 1: Descripción de la línea base del ciclo anterior
La tarea del ciclo anterior se determina al excluir las verificaciones con la misma fecha de negocio, ordenar por fecha de negocio en orden descendente y, si las fechas de negocio son iguales, ordenar adicionalmente por hora de ejecución en orden descendente. La primera tarea en este orden clasificado se utiliza como línea base. Consulte la siguiente tabla para más detalles:
|
Tipo de programación |
Fecha de negocio |
Método de comparación de línea base |
Preguntas frecuentes |
|
Escenario de programación diaria normal |
Fechas de negocio históricas:
|
Cuando la tarea programada con fecha de negocio 2024-06-06 inicia la verificación, se utiliza el resultado de la verificación de 2024-06-05 como línea base para la comparación. |
Escenario de relleno de datos: Contexto: Las tareas del 2024-06-01 al 2024-06-05 se ejecutaron normalmente. Después de que finalizó la instancia programada del 2024-06-05, se realizó un relleno de datos para la instancia con fecha de negocio 2024-07-01. Cuando la tarea programada con fecha de negocio 2024-06-06 inicia la verificación, ¿qué fecha se utiliza como línea base para la comparación? Conclusión: La tarea programada con fecha de negocio 2024-06-06 utiliza el resultado de la verificación de la fecha de negocio 2024-07-01 como línea base para la comparación. Dado que la fecha de negocio 2024-07-01 es posterior, todas las tareas programadas diarias subsiguientes utilizarán 2024-07-01 como línea base hasta que finalice la ejecución de la instancia programada para 2024-07-02. |
|
Escenario de programación horaria normal |
Fechas de negocio históricas:
Las tareas se ejecutan en un horario por hora con 3 ejecuciones por día. |
Cuando la tarea programada por hora con fecha de negocio 2024-06-04 inicia la verificación, se utiliza el último resultado de verificación de la fecha de negocio 2024-06-03 como línea base para la comparación. |
Escenario de programación horaria: Contexto: Del 2024-06-01 al 2024-06-03, se ejecutaron tres instancias programadas por hora cada día, y la primera instancia programada en la fecha de negocio 2024-06-04 también se ejecutó normalmente. Cuando la segunda instancia programada en la fecha de negocio 2024-06-04 inicia la verificación, ¿qué fecha se utiliza como línea base para la comparación? Conclusión: Cuando la segunda instancia programada en la fecha de negocio 2024-06-04 inicia la verificación, excluye la primera verificación del mismo día (2024-06-04) y utiliza el último resultado de verificación de la fecha de negocio 2024-06-03 como línea base para la comparación. |
Apéndice 2: Valor de muestra de hace N días para tareas horarias
Cuando una tarea horaria recupera la muestra de hace N días, el sistema ordena los resultados del día N por hora de ejecución (no por hora programada) en orden descendente y utiliza el resultado de la primera instancia como valor de muestra para comparar con el resultado actual. Consulte la siguiente tabla para más detalles:
|
Tipo de programación |
Fecha de negocio |
Método de comparación de volatilidad |
Preguntas frecuentes |
|
Escenario de programación horaria normal |
Fechas de negocio históricas:
Las tareas se ejecutan en un horario por hora con 3 ejecuciones por día. |
Para una comparación de volatilidad de 7 días, cuando la tarea programada por hora con fecha de ejecución 2024-06-08 inicia la verificación, se utiliza el último valor de muestra de la fecha de ejecución 2024-06-01. |
Escenario de programación horaria: Contexto: Del 2024-06-01 al 2024-06-08, se ejecutaron tres instancias programadas por hora cada día. Cuando la segunda instancia programada en la fecha de ejecución 2024-06-08 inicia la verificación, ¿el resultado de qué día y de qué instancia programada se utiliza como valor de muestra para la comparación de volatilidad de 7 días? Conclusión: Cuando la segunda instancia programada en la fecha de ejecución 2024-06-08 inicia la verificación, se utiliza el último resultado de verificación de la fecha de ejecución 2024-06-01 como valor de muestra para la comparación de volatilidad de 7 días. |