O Data Quality no DataWorks oferece diversos modelos de monitoramento integrados. Este tópico descreve a lógica de verificação do Data Quality e os modelos de regras de monitoramento integrados disponíveis.
Modelos de regras integrados
Use modelos de regras integrados para configurar rapidamente regras de monitoramento para uma única tabela ou para várias tabelas em massa. Para mais detalhes, consulte Criar uma regra de monitoramento para uma única tabela e Criar regras de monitoramento para várias tabelas em massa.
Categoria do modelo | Nome do modelo | Descrição |
Número de linhas | Valor fixo | Verifica se a contagem de linhas corresponde a um valor fixo. |
Tabela não vazia | Verifica se a tabela contém pelo menos uma linha. | |
Diferença de 1 dia | Verifica a variação diária na contagem de linhas. Nota A linha de base é a contagem de linhas da partição do dia anterior. O sistema compara a contagem de linhas coletada no dia atual com essa linha de base e calcula a diferença. | |
Variação na contagem de linhas da tabela desde o ciclo anterior | A linha de base é a contagem de linhas da partição do ciclo de agendamento anterior. O sistema compara a contagem de linhas coletada no dia atual com essa linha de base e calcula a diferença. | |
Volatilidade de 1, 7, 30 dias e 1º dia do mês | Compara a contagem de linhas atual com as contagens de 1 dia atrás, 7 dias atrás, 30 dias atrás e do primeiro dia do mês atual. Calcula a volatilidade e a compara com os limiares. Aciona um alerta se qualquer limiar for ultrapassado. | |
Volatilidade de 1, 7, 30 dias | Compara a contagem de linhas atual com as contagens de 1 dia atrás, 7 dias atrás e 30 dias atrás para calcular a volatilidade. Nota Compara a contagem de linhas atual com a amostra do dia anterior, a amostra de 7 dias atrás e a amostra de 30 dias atrás. Calcula a volatilidade e a compara com os limiares. Aciona um alerta se qualquer volatilidade exceder o limiar. | |
Volatilidade de 1 dia | Usa a contagem de linhas do dia anterior como linha de base, compara-a com a contagem de linhas coletada no dia atual e calcula a volatilidade. Aciona um alerta se o limiar for ultrapassado. | |
Volatilidade de 30 dias | Usa a contagem de linhas de 30 dias atrás como linha de base, compara-a com a contagem de linhas coletada no dia atual e calcula a volatilidade. Aciona um alerta se o limiar for ultrapassado. | |
Volatilidade de 7 dias | Usa a contagem de linhas de 7 dias atrás como linha de base, compara-a com a contagem de linhas coletada no dia atual e calcula a volatilidade. Aciona um alerta se o limiar for ultrapassado. | |
Linhas da tabela (limiar dinâmico inteligente) | Quando o Limiar Dinâmico Inteligente está ativado, não é necessário configurar manualmente limiares de volatilidade ou valores esperados. O sistema determina automaticamente limiares adequados por meio de algoritmos inteligentes e aciona alertas ou bloqueia anomalias. | |
Volatilidade média de 30 dias | Monitora flutuações na contagem de linhas. A linha de base é a média da contagem de linhas nos últimos 30 dias, calculada como (soma das contagens diárias de linhas em 30 dias) / 30. | |
Volatilidade média de 7 dias | Monitora flutuações na contagem de linhas. A linha de base é a média da contagem de linhas nos últimos 7 dias, calculada como (soma das contagens diárias de linhas em 7 dias) / 7. | |
Volatilidade do ciclo anterior | Usa a contagem de linhas da partição do ciclo de agendamento anterior como linha de base, compara-a com a contagem de linhas coletada no dia atual e calcula a volatilidade. | |
Intervalo personalizado de linhas da tabela | Permite definir o método de comparação e o intervalo de limiares para a contagem de linhas da tabela. | |
Taxa de correspondência de condição | Taxa de correspondência de condição, intervalo personalizado | Permite definir o método de comparação e o intervalo de limiares para a taxa de correspondência das condições de filtro. |
Tamanho da tabela | Tamanho da tabela, valor fixo | O tamanho de armazenamento da tabela (em bytes). |
Tamanho da tabela, diferença de 1 dia (bytes) | A diferença no tamanho de armazenamento da tabela em comparação com 1 dia atrás (em bytes). | |
Tamanho da tabela, diferença do ciclo anterior | A diferença no tamanho da tabela em comparação com o ciclo de agendamento anterior (em bytes). | |
Tamanho da tabela, volatilidade de 1 dia | Monitora flutuações no tamanho da tabela. Compara o tamanho atual da tabela com a amostra do dia anterior, calcula a volatilidade e a compara com os limiares. Aciona um alerta se qualquer limiar for ultrapassado. Por exemplo, se você definir o limiar laranja como 5% e o limiar vermelho como 10%, um alerta laranja será acionado quando a volatilidade exceder 5%, mas não ultrapassar 10%, e um alerta vermelho será acionado quando a volatilidade exceder 10%. | |
Tamanho da tabela, volatilidade de 30 dias | Monitora flutuações no tamanho da tabela. Compara o tamanho atual da tabela com a amostra de 30 dias atrás, calcula a volatilidade e a compara com os limiares. Aciona um alerta se qualquer limiar for ultrapassado. | |
Tamanho da tabela, volatilidade de 7 dias | Monitora flutuações no tamanho da tabela. Compara o tamanho atual da tabela com a amostra de 7 dias atrás, calcula a volatilidade e a compara com os limiares. Aciona um alerta se qualquer limiar for ultrapassado. | |
Tamanho da tabela (limiar dinâmico inteligente) | Quando o Limiar Dinâmico Inteligente está ativado, não é necessário configurar manualmente limiares de volatilidade ou valores esperados. O sistema determina automaticamente limiares adequados por meio de algoritmos inteligentes e aciona alertas ou bloqueia anomalias. | |
Linhas com valor nulo | Contagem de nulos, valor fixo | Compara a contagem de valores nulos da coluna com um valor fixo. Nota Os valores nulos são identificados pela expressão SQL |
Contagem de nulos igual a 0 | Verifica se a contagem de valores nulos é 0. | |
Contagem de nulos / total de linhas | Contagem de nulos / total de linhas, valor fixo | Compara a razão entre a contagem de nulos e a contagem total de linhas com um valor fixo. Nota O valor fixo é um decimal. |
Validação de formato | Validação por regex | Verifica se os valores da coluna correspondem a uma expressão regular. |
Validação de formato de data | Verifica se os valores da coluna correspondem a um formato de data. | |
Validação de formato de e-mail | Verifica se os valores da coluna correspondem a um formato de e-mail. | |
Validação de formato de documento de identidade | Verifica se os valores da coluna correspondem a um formato de documento de identidade. | |
Validação de formato de número de celular | Verifica se os valores da coluna correspondem a um formato de número de telefone celular. | |
Validação de formato de moeda | Verifica se os valores da coluna correspondem a um formato de moeda. | |
Validação de formato numérico | Verifica se os valores da coluna correspondem a um formato numérico. | |
Validação de formato de telefone fixo | Verifica se os valores da coluna correspondem a um formato de número de telefone fixo. | |
Linhas com valores duplicados | Contagem de duplicatas, valor fixo | A contagem de duplicatas é a contagem total de linhas menos a contagem distinta. Compara a contagem de duplicatas com um valor fixo. |
Contagem de duplicatas da coluna igual a 0 | Verifica se a contagem de duplicatas da coluna é 0. | |
Valores únicos de múltiplas colunas | Contagem de duplicatas de múltiplas colunas igual a 0 | Verifica se a contagem de duplicatas de múltiplas colunas é 0. |
Contagem de duplicatas / total de linhas | Contagem de duplicatas / total de linhas, valor fixo | Compara a razão entre a contagem de duplicatas e a contagem total de linhas com um valor fixo. |
Contagem de valores únicos | Contagem de valores únicos, valor fixo | Compara a contagem distinta com um número esperado (verificação de valor fixo). |
Contagem de valores únicos, volatilidade de 1, 7, 30 dias | Compara a contagem distinta com amostras de 1 dia atrás, 7 dias atrás e 30 dias atrás para calcular a volatilidade. | |
Contagem de valores únicos (limiar dinâmico inteligente) | Quando o Limiar Dinâmico Inteligente está ativado, não é necessário configurar manualmente limiares de volatilidade ou valores esperados. O sistema determina automaticamente limiares adequados por meio de algoritmos inteligentes e aciona alertas ou bloqueia anomalias. | |
Contagem de valores únicos / total de linhas | Contagem de valores únicos / total de linhas, valor fixo | Compara a razão entre a contagem de valores únicos e a contagem total de linhas com um valor fixo. |
Valor mínimo | Valor mínimo, volatilidade de 1, 7, 30 dias | Obtém o valor mínimo da coluna e o compara com amostras de 1 dia atrás, 7 dias atrás e 30 dias atrás. Calcula a volatilidade e aciona um alerta se qualquer limiar for ultrapassado. |
Valor mínimo (limiar dinâmico inteligente) | Quando o Limiar Dinâmico Inteligente está ativado, não é necessário configurar manualmente limiares de volatilidade ou valores esperados. O sistema determina automaticamente limiares adequados por meio de algoritmos inteligentes e aciona alertas ou bloqueia anomalias. | |
Valor mínimo, volatilidade de 1 dia | Obtém o valor mínimo da coluna, compara-o com o valor de 1 dia atrás e calcula a volatilidade em relação ao limiar. | |
Valor mínimo, volatilidade do ciclo anterior | Obtém o valor mínimo da coluna, compara-o com o valor do ciclo de agendamento anterior e calcula a volatilidade. Aciona um alerta se o limiar for ultrapassado. | |
Valor mínimo da coluna, intervalo personalizado | Permite definir o método de comparação e o intervalo de limiares para o valor mínimo da coluna. | |
Valor máximo | Valor máximo, volatilidade de 1, 7, 30 dias | Obtém o valor máximo da coluna e o compara com amostras de 1 dia atrás, 7 dias atrás e 30 dias atrás. Calcula a volatilidade e aciona um alerta se qualquer limiar for ultrapassado. |
Valor máximo (limiar dinâmico inteligente) | Quando o Limiar Dinâmico Inteligente está ativado, não é necessário configurar manualmente limiares de volatilidade ou valores esperados. O sistema determina automaticamente limiares adequados por meio de algoritmos inteligentes e aciona alertas ou bloqueia anomalias. | |
Valor máximo, volatilidade de 1 dia | Obtém o valor máximo da coluna, compara-o com o valor de 1 dia atrás e calcula a volatilidade em relação ao limiar. | |
Valor máximo, volatilidade do ciclo anterior | Obtém o valor máximo da coluna, compara-o com o valor do ciclo de agendamento anterior e calcula a volatilidade. Aciona um alerta se o limiar for ultrapassado. | |
Valor máximo da coluna, intervalo personalizado | Permite definir o método de comparação e o intervalo de limiares para o valor máximo da coluna. | |
Valor médio | Valor médio, volatilidade de 1, 7, 30 dias | Obtém o valor médio da coluna e o compara com amostras de 1 dia atrás, 7 dias atrás e 30 dias atrás. Calcula a volatilidade e aciona um alerta se qualquer limiar for ultrapassado. Nota O valor médio da coluna é comparado com o valor médio do dia anterior, de 7 dias atrás e de 30 dias atrás, respectivamente. |
Valor médio (limiar dinâmico inteligente) | Quando o Limiar Dinâmico Inteligente está ativado, não é necessário configurar manualmente limiares de volatilidade ou valores esperados. O sistema determina automaticamente limiares adequados por meio de algoritmos inteligentes e aciona alertas ou bloqueia anomalias. | |
Valor médio, volatilidade de 1 dia | Obtém o valor médio da coluna, compara-o com o valor de 1 dia atrás e calcula a volatilidade em relação ao limiar. | |
Valor médio da coluna, intervalo personalizado | Permite definir o método de comparação e o intervalo de limiares para o valor médio da coluna. | |
Soma | Soma, volatilidade de 1, 7, 30 dias | Obtém a soma da coluna e a compara com amostras de 1 dia atrás, 7 dias atrás e 30 dias atrás. Calcula a volatilidade e aciona um alerta se qualquer limiar for ultrapassado. |
Soma (limiar dinâmico inteligente) | Quando o Limiar Dinâmico Inteligente está ativado, não é necessário configurar manualmente limiares de volatilidade ou valores esperados. O sistema determina automaticamente limiares adequados por meio de algoritmos inteligentes e aciona alertas ou bloqueia anomalias. | |
Soma, volatilidade de 1 dia | Obtém a soma da coluna, compara-a com o valor de 1 dia atrás e calcula a volatilidade em relação ao limiar. | |
Soma, volatilidade do ciclo anterior | Obtém a soma da coluna, compara-a com o valor do ciclo de agendamento anterior e calcula a volatilidade. Aciona um alerta se o limiar for ultrapassado. | |
Soma da coluna, intervalo personalizado | Permite definir o método de comparação e o intervalo de limiares para a soma da coluna. | |
Valores de enumeração | Contagem de valores únicos de enumeração não correspondentes, valor fixo | Compara a contagem distinta de valores de enumeração não correspondentes. |
Contagem de linhas de enumeração não correspondentes, valor fixo | A contagem de linhas de valores de enumeração não correspondentes na coluna, comparada com um valor fixo especificado. | |
Contagem de linhas de enumeração não correspondentes igual a 0 | Estado normal esperado: o valor fixo e o método de comparação são definidos como = 0. Um alerta é acionado sempre que a contagem de linhas de enumeração não correspondentes for > 0. | |
Valores de enumeração, personalizado, valor fixo | Permite personalizar estatísticas relacionadas à enumeração, como contagens, contagens de linhas, métodos de comparação e limiares. | |
Valores discretos | Valor discreto (contagem de grupos por valor), valor fixo | Após uma operação GROUP BY, a contagem de cada grupo é comparada com um valor fixo. |
Valor discreto (número de grupos), valor fixo | Após uma operação GROUP BY, o número de grupos é comparado com um valor fixo. | |
Valor discreto (número de grupos) (limiar dinâmico inteligente) | Quando o Limiar Dinâmico Inteligente está ativado, não é necessário configurar manualmente limiares de volatilidade ou valores esperados. O sistema determina automaticamente limiares adequados por meio de algoritmos inteligentes e aciona alertas ou bloqueia anomalias. | |
Valor discreto (contagem de grupos por valor) (limiar dinâmico inteligente) | Quando o Limiar Dinâmico Inteligente está ativado, não é necessário configurar manualmente limiares de volatilidade ou valores esperados. O sistema determina automaticamente limiares adequados por meio de algoritmos inteligentes e aciona alertas ou bloqueia anomalias. | |
Valor discreto (número de grupos), volatilidade de 1 dia | Após uma operação GROUP BY, o número de grupos é comparado com a amostra de 1 dia atrás para calcular a volatilidade. | |
Valor discreto (número de grupos e contagem de grupos por valor), volatilidade de 1, 7, 30 dias | Após uma operação GROUP BY, o número de grupos e a contagem de cada grupo são comparados com amostras de 1 dia atrás, 7 dias atrás e 30 dias atrás para calcular a volatilidade. |
Modelos de regras de tamanho de tabela não são compatíveis com tabelas EMR.
Descrição do cálculo
Cálculo de volatilidade: A fórmula de volatilidade é (Valor atual - Valor de linha de base) / Valor de linha de base. Valor atual é o valor real da métrica da verificação atual, e Valor de linha de base é determinado dinamicamente pelo modelo selecionado. Por exemplo:
Para modelos de volatilidade de N dias, a linha de base é o valor da métrica de N dias atrás para a mesma regra.
Para modelos de volatilidade média de N dias, a linha de base é a média aritmética dos valores da métrica nos últimos N dias.
Para modelos de volatilidade do ciclo anterior, a linha de base é o valor da métrica do ciclo de agendamento anterior.
Lógica de verificação
O Data Quality oferece suporte a três métodos de verificação: comparação de valor fixo, comparação de volatilidade e limiar dinâmico.
Método de verificação | Lógica de verificação |
Comparação de valor fixo | Avalia a expressão de verificação e retorna um valor booleano. Há suporte aos seguintes operadores de comparação: |
Comparação de volatilidade | Este método monitora a magnitude das alterações nas métricas e oferece suporte a três tipos de comparação:
O sistema determina o nível de alerta com base nos limiares laranja e vermelho configurados. |
Limiar dinâmico | Não é necessário definir limiares manualmente. O sistema detecta automaticamente a precisão da métrica em tempo real usando modelos algorítmicos. Um alerta é acionado se a métrica exceder um intervalo de flutuação aceitável. |
Apêndice 1: Descrição da linha de base do ciclo anterior
A tarefa do ciclo anterior é determinada excluindo-se verificações com a mesma data comercial, ordenando por data comercial em ordem decrescente e, se as datas comerciais forem iguais, ordenando adicionalmente por tempo de execução em ordem decrescente. A primeira tarefa nesta ordem classificada é usada como linha de base. Consulte a tabela a seguir para obter detalhes:
Tipo de agendamento | Data comercial | Método de comparação de linha de base | Perguntas frequentes |
Cenário de agendamento diário normal | Datas comerciais históricas:
| Quando a tarefa agendada com data comercial 2024-06-06 inicia a verificação, o resultado da verificação de 2024-06-05 é usado como linha de base para comparação. | Cenário de reprocessamento de dados: Contexto: As tarefas de 2024-06-01 a 2024-06-05 foram executadas normalmente. Após a conclusão da instância agendada em 2024-06-05, foi realizado um reprocessamento para a instância com data comercial 2024-07-01. Quando a tarefa agendada com data comercial 2024-06-06 iniciar a verificação, qual data será usada como linha de base para comparação? Conclusão: A tarefa agendada com data comercial 2024-06-06 usa o resultado da verificação da data comercial 2024-07-01 como linha de base para comparação. Como a data comercial 2024-07-01 é posterior, todas as tarefas agendadas diárias subsequentes usarão 2024-07-01 como linha de base até que a instância agendada para 2024-07-02 conclua a execução. |
Cenário de agendamento horário normal | Datas comerciais históricas:
As tarefas são executadas em um agendamento horário com 3 execuções por dia. | Quando a tarefa agendada horária com data comercial 2024-06-04 inicia a verificação, o último resultado de verificação da data comercial 2024-06-03 é usado como linha de base para comparação. | Cenário de agendamento horário: Contexto: De 2024-06-01 a 2024-06-03, três instâncias agendadas horárias foram executadas todos os dias, e a primeira instância agendada na data comercial 2024-06-04 também foi executada normalmente. Quando a segunda instância agendada na data comercial 2024-06-04 iniciar a verificação, qual data será usada como linha de base para comparação? Conclusão: Quando a segunda instância agendada na data comercial 2024-06-04 inicia a verificação, ela exclui a primeira verificação do mesmo dia (2024-06-04) e usa o último resultado de verificação da data comercial 2024-06-03 como linha de base para comparação. |
Apêndice 2: Valor de amostra de N dias atrás para tarefas horárias
Quando uma tarefa horária recupera a amostra de N dias atrás, o sistema classifica os resultados do dia N por tempo de execução (não tempo agendado) em ordem decrescente e usa o resultado da primeira instância como valor de amostra para comparação com o resultado atual. Consulte a tabela a seguir para obter detalhes:
Tipo de agendamento | Data comercial | Método de comparação de volatilidade | Perguntas frequentes |
Cenário de agendamento horário normal | Datas comerciais históricas:
As tarefas são executadas em um agendamento horário com 3 execuções por dia. | Para uma comparação de volatilidade de 7 dias, quando a tarefa agendada horária com data de execução 2024-06-08 inicia a verificação, o último valor de amostra da data de execução 2024-06-01 é usado. | Cenário de agendamento horário: Contexto: De 2024-06-01 a 2024-06-08, três instâncias agendadas horárias foram executadas todos os dias. Quando a segunda instância agendada na data de execução 2024-06-08 inicia a verificação, o resultado de qual dia e de qual instância agendada é usado como valor de amostra para a comparação de volatilidade de 7 dias? Conclusão: Quando a segunda instância agendada na data de execução 2024-06-08 inicia a verificação, o último resultado de verificação da data de execução 2024-06-01 é usado como valor de amostra para a comparação de volatilidade de 7 dias. |