Todos os produtos
Search
Central de documentação

DataWorks:CreateDataQualityEvaluationTask

Última atualização: Oct 09, 2026

Cria uma tarefa de monitoramento de qualidade de dados do DataWorks.

Nota

Esta API foi descontinuada. Recomendamos migrar para dataworks-public(2024-05-18) - CreateDataQualityScan para funcionalidade aprimorada e suporte contínuo. Embora a API descontinuada permaneça temporariamente acessível, nenhuma atualização ou correção de bugs será fornecida.

Descrição da operação

Você deve adquirir o DataWorks Basic Edition ou superior para usar este recurso.

Experimente agora

Experimente esta API no OpenAPI Explorer, sem necessidade de assinatura manual. Chamadas bem-sucedidas geram automaticamente código SDK correspondente aos seus parâmetros. Faça o download com segurança de credenciais integrada para uso local.

Testar

Autorização RAM

Nenhuma autorização necessária para esta operação. Se você encontrar problemas com esta operação, entre em contato com o suporte técnico.

Parâmetros da solicitação

Parâmetro

Tipo

Obrigatório

Descrição

Exemplo

Target

object

Sim

O objeto monitorado para a tarefa de monitoramento de qualidade de dados.

DatabaseType

string

Sim

O tipo de banco de dados da tabela. Valores válidos:

  • maxcompute

  • hologres

  • cdh

  • analyticdb_for_mysql

  • starrocks

  • emr

  • analyticdb_for_postgresql

maxcompute

TableGuid

string

Sim

O ID exclusivo da tabela no DataWorks Data Map.

odps.api_test.ods_openapi_log_d

PartitionSpec

string

Não

As configurações de partição para a tabela particionada.

pt=$[yyyymmdd-1]

Description

string

Não

A descrição da tarefa de monitoramento de qualidade de dados.

OpenAPI create a data quality monitoring test

Name

string

Sim

O nome da tarefa de monitoramento de qualidade de dados.

OpenAPI create a data quality monitoring test

RuntimeConf

string

Não

As configurações de extensão no formato de string JSON. Este parâmetro entra em vigor apenas para tarefas de monitoramento de qualidade de dados do EMR.

  • queue: a fila YARN usada para executar a validação de dados do EMR. Valor padrão: a fila configurada para o projeto.

  • sqlEngine: o mecanismo SQL usado para executar a validação de dados do EMR. Valores válidos:
    • HIVE_SQL

    • SPARK_SQL

{ "queue": "default", "sqlEngine": "SPARK_SQL" }

Trigger

object

Não

A configuração de gatilho para a tarefa de verificação de qualidade de dados.

Type

string

Não

O tipo de gatilho para a tarefa de monitoramento de qualidade de dados. Valores válidos:

  • ByManual: acionado manualmente. Este é o valor padrão.

  • ByScheduledTaskInstance: acionado por uma tarefa agendada associada.

ByScheduledTaskInstance

TaskIds

array

Não

A lista de IDs de tarefas agendadas. Este parâmetro entra em vigor apenas quando Type é definido como ByScheduledTaskInstance.

integer

Não

O ID da tarefa agendada.

30001

ProjectId

integer

Sim

O ID do espaço de trabalho do DataWorks. Você pode fazer login no console do DataWorks e acessar a página Gerenciamento de espaço de trabalho para obter o ID.

Este parâmetro é usado para determinar o espaço de trabalho do DataWorks usado para invocar esta operação de API.

10000

Hooks

array<object>

Não

As configurações de hook.

object

Não

Hook.

Type

string

Não

O tipo de hook. Apenas um tipo é suportado:

  • BlockTaskInstance: impede que a tarefa agendada continue em execução. Se a tarefa de monitoramento de qualidade de dados for acionada por uma tarefa agendada, o sistema determina se deve bloquear a tarefa agendada com base em Hook.Condition após a conclusão da tarefa de monitoramento de qualidade de dados.

BlockTaskInstance

Condition

string

Não

