全部产品
Search
文档中心

大数据开发治理平台 DataWorks:ListDataQualityRules - 查询质量规则列表

更新时间:Dec 05, 2024

质量监控规则分页查询

接口说明

需要购买 DataWorks 基础版及以上版本才能使用

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

授权信息

当前API暂无授权信息透出。

请求参数

名称类型必填描述示例值
ProjectIdlong

DataWorks 工作空间 ID

10002
DataQualityEvaluationTaskIdlong

关联的质量校验任务 ID

10000
TableGuidstring

规则所作用的表在数据地图中的唯一标识

odps.unit_test.tb_unit_test
Namestring

模糊匹配规则名称

unit_test
PageSizeinteger

每页显示的条数,默认为 10 条,最大为 200 条

10
PageNumberinteger

分页查询页码,默认为 1

1

返回参数

名称类型描述示例值
object

返回值

RequestIdstring

API 请求 ID

691CA452-D37A-4ED0-9441
PagingInfoobject

规则列表分查询结果

PageNumberinteger

页码

1
PageSizeinteger

页大小

10
TotalCountinteger

总条数

294
DataQualityRulesarray<object>

具体的规则列表

DataQualityRuleobject
Idlong

规则 ID

22130
Namestring

规则名称

表不能为空
TenantIdlong

DataWorks 租户 ID

100001
ProjectIdlong

DataWorks 工作空间 ID

100001
Enabledboolean

质量规则是否启用

true
Severitystring

规则对于业务的等级(对应页面上的强弱规则),可选的枚举值:

  • Normal
  • High
High
Descriptionstring

规则描述信息,最长 500 个字符

this is a odps _sql task
Targetobject

规则所监控的对象

Typestring

监控对象类型

  • Table
Table
DatabaseTypestring

表类型的数据集,表所属的数据库类型

  • maxcompute
  • emr
  • cdh
  • hologres
  • analyticdb_for_postgresql
  • analyticdb_for_mysql
  • starrocks
maxcompute
TableGuidstring

规则所作用的表在数据地图中的唯一 ID

odps.unit_test.tb_unit_test
PartitionSpecstring

分区表的分区设置

ds=$[yyyymmdd-1]
TemplateCodestring

规则所引用的规则模板唯一标识

SYSTEM:user_defined_sql
SamplingConfigobject

样本采集所需的设置

Metricstring

采样的指标名称

  • Count:表行数
  • Min:字段最小值
  • Max:字段最大值
  • Avg:字段均值
  • DistinctCount:字段唯一值个数
  • DistinctPercent:字段唯一值个数与数据行数占比
  • DuplicatedCount:字段重复值个数
  • DuplicatedPercent:字段重复值个数与数据行数占比
  • TableSize:表大小
  • NullValueCount:字段为空的行数
  • NullValuePercent:字段为空的比例
  • GroupCount:按字段值聚合后每个值与对应的数据行数
  • CountNotIn:枚举值不匹配行数
  • CountDistinctNotIn:枚举值不匹配唯一值个数
  • UserDefinedSql:通过自定义 SQL 做样本采集
Max
MetricParametersstring

样本采集时,所需的参数

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

具体执行采样语句前,插入执行的一些运行时参数设置语句,最长 1000 个字符。目前只支持 MaxCompute

SET odps.sql.udf.timeout=600s; SET odps.sql.python.version=cp27;
SamplingFilterstring

采样时,对不关注的数据进行二次过滤的条件,最多 16777215 个字符

id IS NULL
CheckingConfigobject

样本校验设置

Typestring

阈值计算方式

  • Fixed
  • Fluctation
  • FluctationDiscreate
  • Auto
  • Average
  • Variance
Fixed
ReferencedSamplesFilterstring

有些类型的阈值需要查询出一些参考样本,然后对参考样本的值进行汇总得出进行比较的阈值,这里使用一个表达式来表示参考样本的查询方式

{ "bizdate": [ "-1", "-7", "-1m" ] }
Thresholdsobject

阈值设置

Expectedobject

期望的阈值设置

Operatorstring

比较符

  • >
  • >=
  • <
  • <=
  • !=
  • =
>
Valuestring

阈值数值

100.0
Warnedobject

普通警告的阈值设置

Operatorstring

比较符

  • >
  • >=
  • <
  • <=
  • !=
  • =
