| 名称 | 类型 | 描述 | 示例值 |
|---|---|---|---|
| object | 数据质量规则 | ||
| Id | long | 规则 ID | 1 |
| Name | string | 规则名称,数字、英文字母、汉字、半角全角标点符号组合,最长 255 个字符 | 表不能为空 |
| TenantId | long | Dataworks 租户 ID | 1 |
| ProjectId | long | Dataworks 项目空间 ID | 100 |
| Enabled | boolean | 规则是否启用 | true |
| Severity | string | 规则对于业务的等级(对应页面上的强弱规则),可选的枚举值:
| High |
| Description | string | 规则描述信息,最长 500 个字符 | this is a odps _sql task |
| TemplateCode | string | 创建规则时所引用的规则模板 | SYSTEM:user_defined_sql |
| Target | object | 规则所监控的对象 | |
| Type | string | 监控对象类型
| Table |
| DatabaseType | string | 表类型的数据集,表所属的数据库类型
| maxcompute |
| TableGuid | string | 表在数据地图中的唯一 ID | odps.unit_test.tb_unit_test |
| PartitionSpec | string | 分区表的分区设置 | ds=$[yyyymmdd-1] |
| SamplingConfig | object | 样本采集所需的设置 | |
| Metric | string | 采样的指标名称
| Min |
| MetricParameters | string | 样本采集时,所需的参数 | { "Columns": [ "id", "name" ] } |
| SettingConfig | string | 具体执行采样语句前,插入执行的一些运行时参数设置语句,最长 1000 个字符。目前只支持 MaxCompute | SET odps.sql.udf.timeout=600s; |
| SamplingFilter | string | 采样时,对不关注的数据进行二次过滤的条件,最多 16777215 个字符 | id IS NULL |
| CheckingConfig | object | 样本校验设置 | |
| Type | string | 阈值计算方式
| Fixed |
| ReferencedSamplesFilter | string | 有些类型的阈值需要查询出一些参考样本,然后对参考样本的值进行汇总得出进行比较的阈值,这里使用一个表达式来表示参考样本的查询方式 | { "bizdate": [ "-1", "-7", "-1m" ] } |
| Thresholds | object | 阈值设置 | |
| Expected | object | 期望的阈值设置 | |
| Value | string | 阈值数值 | 100.0 |
| Operator | string | 比较符
| > |
| Expression | string | 阈值表达式 | 波动率类型规则使用,通过表达式来表示波动阈值。如:波动上升大于0.01: $checkValue > 0.01 波动下降大于0.01:$checkValue < -0.01 波动率绝对值:abs($checkValue) > 0.01 |
| Warned | object | 普通警告的阈值设置 | |
| Value | string | 阈值数值 | 100.0 |
| Operator | string | 比较符
| > |
| Expression | string | 阈值表达式 | 波动率类型规则使用,通过表达式来表示波动阈值。如:波动上升大于0.01: $checkValue > 0.01 波动下降大于0.01:$checkValue < -0.01 波动率绝对值:abs($checkValue) > 0.01 |
| Critical | object | 严重警告的阈值设置 | |
| Value | string | 阈值数值 | 100.0 |
| Operator | string | 比较符
| > |
| Expression | string | 校验表达式 | 波动率类型规则使用,通过表达式来表示波动阈值。如:波动上升大于0.01: $checkValue > 0.01 波动下降大于0.01:$checkValue < -0.01 波动率绝对值:abs($checkValue) > 0.01 |
| ErrorHandlers | array<object> | 质量规则校验问题处理器 | |
| object | |||
| Type | string | 处理器类型:
| SaveErrorData |
| ErrorDataFilter | string | 如果是自定义 SQL 规则,需要用户指定 SQL 来过滤问题数据 | SELECT * FROM tb_api_log WHERE id IS NULL |
该文章对您有帮助吗?