A condição de acionamento para o hook. Quando essa condição é atendida, a ação do hook é acionada. Duas expressões condicionais são suportadas:

  1. Especifique apenas um grupo de gravidade da regra e status de verificação. Exemplo: ${severity} == "High" AND ${status} == "Critical". Isso significa que, entre as regras a serem executadas, se o resultado da verificação de uma regra com gravidade High for Critical, a condição será atendida.

  2. Especifique vários grupos de gravidade da regra e status de verificação. Exemplo: (${severity} == "High" AND ${status} == "Critical") OR (${severity} == "Normal" AND ${status} == "Critical") OR (${severity} == "Normal" AND ${status} == "Error"). Isso significa que, entre as regras a serem executadas, se o resultado da verificação de uma regra com gravidade High for Critical, o resultado da verificação de uma regra com gravidade Normal for Critical, ou o resultado da verificação de uma regra com gravidade Normal for Error, a condição será atendida. Os valores válidos de gravidade na expressão condicional são os mesmos que em DataQualityRule, e os valores válidos de status são os mesmos que em DataQualityResult.

(${severity} == "High" AND ${status} == "Critical") OR (${severity} == "Normal" AND ${status} == "Critical") OR (${severity} == "Normal" AND ${status} == "Error")

Notifications

object

Não

A configuração de assinatura de notificações.

Condition

string

Não

A condição de acionamento para notificações. Quando essa condição é atendida, uma notificação de mensagem é acionada. Duas expressões condicionais são suportadas:

Especifique apenas um grupo de gravidade da regra e status de verificação. Exemplo: ${severity} == "High" AND ${status} == "Critical". Isso significa que, entre as regras a serem executadas, se o resultado da verificação de uma regra com gravidade High for Critical, a condição será atendida. Especifique vários grupos de gravidade da regra e status de verificação. Exemplo: (${severity} == "High" AND ${status} == "Critical") OR (${severity} == "Normal" AND ${status} == "Critical") OR (${severity} == "Normal" AND ${status} == "Error"). Isso significa que, entre as regras a serem executadas, se o resultado da verificação de uma regra com gravidade High for Critical, o resultado da verificação de uma regra com gravidade Normal for Critical, ou o resultado da verificação de uma regra com gravidade Normal for Error, a condição será atendida. Os valores válidos de gravidade na expressão condicional são os mesmos que em DataQualityRule, e os valores válidos de status são os mesmos que em DataQualityResult.

(${severity} == "High" AND ${status} == "Critical") OR (${severity} == "Normal" AND ${status} == "Critical") OR (${severity} == "Normal" AND ${status} == "Error")

Notifications

array<object>

Não

As configurações de notificação.

array<object>

Não

As configurações de notificação.

NotificationReceivers

array<object>

Não

As configurações de destinatário do alerta.

object

Não

As configurações de destinatário do alerta.

ReceiverType

string

Não

O tipo de destinatário do alerta. Valores válidos:

  • WebhookUrl: URL de webhook personalizado

  • FeishuUrl: URL de alerta do Lark

  • DingdingUrl: URL de alerta do DingTalk

  • WeixinUrl: URL de alerta do WeCom

  • AliUid: ID de usuário do Alibaba Cloud

DingdingUrl

Extension

string

Não

As configurações de parâmetros adicionais no formato JSON quando um alerta é enviado. Chaves suportadas:

  • atAll: especifica se deve mencionar @all no grupo ao enviar um alerta do DingTalk. Esta chave entra em vigor apenas quando ReceiverType é definido como DingdingUrl.

{ "atAll": true }

ReceiverValues

array

Não

Os destinatários do alerta.

string

Não

O valor do destinatário.

  • Se o tipo de destinatário for ID de usuário do Alibaba Cloud, o valor será o ID de usuário específico do Alibaba Cloud.

  • Se o tipo de destinatário for DingdingUrl, o valor será a URL de alerta do chatbot específico do DingTalk.

  • Se o tipo de destinatário for WeixinUrl, o valor será a URL de alerta do chatbot específico do WeCom.

  • Se o tipo de destinatário for FeishuUrl, o valor será a URL de alerta do chatbot específico do Lark.

  • Se o tipo de destinatário for WebhookUrl, o valor será a URL de alerta do webhook personalizado específico.

