Data Quality permite configurar reglas de monitoreo de calidad para tablas de datos. Puede usar estas reglas para comprobar si los datos de la tabla cumplen sus requisitos, bloquear automáticamente tareas problemáticas y evitar que los datos sucios se propaguen a los procesos descendentes, lo que garantiza que los datos de salida cumplan las expectativas. En este tema se describe cómo configurar, ejecutar y gestionar reglas de monitoreo de calidad para una tabla específica.
Requisitos previos
Antes de configurar reglas de calidad para las tablas de datos de un motor, primero debe obtener sus metadatos. Para obtener más información, consulte Metadata acquisition.
Limitaciones
Limitaciones de origen de datos: Las reglas de monitoreo de calidad solo son compatibles con los orígenes de datos MaxCompute, E-MapReduce, Hologres, CDH Hive, AnalyticDB for PostgreSQL, AnalyticDB for MySQL, StarRocks, MySQL, SQL Server, DLF y Lindorm.
Limitaciones de red: Después de configurar una regla, el nodo de programación que genera los datos de la tabla debe usar un resource group con una conexión de red activa para desencadenar la comprobación de la regla de Data Quality.
Limitaciones de efectividad de reglas: Las reglas que usan un umbral dinámico requieren como mínimo 21 días de datos de muestra para funcionar correctamente. Si dispone de menos de 21 días de datos, la comprobación de la regla puede fallar o producir resultados inexactos. En este caso, configure la regla, asóciela con una tarea de programación y, a continuación, use la función backfill para generar los datos de muestra obligatorios.
Componentes principales del monitoreo de calidad
Configurar reglas de calidad para una tabla crea un plan de monitoreo de calidad completo. Este plan consta de cuatro componentes clave:
-
Alcance del monitoreo: Especifica el activo de destino para las comprobaciones de calidad de datos. La configuración incluye:
Monitored Object: La tabla física o las tablas seleccionadas para las comprobaciones de calidad de datos. Se pueden monitorear tablas particionadas y no particionadas.
Intervalo de datos: En una tabla particionada, una expresión de filtro de partición define dinámicamente qué particiones se analizan durante cada comprobación. Por ejemplo, use
$[yyyymmdd-1]para comprobar los datos de la partición del día anterior a la fecha de negocio.
-
Monitoring Rule: Define la lógica de validación específica y los estándares de medición para determinar si los datos cumplen las expectativas.
-
Definición de reglas: Puede agregar una o varias reglas de calidad a un objeto monitoreado. Cada regla se instancia a partir de una plantilla de regla. La plantilla puede ser uno de los tipos que se muestran a continuación:
Plantilla del sistema: Plantilla integrada de DataWorks que cubre varias dimensiones, como integridad, unicidad y validez. Los ejemplos incluyen "table row count fluctuation" y "field unique value count".
Plantilla personalizada: Plantilla definida por el usuario para crear lógica de validación reutilizable y personalizada mediante SQL.
Propiedades de la regla: Debe configurar las propiedades clave de cada regla, incluido un umbral (por ejemplo, una tasa de fluctuación que no exceda el 30 %) y su gravedad (regla fuerte o regla débil). Si falla una comprobación de una regla fuerte, esta puede bloquear la tarea de programación asociada.
-
-
Trigger Method: Define cuándo se ejecuta la tarea de monitoreo de calidad.
Desencadenador programado: Asocia el monitoreo de calidad con un nodo de programación ascendente de DataWorks, normalmente el que genera la tabla monitoreada. Cuando el nodo de programación se ejecuta correctamente, desencadena automáticamente las reglas de calidad asociadas. Esta es una práctica recomendada para la garantía automatizada de calidad de datos.
Triggered Manually: El proceso de validación no está asociado con una tarea de programación; debe iniciarlo manualmente desde la interfaz de usuario. Este método es adecuado para la exploración y validación de datos temporal y puntual.
-
Directiva de alerta: Configura la estrategia de notificación para cuando se encuentran problemas de calidad de datos.
Suscripción de alerta: Puede configurar alertas para resultados específicos de comprobación de reglas, como "con errores" o "advertencia". El sistema admite el envío de notificaciones a través de diversos canales, incluidos correo electrónico, SMS, llamadas telefónicas, DingTalk, Lark, bots de chat de WeCom y webhooks personalizados.
Configurar estos cuatro componentes y guardar los ajustes crea un plan de monitoreo de calidad completo. Antes de desplegarlo en el entorno de producción, se recomienda usar la función de ejecución de prueba para comprobar la configuración.
Procedimiento
Paso 1: Ir a la página de detalles de calidad de la tabla
-
Inicie sesión en la consola de DataWorks. En la región de destino, haga clic en en el panel de navegación izquierdo. Seleccione un espacio de trabajo en la lista desplegable y haga clic en Go to Data Quality.
-
Vaya a la página de configuración de reglas para tablas.
En el panel de navegación izquierdo, haga clic en para ir a la página de configuración de reglas.
En la lista Connection de la izquierda, seleccione la base de datos que contiene la tabla para la que desea configurar reglas.
-
Filtre las tablas por criterios como el tipo de base de datos, la base de datos y el nombre de tabla. Haga clic en el nombre de la tabla de destino o haga clic en Rule Management en la columna Actions para abrir la página de detalles de calidad de la tabla.
Esta página muestra todos los monitores y reglas de calidad de la tabla. Puede filtrar las reglas según si están asociadas con un monitor de calidad y definir el modo de ejecución para las reglas no asociadas.
Paso 2: Crear un monitor de calidad
-
Cree un monitor de calidad.
Puede crear un monitor de calidad de una de las formas que se muestran a continuación:
Método 1: En la página Table Quality Details, haga clic en la pestaña Rule Management. Haga clic en el icono
junto a Monitor Perspective para crear un monitor de calidad.Método 2: En la página Table Quality Details, cambie a la pestaña de monitoreo de calidad. Haga clic en Create Monitor.
-
Configure los parámetros del monitor de calidad.
Parámetro
Parámetro
Descripción
Basic Configurations
Monitor Name
Introduzca un nombre personalizado para el monitor de calidad.
Quality Monitoring Owner
Especifique un propietario para el monitor de calidad. En una suscripción de alerta, puede establecer a este propietario como destinatario de las notificaciones por Email, Email and SMS o Telephone.
Monitored Object
Objeto que se comprueba para la calidad de datos. De forma predeterminada, es la tabla actual.
Data Scope
Use una expresión de filtro de partición para definir las particiones de la tabla que se comprobarán.
-
Tabla no particionada: No es necesario configurar este parámetro. De forma predeterminada, se comprueba la Full Table.
-
Tabla particionada: La expresión debe tener el formato
partition_name=partition_value. El valor de partición puede ser un valor fijo o un valor de Appendix 2: Built-in partition filter expressions.
NotaEsta configuración se ignora cuando configura reglas mediante una plantilla personalizada o SQL personalizado, ya que el SQL personalizado determina qué particiones se comprueban.
Select Monitoring Rule
Select Monitoring Rule
Seleccione las reglas de calidad de datos que se aplicarán al intervalo de datos especificado.
Nota-
Puede crear varios monitores de calidad para distintas particiones y asociar cada uno con reglas de calidad de datos diferentes.
-
Si aún no ha creado una regla de calidad de datos, puede omitir este paso. Primero puede crear el monitor de calidad y luego agregar reglas. Para obtener más información sobre cómo crear una regla de calidad de datos, consulte Step 3. Configure data quality rules.
Running Settings
Trigger Method
Método que desencadena el monitor de calidad.
-
Triggered by Node Scheduling in Production Environment: Asocia el monitor de calidad con una tarea programada periódicamente especificada en DataWorks Operation Center. Después de que la tarea se ejecuta correctamente, las reglas de calidad de datos de este monitor de calidad se desencadenan automáticamente. Las tareas de simulación no desencadenan comprobaciones de reglas de calidad de datos.
-
Triggered Manually: Desencadena manualmente las reglas de calidad de datos asociadas con el monitor de calidad actual.
ImportanteSi la tabla que monitorea no es una tabla de MaxCompute y establece el Trigger Method en Triggered by Node Scheduling in Production Environment, la tarea programada periódicamente seleccionada no puede usar el resource group público de programación. De lo contrario, se produce un error cuando se ejecuta el monitor de calidad.
Associated Auto Triggered Node
Si establece el Trigger Method en Triggered by Node Scheduling in Production Environment, puede configurar este parámetro para especificar un nodo de programación asociado. Después de que el nodo de programación especificado se ejecuta correctamente, las reglas de calidad de datos se desencadenan automáticamente.
Resources
Recursos de cómputo usados para ejecutar las comprobaciones de reglas de calidad de datos. De forma predeterminada, se selecciona el origen de datos de la tabla monitoreada en el espacio de trabajo. Si selecciona otro origen de datos, compruebe que sus recursos pueden acceder a la tabla.
Handling Policies
Quality Issue Handling Policies
Directiva que se aplica cuando se detecta un problema de calidad de datos.
-
Alert: Cuando se detecta un problema de calidad de datos, se envía una notificación de alerta a los suscriptores del monitor de calidad.
Las condiciones predeterminadas son:
Strong rule - Critical anomaly,Strong rule - Warning anomaly,Strong rule - Check failed,Weak rule - Critical anomaly,Weak rule - Warning anomalyyWeak rule - Check failed. -
Blocks: Cuando se detecta un problema de calidad de datos, el sistema marca como fallido el nodo de programación de producción desencadenante y bloquea sus nodos descendentes. Esta acción bloquea la canalización de producción para evitar que los datos problemáticos se propaguen.
La condición predeterminada es
Strong rule - Critical anomaly.ImportanteSi establece la directiva en Blocks, también se desencadena una alerta cuando se detecta un problema de calidad de datos.
Alert Method Configuration
Puede enviar notificaciones de alerta mediante Email, Email and SMS, DingTalk Chatbot, DingTalk Chatbot @ALL, Lark Group Chatbot, Enterprise WeChat Chatbot, Custom Webhook o Telephone.
Nota-
Para usar un bot de chat de DingTalk, Lark o Enterprise WeChat, agregue el bot de chat para obtener su URL de webhook y, a continuación, pegue la URL en la configuración de suscripción de alerta.
-
El método Custom Webhook solo es compatible con DataWorks Enterprise Edition. Para obtener información sobre el formato de mensaje de una notificación de alerta que DataWorks envía mediante Custom Webhook, consulte Appendix: Webhook message format.
-
Si selecciona Email, Email and SMS o Telephone como método de notificación, puede establecer Authorized object en Data Quality Monitoring Owner, Shift Schedule o Scheduling Task Owner.
-
Data Quality Monitoring Owner: Envía notificaciones de alerta al Quality Monitoring Owner especificado en la sección Basic Configurations del monitor de calidad actual.
-
Shift Schedule: Cuando un nodo de programación asociado desencadena una alerta de calidad, el sistema envía una notificación a on-duty user for the current day in the shift schedule.
-
Scheduling Task Owner: Las notificaciones de alerta se enviarán al Head del nodo de programación asociado con el monitor de calidad.
-
-
Haga clic en Save para crear el monitor de calidad.
Paso 3: Configurar reglas de calidad de datos
Puede configurar reglas de calidad basadas en plantillas de reglas integradas de nivel de tabla y de nivel de campo. Para obtener más información sobre las plantillas de reglas integradas, consulte View built-in rule templates.
En la página Table Quality Details, haga clic en la pestaña Rule Management, seleccione el monitor de calidad que creó y, a continuación, haga clic en Create Rule para ir a la página de configuración de reglas.
-
Cree una regla de calidad de datos.
Data Quality proporciona los métodos que se muestran a continuación para configurar reglas. Seleccione el método que mejor se ajuste a sus requisitos empresariales.
Método 1: Plantilla del sistema
Data Quality proporciona decenas de rule templates integradas. En el panel izquierdo, haga clic en + Use junto a una plantilla para crear rápidamente una regla de calidad. Puede agregar varias reglas al mismo tiempo.
Haga clic en + System template rule en la parte superior y, a continuación, modifique el parámetro Template para cambiar la plantilla de regla.
Método 2: Plantilla personalizada
NotaAntes de crear una regla mediante una plantilla personalizada, debe ir a para crear una plantilla de regla personalizada. Para obtener más información, consulte Create and manage custom rule templates.
Cuando usa una plantilla personalizada, sus configuraciones básicas, como el FLAG parameter y el SQL de validación, se rellenan automáticamente. Puede especificar un Rule Name personalizado y configurar umbrales de monitoreo según el tipo de regla. Por ejemplo, una regla numérica requiere un umbral normal y un umbral crítico, mientras que una regla de tipo fluctuación también requiere un umbral de advertencia.
Método 3: SQL personalizado
Este método permite personalizar la lógica de validación de calidad de datos para la tabla.
Método 4: Script personalizado
Las reglas de script personalizado admiten validación de datos por hora y por minuto. Para obtener información sobre cómo escribir una regla de script, consulte Use a system rule template. Ejemplo:
- assertion: change 30 minutes ago for max(id) = 15 name: 30-minute difference in max value of id field is 15 -
(Opcional) Agregue la regla configurada a un monitor de calidad. Para obtener más información sobre los monitores de calidad, consulte Step 2. Create a quality monitor.
NotaUna regla de calidad solo puede desencadenarse después de agregarla a un monitor de calidad. Puede seleccionar un monitor de calidad existente aquí o seleccionar esta regla de calidad en el paso Select quality rules al configurar un monitor de calidad.
Haga clic en Confirm.
Paso 4: Probar la regla
Puede probar las reglas de un monitor de calidad de las formas que se muestran a continuación.
Pestaña Rule Management
En la pestaña Rule Management, en Monitor Perspective, busque el monitor de calidad que creó y haga clic en Test Run.
En el cuadro de diálogo Test Run, confirme parámetros como Data Scope y Scheduled Time y, a continuación, haga clic en Test Run. Cuando aparezca el mensaje Started, puede hacer clic en View Details para consultar los detalles de la ejecución de prueba.
Pestaña de monitoreo de calidad
En la pestaña Monitor, busque el monitor de calidad que creó y haga clic en Test en la columna Actions.
En el cuadro de diálogo Test Run, confirme parámetros como Data Scope y Scheduled Time y, a continuación, haga clic en Test Run. Cuando aparezca el mensaje Started, puede hacer clic en View Details para consultar los detalles de la ejecución de prueba.
Paso 5: Modifique las suscripciones de alerta
Configuró una suscripción de alerta en Step 2. Create a quality monitor. Cuando se activa una regla, el sistema envía una notificación a los destinatarios de la alerta especificados. Si necesita cambiar los destinatarios de la alerta, modifique la suscripción de alerta de una de las maneras que se indican a continuación.
Pestaña de gestión de reglas
En la pestaña Rule Management, debajo de Monitor Perspective, busque el monitor de calidad que creó, haga clic en
y, a continuación, seleccione Alert Subscription.-
En el cuadro de diálogo Alert Subscription, después de agregar un Notification Method y un Recipient, haga clic en Save en la columna Actions. Una vez que guarde, puede agregar más métodos de notificación.
Los métodos de notificación compatibles incluyen Email, Email and SMS, DingTalk Chatbot, DingTalk Chatbot @ALL, Lark Group Chatbot, Enterprise WeChat Chatbot, Custom Webhook y Telephone.
NotaPara usar un chatbot de DingTalk, Lark o Enterprise WeChat, agregue el chatbot para obtener su URL de webhook y, a continuación, pegue la URL en la configuración de la suscripción de alerta.
El método Custom Webhook solo es compatible con DataWorks Enterprise Edition. Para obtener información sobre el formato del mensaje de una notificación de alerta que DataWorks envía mediante un Custom Webhook, consulte Appendix: Webhook message format.
-
Cuando seleccione Email, Email and SMS o Telephone como método de notificación, establezca Authorized object en Data Quality Monitoring Owner, Shift Schedule o Scheduling Task Owner.
Data Quality Monitoring Owner: envía notificaciones de alerta al Quality Monitoring Owner especificado en la sección Basic Configurations del monitor de calidad actual.
Shift Schedule: cuando un nodo de programación asociado activa una alerta de calidad, el sistema envía una notificación a on-duty user for the current day in the shift schedule.
Scheduling Task Owner: las notificaciones de alerta se enviarán al Head del nodo de programación asociado al monitor de calidad.
Pestaña de monitoreo de calidad
En la pestaña Monitor, busque el monitor de calidad que creó y elija en la columna Actions.
-
En el cuadro de diálogo Alert Subscription, después de agregar un Notification Method y un Recipient, haga clic en Save en la columna Actions. Una vez que guarde, puede agregar más métodos de notificación.
Los métodos de notificación compatibles incluyen Email, Email and SMS, DingTalk Chatbot, DingTalk Chatbot @ALL, Lark Group Chatbot, Enterprise WeChat Chatbot, Custom Webhook y Telephone.
NotaPara usar un chatbot de DingTalk, Lark o Enterprise WeChat, agregue el chatbot para obtener su URL de webhook y, a continuación, pegue la URL en la configuración de la suscripción de alerta.
El método Custom Webhook solo es compatible con DataWorks Enterprise Edition. Para obtener información sobre el formato del mensaje de una notificación de alerta que DataWorks envía mediante un Custom Webhook, consulte Appendix: Webhook message format.
-
Cuando seleccione Email, Email and SMS o Telephone como método de notificación, establezca Authorized object en Data Quality Monitoring Owner, Shift Schedule o Scheduling Task Owner.
Data Quality Monitoring Owner: envía notificaciones de alerta al Quality Monitoring Owner especificado en la sección Basic Configurations del monitor de calidad actual.
Shift Schedule: cuando un nodo de programación asociado activa una alerta de calidad, el sistema envía una notificación a on-duty user for the current day in the shift schedule.
Scheduling Task Owner: las notificaciones de alerta se enviarán al Head del nodo de programación asociado al monitor de calidad.
Próximos pasos
Después de que se ejecute un monitor de calidad, vaya a Quality O&M en el panel de navegación izquierdo y haga clic en Monitor y Running Records. Consulte el estado de comprobación de calidad de la tabla y los registros completos de las comprobaciones de sus reglas de calidad.
Apéndice
Apéndice 1: Fórmulas de tasa de fluctuación y varianza
-
Fórmula de la tasa de fluctuación:
fluctuation rate = (sample value - baseline value) / baseline valueValor de muestra: valor de la muestra del día actual. Por ejemplo, para una comprobación de tasa de fluctuación de 1 día del recuento de filas de una tarea SQL, el valor de muestra es el recuento de filas de la partición del día actual.
Valor de referencia: valor de referencia obtenido de muestras históricas.
NotaSi la regla es una comprobación de tarea SQL
table row count, 1-day fluctuation rate, el valor de referencia es el recuento de filas de la partición del día anterior.Si la regla es una comprobación de tarea SQL
table row count, 7-day average fluctuation rate, el valor de referencia es el recuento promedio de filas de los 7 días anteriores.
-
Fórmula de la varianza:
(current sample value - average of last N days) / standard deviationNotaSolo puede usar la varianza para tipos numéricos como BIGINT y DOUBLE.
Apéndice 2: Expresiones de partición integradas
Suponga el escenario que se describe a continuación:
La marca de tiempo de datos (bizdate) es
20240524La hora de programación es
10:30:00
|
Expresión de partición |
Descripción |
Ejemplo |
|
|
Comprueba los datos de la partición correspondientes a la marca de tiempo de datos actual. |
|
|
|
Se comprueban los datos de la partición del día anterior a la marca de tiempo de datos. |
|
|
|
Los datos de la partición comprobados corresponden a 7 días antes de la marca de tiempo de datos (una semana antes). |
|
|
|
La comprobación abarca los datos de la partición del mismo día del mes anterior. |
|
|
|
Comprueba la partición de la marca de tiempo de datos actual, hasta el segundo de la hora de programación. |
|
|
|
Se comprueba la partición de la medianoche (00:00:00) de la marca de tiempo de datos actual. |
|
|
|
La partición comprobada corresponde a una hora antes de la hora de programación. |
|
|
|
(Para una partición horaria) Se comprueba la partición de la hora anterior. El formato normalmente es |
|
|
|
(Para una partición por minutos) La partición comprobada corresponde a 30 minutos antes de la hora de programación. El formato normalmente es |
|
|
|
(Para una partición de dos niveles) La comprobación abarca todas las particiones horarias del día anterior a la marca de tiempo de datos. |
Todas las particiones desde |