>
Valuestring

阈值数值

100.0
Criticalobject

严重警告的阈值设置

Operatorstring

比较符

  • >
  • >=
  • <
  • <=
  • !=
  • =
>
Valuestring

阈值数值

100.0
ErrorHandlersarray<object>

质量规则校验问题处理器列表

ErrorHandlerobject

质量规则校验问题处理器

Typestring

处理器类型:

  • SaveErrorData
SaveErrorData
ErrorDataFilterstring

如果是自定义 SQL 规则,需要用户指定 SQL 来过滤问题数据

SELECT * FROM tb_api_log WHERE id IS NULL

示例

正常返回示例

JSON格式

{
  "RequestId": "691CA452-D37A-4ED0-9441",
  "PagingInfo": {
    "PageNumber": 1,
    "PageSize": 10,
    "TotalCount": 294,
    "DataQualityRules": [
      {
        "Id": 22130,
        "Name": "表不能为空",
        "TenantId": 100001,
        "ProjectId": 100001,
        "Enabled": true,
        "Severity": "High",
        "Description": "this is a odps _sql task",
        "Target": {
          "Type": "Table",
          "DatabaseType": "maxcompute",
          "TableGuid": "odps.unit_test.tb_unit_test",
          "PartitionSpec": "ds=$[yyyymmdd-1]"
        },
        "TemplateCode": "SYSTEM:user_defined_sql",
        "SamplingConfig": {
          "Metric": "Max",
          "MetricParameters": "{ \"Columns\": [ \"id\", \"name\" ] , \"SQL\": \"select count(1) from table;\"}",
          "SettingConfig": "SET odps.sql.udf.timeout=600s; \nSET odps.sql.python.version=cp27;",
          "SamplingFilter": "id IS NULL"
        },
        "CheckingConfig": {
          "Type": "Fixed",
          "ReferencedSamplesFilter": "{ \"bizdate\": [ \"-1\", \"-7\", \"-1m\" ] }",
          "Thresholds": {
            "Expected": {
              "Operator": ">",
              "Value": "100.0",
              "Expression": ""
            },
            "Warned": {
              "Operator": ">",
              "Value": "100.0",
              "Expression": ""
            },
            "Critical": {
              "Operator": ">",
              "Value": "100.0",
              "Expression": ""
            }
          }
        },
        "ErrorHandlers": [
          {
            "Type": "SaveErrorData\n",
            "ErrorDataFilter": "SELECT * FROM tb_api_log WHERE id IS NULL"
          }
        ]
      }
    ]
  }
}

错误码

访问错误中心查看更多错误码。

变更历史

变更时间变更内容概要操作
2024-12-04OpenAPI 返回结构发生变更查看变更详情
2024-11-06OpenAPI 返回结构发生变更查看变更详情