https://api.fc.aliyuncs.com/webhook

NotificationChannels

array<object>

Não

Os métodos de notificação.

object

Não

Os métodos de notificação.

Channels

array

Não

Os métodos de notificação.

string

Não

Os métodos de alerta. Valores válidos:

  • Mail: e-mail

  • Sms: mensagem de texto

  • Phone: chamada telefônica

  • Feishu: Lark

  • Weixin: WeChat

  • Dingding: DingTalk

  • Webhook: webhook personalizado

Mail

DataSourceId

integer

Sim

O ID da fonte de dados. Você pode chamar a operação ListDataSources para consultar o ID da fonte de dados.

1

DataQualityRules

array<object>

Não

A lista de regras de qualidade de dados associadas à tarefa de monitoramento de qualidade de dados. Se DataQualityRule.Id for especificado, a regra correspondente ao ID será associada à nova tarefa de monitoramento de qualidade. Se não for especificado, uma nova regra será criada usando outros campos e associada à nova tarefa de monitoramento de qualidade.

array<object>

Não

Name

string

Não

O nome da regra de qualidade de dados.

OpenAPI test rules

Enabled

boolean

Não

Especifica se a regra de qualidade está ativada.

true

Severity

string

Não

O nível de gravidade da regra para o negócio, que corresponde a regras fortes e fracas na página. Valores válidos:

  • Normal

  • High

Valores válidos:

  • High :

    Alta.

  • Normal :

    Normal.

High

Description

string

Não

A descrição da regra de qualidade de dados.

OpenAPI test rules

TemplateCode

string

Não

O identificador exclusivo do modelo de regra referenciado pela regra.

SYSTEM:field:null_value:fixed:0

SamplingConfig

object

Não

Os parâmetros necessários para a coleta de amostras.

Metric

string

Não

O nome da métrica de amostragem. Valores válidos:

  • Count: O número de linhas na tabela.

  • Min: O valor mínimo do campo.

  • Max: O valor máximo do campo.

  • Avg: O valor médio do campo.

  • DistinctCount: O número de valores exclusivos no campo.

  • DistinctPercent: A proporção do número de valores exclusivos no campo em relação ao número de linhas de dados.

  • DuplicatedCount: O número de valores duplicados no campo.

  • DuplicatedPercent: A proporção do número de valores duplicados no campo em relação ao número de linhas de dados.

  • TableSize: O tamanho da tabela.

  • NullValueCount: O número de linhas em que o campo é nulo.

  • NullValuePercent: A proporção de linhas em que o campo é nulo.

  • GroupCount: O número de linhas de dados correspondentes a cada valor após a agregação pelo valor do campo.

  • CountNotIn: O número de linhas que não correspondem aos valores enumerados.

  • CountDistinctNotIn: O número de valores exclusivos que não correspondem aos valores enumerados.

  • UserDefinedSql: Coleta de amostras usando instruções SQL personalizadas.

NullValueCount

MetricParameters

string

Não

Os parâmetros necessários para a coleta de amostras.

{ "Columns": [ "id", "name" ] , "SQL": "select count(1) from table;"}

SettingConfig

string

Não

As instruções de configuração de parâmetros de tempo de execução inseridas antes da execução das instruções de amostragem. O comprimento máximo é de 1.000 caracteres. Apenas o MaxCompute é suportado.

odps.sql.type.system.odps2=True,odps.sql.hive.compatible=True

SamplingFilter

string

Não

As condições para filtragem secundária de dados irrelevantes durante a amostragem. O comprimento máximo é de 16.777.215 caracteres.

status != 'Succeeded'

CheckingConfig

object

Não

As configurações de verificação de amostras.

Type

string

Não

O método de cálculo de limite. Valores válidos:

  • Fixed

  • Fluctation

  • FluctationDiscreate

  • Auto

  • Average

Fixed

ReferencedSamplesFilter

string

Não

