O TFDV oferece suporte à validação de dados personalizados usando SQL. Você pode executar a validação de dados personalizados usando valid_statistics ou custom_validate_statistics . Use validate_statistics
para executar a validação de dados padrão baseada em esquema juntamente com a validação personalizada. Use custom_validate_statistics
para executar apenas a validação personalizada.
Configurando a validação de dados personalizados
Use o CustomValidationConfig para definir as validações customizadas a serem executadas. Para cada validação, forneça uma expressão SQL, que retorna um valor booleano. Cada expressão SQL é executada nas estatísticas de resumo do recurso especificado. Se a expressão retornar false, o TFDV gerará uma anomalia personalizada usando a gravidade fornecida e a descrição da anomalia.
Você pode configurar validações personalizadas que são executadas em recursos individuais ou pares de recursos. Para cada recurso, especifique o conjunto de dados (ou seja, fatia) e o caminho do recurso a ser usado, embora você possa deixar o nome do conjunto de dados em branco se quiser validar a fatia padrão (ou seja, todos os exemplos). Para validações de recursos únicos, as estatísticas de recursos são vinculadas a feature
. Para validações de pares de recursos, as estatísticas de recursos de teste são vinculadas a feature_test
e as estatísticas de recursos de base são vinculadas a feature_base
. Consulte a seção abaixo para obter exemplos de consultas.
Se uma validação personalizada acionar uma anomalia, o TFDV retornará um proto de anomalias com o(s) motivo(s) da anomalia. Cada motivo terá uma breve descrição, que é configurada pelo usuário, e uma descrição com a consulta que causou a anomalia, os nomes dos conjuntos de dados nos quais a consulta foi executada e o caminho do recurso base (se estiver executando uma validação de par de recursos). Consulte a seção abaixo para obter exemplos de resultados de validação personalizada.
Consulte a documentação no CustomValidationConfig
para configurações de exemplo.