规则模版 Code 列表:

  • 自定义 SQL:SYSTEM:user_defined_sql

  • 表行数大于 0:SYSTEM:table:table_count:fixed:0

  • 表行数,固定值:SYSTEM:table:table_count:fixed

  • 表行数,1 天差值:SYSTEM:table:table_count_delta:fixed:1_bizdate

  • 表行数,上周期差值:SYSTEM:table:table_count_delta:fixed:latest_bizdate

  • 表行数,上周期波动率:SYSTEM:table:table_count:cycle:latest_bizdate

  • 表行数,7 天平均值波动率:SYSTEM:table:table_count:avg:7_bizdate

  • 表行数,30 天平均值波动率:SYSTEM:table:table_count:avg:1m_bizdate

  • 表行数,1 天波动率:SYSTEM:table:table_count:flux:1_bizdate

  • 表行数,7 天波动率:SYSTEM:table:table_count:flux:7_bizdate

  • 表行数,30 天波动率:SYSTEM:table:table_count:flux:1m_bizdate

  • 表行数,1,7,30 天波动率:SYSTEM:table:table_count:flux:1_7_1m_bizdate

  • 表行数,1,7,30 天,本月 1 号,波动率:SYSTEM:table:table_count:flux:1_7_1m_1st_bizdate

  • 表行数,自定义范围:SYSTEM:table:count

  • 条件匹配占比,自定义范围:SYSTEM:table:count_percent

  • 平均值,1 天波动率:SYSTEM:field:avg:cycle:1_bizdate

  • 平均值,1、7、30 天波动率:SYSTEM:field:avg:flux:1_7_1m_bizdate

  • 平均值,自定义范围:SYSTEM:field:avg

  • 汇总值,1 天波动率:SYSTEM:field:sum:cycle:1_bizdate

  • 汇总值,上周期波动率:SYSTEM:field:sum:cycle:latest_bizdate

  • 汇总值,1、7、30 天波动率:SYSTEM:field:sum:flux:1_7_1m_bizdate

  • 汇总值,自定义范围:SYSTEM:field:sum

  • 最小值,1 天波动率:SYSTEM:field:min:cycle:1_bizdate

  • 最小值,上周期波动率:SYSTEM:field:min:cycle:latest_bizdate

  • 最小值,1、7、30 天波动率:SYSTEM:field:min:flux:1_7_1m_bizdate

  • 最小值,自定义范围:SYSTEM:field:min

  • 最大值,1 天波动率:SYSTEM:field:max:cycle:1_bizdate

  • 最大值,上周期波动率:SYSTEM:field:max:cycle:latest_bizdate

  • 最大值,1、7、30 天波动率:SYSTEM:field:max:flux:1_7_1m_bizdate

  • 最大值,自定义范围:SYSTEM:field:max

  • 空值记录数为 0:SYSTEM:field:null_value:fixed:0

  • 空值个数,固定值:SYSTEM:field:null_value:fixed

  • 空值个数/总行数,固定值:SYSTEM:field:null_value_percent:fixed

  • 字段重复值为 0:SYSTEM:field:duplicated_count:fixed:0

  • 重复值个数/总行数,固定值:SYSTEM:field:duplicated_percent:fixed

  • 重复值个数,固定值:YSTEM:field:duplicated_count:fixed

  • 多字段重复值为 0:SYSTEM:fields:duplicated_count:fixed:0

  • 离散值(状态值),固定值:SYSTEM:field:all_discrete_count:fixed

  • 离散值(分组个数及状态值),1、7、30 天波动率:SYSTEM:field:all_discrete_metrics:fluxdiscrete:1_7_1m_bizdate

  • 离散值(分组个数),固定值:SYSTEM:field:discrete_group_count:fixed

  • 离散值(分组个数),1 天波动率:SYSTEM:field:discrete_group_count:cycle:latest_bizdate

  • 表大小,固定值:SYSTEM:table:table_size:fixed

  • 表大小,上周期差值:SYSTEM:table:table_size_delta:fixed:latest_bizdate

  • 表大小,相比 1 天前差值(字节):SYSTEM:table:table_size_delta:fixed:1_bizdate

  • 表大小,1 天波动率:SYSTEM:table:table_size:flux:1_bizdate

  • 表大小,7 天波动率:SYSTEM:table:table_size:flux:7_bizdate

  • 表大小,30 天波动率:SYSTEM:table:table_size:flux:1m_bizdate

  • 唯一值个数,固定值:SYSTEM:field:count_distinct:fixed

  • 唯一值个数,1、7、30 天波动率:SYSTEM:field:count_distinct:flux:1_7_1m_bizdate

  • 唯一值个数/总行数,固定值:SYSTEM:field:count_distinct_percent:fixed

  • 表行数,动态阈值:SYSTEM:table:table_count:dynamic_threshold

  • 汇总值,动态阈值:SYSTEM:field:sum:dynamic_threshold

  • 平均值,动态阈值:SYSTEM:field:avg:dynamic_threshold

  • 最大值,动态阈值:SYSTEM:field:max:dynamic_threshold

  • 最小值,动态阈值:SYSTEM:field:min:dynamic_threshold

  • 唯一值率动态阈值:SYSTEM:table:table_size:dynamic_threshold

  • 唯一值个数,动态阈值:SYSTEM:table:distinct_count:dynamic_threshold

  • 离散值(分组个数),动态阈值:SYSTEM:field:avg:dynamic_threshold

  • 离散值(状态值),动态阈值:SYSTEM:field:sum:dynamic_threshold

  • 离散值(分组个数),动态阈值:SYSTEM:field:discrete_group_count:dynamic_threshold

  • 离散值(状态值),动态阈值:SYSTEM:field:discrete_value_count:dynamic_threshold