A expressão que representa o método de consulta para amostras de referência. Alguns tipos de limites exigem a consulta de amostras de referência e a agregação de seus valores para obter o limite para comparação.

{"bizdate": ["-1"]}

Thresholds

object

Não

As configurações de limite de verificação.

Expected

object

Não

As configurações de limite esperado.

Operator

string

Não

O operador de comparação. Valores válidos:

  • >

  • >=

  • <

  • <=

  • !=

  • =

=

Value

string

Não

O valor do limite.

0

Expression

string

Não

A expressão do limite.

Para regras de flutuação, você deve usar uma expressão para representar o limite de flutuação. Exemplos:

  • Aumento de flutuação maior que 0.01: $checkValue > 0.01

  • Diminuição de flutuação maior que 0.01: $checkValue < -0.01

  • Valor absoluto da taxa de flutuação: abs($checkValue) > 0.01

Regras de valor fixo também podem usar expressões para configurar limites. Se ambos estiverem configurados, a expressão terá precedência sobre Operator e Value.

$checkValue > 0.01

Warned

object

Não

As configurações de limite para avisos comuns.

Operator

string

Não

O operador de comparação. Valores válidos:

  • >

  • >=

  • <

  • <=

  • !=

  • =

>

Value

string

Não

O valor do limite.

0.001

Expression

string

Não

A expressão do limite.

Para regras de flutuação, você deve usar uma expressão para representar o limite de flutuação. Exemplos:

  • Aumento de flutuação maior que 0.01: $checkValue > 0.01

  • Diminuição de flutuação maior que 0.01: $checkValue < -0.01

  • Valor absoluto da taxa de flutuação: abs($checkValue) > 0.01

Regras de valor fixo também podem usar expressões para configurar limites. Se ambos estiverem configurados, a expressão terá precedência sobre Operator e Value.

$checkValue > 0.01

Critical

object

Não

As configurações de limite para avisos críticos.

Operator

string

Não

O operador de comparação. Valores válidos:

  • >

  • >=

  • <

  • <=

  • !=

  • =

>

Value

string

Não

O valor do limite.

0.01

Expression

string

Não

A expressão do limite.

Para regras de flutuação, você deve usar uma expressão para representar o limite de flutuação. Exemplos:

  • Aumento de flutuação maior que 0.01: $checkValue > 0.01

  • Diminuição de flutuação maior que 0.01: $checkValue < -0.01

  • Valor absoluto da taxa de flutuação: abs($checkValue) > 0.01

Regras de valor fixo também podem usar expressões para configurar limites. Se ambos estiverem configurados, a expressão terá precedência sobre Operator e Value.

$checkValue > 0.01

ErrorHandlers

array<object>

Não

A lista de manipuladores de erros para a verificação de regras de qualidade.

object

Não

O manipulador de erros para a verificação de regras de qualidade.

Type

string

Não

O tipo de manipulador. Valores válidos:

  • SaveErrorData: Reter dados problemáticos.

SaveErrorData

ErrorDataFilter

string

Não

A instrução SQL especificada pelo usuário para filtrar dados problemáticos se a regra for uma regra SQL personalizada.

SELECT * FROM ods_api_log WHERE status = 'Error';

Id

integer

Não

O ID da regra.

2176

Elementos de resposta

Elemento

Tipo

Descrição

Exemplo

object

Esquema da resposta.

RequestId

string

O ID da solicitação.

2d9ce-38ef-4923-baf6-391a7e656

Id

integer

O ID da tarefa de monitoramento de qualidade de dados recém-criada.

10001

Exemplos

Resposta de sucesso

JSON formato

{
  "RequestId": "2d9ce-38ef-4923-baf6-391a7e656",
  "Id": 10001
}

Códigos de erro

Código de status HTTP

Código de erro

Mensagem de erro

Descrição

400 IdempotentParameterMismatch The request uses the same client token as a previous, but non-identical request. Do not reuse a client token with different requests, unless the requests are identical.

Consulte Códigos de Erro para uma lista completa.

Notas de versão

Consulte Notas de Versão para uma lista completa.