此手册用于记录大数据开发与管理平台中,DQC产品所有对外开放的OpenAPI,阅读此手册,你将了解DQC产品开放的OpenAPI能力与调用方法。

一、公共参数

1.1 响应格式

名称 类型 描述
code Number 响应码
reqId String 请求ID
cost Number 耗时,单位:ms
msg String 响应消息
result Object 响应结果

1.2 异常响应码

注意:按照统一规范,实际通过openapi网关返回的与业务异常响应码为:18+响应码 其中18为固定表示easydqc子产品,其它非业务异常码可以参考:OpenAPI通用规范说明

响应码 说明
1000 执行实例不存在
1404 当前获取的资源不存在或者其它相关资源不存在
1403 对当前操作资源无权限或者对其它相关资源无权限

1.3 枚举对象

1.3.1 DatasourceTypeEnum

数据源类型

枚举值 类型 名称
hive String Hive
mysql String MySQL
vertica String Vertica
greenplum String GreenPlum
oracle String Oracle
sql_server String SqlServer
1.3.2 ScheduleTypeEnum

调度类型

枚举值 类型 名称
1 Number 线上调度
2 Number 试跑
3 Number 重跑
4 Number 补数据
5 Number 开发模式
1.3.3 JobStatusEnum

执行实例状态值

枚举值 类型 名称
1 Number 运行中
2 Number 成功
3 Number 失败
4 Number 异常(规则校验不通过)
1.3.4 RuleLevelEnum

规则类型

枚举值 类型 名称
0 Number 字段级
1 Number 表级
1.3.5 CheckTypeEnum

校验类型

枚举值 类型 名称
0 Number 准确性校验
1 Number 完整性校验
2 Number 有效性校验
5 Number 唯一性校验
6 Number 一致性校验
8 Number 及时性校验
-1 Number 其他
1.3.6 ComputeRuleTypeEnum

计算规则类型

枚举值 类型 名称
DEFAULT String 默认
REFERENCE_VOLATILITY_RATIO String 与基准值计算波动率
REFERENCE_RATIO String 与基准值计算比率
REFERENCE_DIFFERENCE String 与基准值差值
1.3.7 CompareTypeEnum

校验方式

枚举值 类型 名称
0 Number 大于
1 Number 小于
2 Number 大于等于
3 Number 小于等于
4 Number 等于
5 Number 不等于
6 Number 属于某区间,且包含该区间的临界值
7 Number 属于某区间,不包含该区间的临界值
8 Number 属于某区间,且包含该区间的临界值
9 Number 不属于某区间,不包含该区间的临界值
1.3.8 ReferenceValueTypeEnum

参考值类型

枚举值 类型 名称
TOTAL_LINES_COUNT String 总行数
NTH_DAYS_LATEST String N天前值
NTH_DAYS_AVG String 前N天平均值
LAST String 上个周期值
1.3.9 ExploreTaskRuleTypeEnum

形态探查任务规则类型枚举

枚举值 类型 名称
1 Number 去重后总量
2 Number 空值/空串比例
3 Number 最大长度
4 Number 最大长度值预览
5 Number 最小长度
6 Number 最小长度值预览
7 Number 最大值
8 Number 最小值
1.3.10 JobInstanceEnum
枚举值 类型 名称
1 Number 等待
2 Number 运行中
3 Number 成功
4 Number 终止中
5 Number 终止
6 Number 失败

1.4 基础对象

1.4.1 PageResult

分页查询结果

字段 类型 描述
pageSize Number 每页显示条数
pageNum Number 页数
totalCount Number 总条数
totalPage Number 总页数
list Array<Object> 当前页结果
1.4.2 User

用户信息

字段 类型 描述
user String 用户邮箱
fullName String 用户全名
1.4.3 JobRunParameter

任务运行参数,支持spark运行参数

字段 类型 描述
parameterName String 参数名
parameterValue String 参数值

1.5 执行实例

1.5.1 PartitionField

分区配置

字段 类型 描述
fieldType String 字段类型
fieldName String 字段名称
fieldValue String 字段值
1.5.2 Job

执行实例数据对象

字段 类型 描述
jobId Number 执行实例ID
taskId Number 监控任务ID
taskName String 监控任务名称
scheduleType ScheduleTypeEnum 实例类型
datasourceType DatasourceTypeEnum 数据源类型
datasourceId Number 数据源ID,仅非Hive有
db String 库名/schema
table String 表名
partitionFields Array<PartitionField> 具体执行的分区配置
taskOwner User 监控负责人
tableOwner User 表负责人,仅非Hive有
startTime String 开始时间
endTime String 结束时间
status JobStatusEnum 任务状态/监控结果
planRuleNum Number 计划规则数
errorRuleNum Number 异常规则数
abnormalResultDatabaseName String 异常结果存储库名
abnormalResultTableName String 异常结果存储表名
abnormalResultPartitionField PartitionField 异常结果存储分区
1.5.3 JobResult

执行实例运行结果数据对象

字段 类型 描述
templateRuleResults Array<TemplateRuleResult> 模板规则结果数据
customRuleResults Array<CustomRuleResult> 自定义规则结果数据
standardRuleResults Array<CustomRuleResult> 标准推荐规则结果数据
1.5.4 TemplateRuleResult

模板规则结果对象

字段 类型 描述
id Number ID
interrupt Boolean 是否强规则
ruleId Number 规则模板ID
columnName String 字段名称,字段级规则有
ruleLevel RuleLevelEnum 规则类型
checkType CheckTypeEnum 校验类型
ruleName String 规则名称
expects Array<RuleExpect> 期望数据
actuals Array<RuleActualValue> 结果数据
pass Boolean 结果
description String 规则描述信息
abnormalDataSql String 异常规则sql
abnormalResultStorage Boolean 异常结果写入是否成功
1.5.5 CustomRuleResult

自定义规则结果对象JobResult

字段 类型 描述
id Number ID
interrupt Boolean 是否强规则
ruleLevel RuleLevelEnum 规则类型
checkType CheckTypeEnum 校验类型
ruleName String 规则名称
expects Array<RuleExpect> 字段自定义规则的期望数据
columnExpects Array<
RuleColumnExpect
>
自定义SQL的期望数据
actuals Array<RuleActualValue> 自定义SQL的结果数据
columnActuals Array<RuleColumnActualValue> 字段自定义规则的结果数据
pass Boolean 结果
description String 规则描述信息
abnormalDataSql String 异常规则sql
abnormalResultTableName String 结果表表名(自定义规则)
abnormalResultStorage Boolean 异常结果写入是否成功
1.5.6 RuleExpect

规则期望数据对象

字段 类型 描述
compareType CompareTypeEnum 校验方式
leftValue Number 阈值1
rightValue Number 阈值2
computeRuleType ComputeRuleTypeEnum 计算规则类型
referenceType ReferenceValueTypeEnum 参考值类型
referenceValue Number 基准值
1.5.7 RuleColumnExpect

规则字段期望数据对象

字段 类型 描述
index Number 序号,从1开始
column String 字段别名
expects Array<RuleExpect> 期望数据
1.5.8 RuleActualValue

规则实际运行结果数据对象

字段 类型 描述
compareType CompareTypeEnum 校验方式
leftValue Number 阈值1
rightValue Number 阈值2
computeRuleType ComputeRuleTypeEnum 计算规则类型
referenceType ReferenceValueTypeEnum 参考值类型
referenceValue Number 基准值
sampleValue String 采样结果数据
referenceResultValue String 参考结果数据
computeResultValue String 本次计算规则数据,可能为正负无穷,分别用字符串 infinity, -infinity 表示
1.5.9 RuleColumnActualValue

规则字段的实际运行结果数据对象

字段 类型 描述
index Number 序号,从1开始
column String 字段别名
actuals Array<RuleActualValue> 运行结果数据
1.5.10 OpenapiRunDqTaskInstanceIdVO

规则字段的实际运行结果数据对象

字段 类型 描述
id Number 质量监控任务实例ID

1.6 质量报告

1.6.1 RankedTable

表排序对象

字段 类型 描述
rank Number 排名数据,从1开始
datasourceType DatasourceTypeEnum 数据源类型
datasourceId Number 数据源ID
db String 库名/schema名
table String 表名
owner User 表负责人,仅Hive有
qualityScore Number 今日质量分
1.6.2 TablePg

表排序对象

字段 类型 描述
catalogName String 数据源
datasourceType String 数据源类型
dbName String 数据库名
tableName String 表名

1.7 形态探查

1.7.1 ExploreTask

形态探查任务列表信息

字段 类型 描述
taskId String 形态探查任务ID
taskName String 形态探查任务名称
db String 库名
table String 表名
partitionFields Array<PartitionField> 分区条件
otherFilter String 非分区过滤条件
description String 任务描述
createdTime String 任务创建时间
updatedTime String 任务最后修改时间
owner User 任务负责人
creator User 任务创建人
modifier User 任务最后修改人
1.7.2 ExploreTaskInstance

形态探查任务实例列表信息

字段 类型 描述
id String 形态探查任务实例ID
taskId String 形态探查任务ID
taskName String 形态探查任务名称
queueName String 执行队列
db String 库名/schema
table String 表名
partitionFields Array<PartitionField> 具体执行的分区配置
taskOwner User 监控负责人
creator User 任务执行人
startTime String 开始时间
endTime String 结束时间
status JobInstanceStatusEnum 任务状态/监控结果
logUrl String 任务运行日志url
1.7.3 ExploreTaskTableResult

形态探查任务表级结果

字段 类型 描述
totalCount String 总行数
distinctCount String 去重后行数
primaryKeys Array<String> 主键字段
uniqueFlag Boolean 主键是否唯一
1.7.4 ExploreTaskFieldResult

形态探查任务字段级结果

字段 类型 描述
columnName String 字段名称
columnType String 字段类型
exploreItems Array<ExploreTaskRuleTypeEnum> 启用形态探查规则类型
distinctCount String 去重后总行数
notNullCount String 非空行数
blankRatio String 空行比率
maxLength String 最大长度
maxLengthValue String 最大长度值预览
minLength String 最小长度
minLengthValue String 最小长度值预览
maxValue String 最大值
minValue String 最小值
1.7.5 ExploreTaskEnumIntanceResult

形态探查任务字枚举实例结果

字段 类型 描述
key String 枚举值
num Number 枚举值数量
proportion Number 数量占比
1.7.6 ExploreTaskEnumResult

形态探查任务字段级结果

字段 类型 描述
columnName String 字段名称
enumSize Number 枚举值类型总数
enumInstances Array<ExploreTaskEnumIntanceResult> 枚举实例结果
1.7.7 ExploreTaskInstanceID

形态探查任务实例ID

字段 类型 描述
id String 形态探查任务实例ID
1.7.8 ExploreTaskInstanceResult

形态探查任务实例结果详情

字段 类型 描述
id String 形态探查任务实例ID
exploreTask ExploreTask 执行时形态探查任务信息
jobExecuteParam JobExecuteParam 执行实例参数
creator User 任务执行人
startTime String 开始时间
endTime String 结束时间
status JobInstanceStatusEnum 任务状态/监控结果
logUrl String 日志Url
tableResult ExploreTaskTableResult 表级结果
fieldResults Array<ExploreTaskFiledResult> 字段级结果
enumResults Array<EploreTaskEnumResult> 枚举结果
1.7.9 JobExecuteParam

形态探查任务实例执行参数

字段 类型 描述
executorsNum Number spark executor并发数
driverMemory Number spark driver 内存大小,单位:MB
executorMemory Number spark executor 内存大小,单位:MB
parameters Array<JobRunParameter> 运行参数
queueName String 执行队列

二、OpenAPI列表

2.1 OpenAPI总览

模块名称支持版本状态请求方法请求路径
执行实例

查询执行实例列表v2.1.0,
v2.9.0
已上线GET/job/v1/list
查询执行实例运行结果v2.1.0,v2.7.0,
v2.9.0
已上线GET/job/v1/result
运行v3.3.0已上线POST/job/v1/run
质量报告查询今日表质量分排行v2.1.0已上线GET/quality/v1/table/rank
查询项目组下有表级质量报告的表列表v3.8.0开发中POST/quality/v1/table/list
形态探查查询形态探查任务列表v2.8.0已上线POST
运行形态探查任务v2.8.0已上线POST
查询形态探查任务实例列表v2.8.0已上线POST
查询形态探查任务实例详情v2.8.0已上线GET

2.2 基础信息

2.2 执行实例

2.2.1 查询执行实例列表

POST /job/v1/list

产品版本:v2.1.0、v2.9.0

描述:查询执行实例列表,按监控开始时间、数据源类型、监控负责人、表负责人、监控名称、表名、实例类型、实例ID 查询

URL参数/请求体

Content-Type: application/json

名称 类型 描述 必须 默认值
product String 项目ID(项目空间名称)
clusterId String 集群ID
user String 用户邮箱
pageNum Number 页码 1
pageSize Number 每页条数 10
datasourceType DatasourceTypeEnum 数据源类型
scheduleType ScheduleTypeEnum 调度类型
startTime Number 查询周期开始毫秒时间戳,默认今天开始时间 今天开始时间戳
endTime Number 查询周期结束毫秒时间戳,默认今天结束时间 今天结束时间戳
status JobStatusEnum 任务状态
taskOwners Array<String> 任务负责人邮箱,多选
tableOwners Array<String> 表负责人邮箱(仅hive有),多选
taskName String 监控名称(模糊匹配)
searchType Number 0 表示全部匹配,1 表示监控名称(模糊匹配) 2 表示表名称或者库表名(模糊匹配)
searchValue String 搜索关键词

请求示例:(注意鉴权信息需要额外添加,具体可以参考OpenAPI通用规范说明)


{

    "product": "WKEhVpR6Kb",

    "pageNum": 1,

    "clusterId": "56868",

    "pageSize": 10,

    "user": "bqOLc1RTBo",

    "datasourceType": "MYSQL",

    "taskOwners": \[

            "3hGdAMl1hP",

            "A2RdY0n3Ie",

            "eTzzcRSTXD"

    \],

    "tableOwners": \[

            "eSpXoCpxAW",

            "aOU2iCqmYz",

            "0qEm5tjEGJ"

    \],

    "scheduleType": 31641,

    "startTime": 1650542443020,

    "endTime": 1650541578929,

    "searchType": 2,

    "searchValue": "wwqCYsIcsK",

    "taskName": "T1eKScwmJX"

}

响应体

名称 类型 描述
code number 响应码
reqId string 请求ID
cost number 耗时
msg string 响应消息
result PageResult<Job> 执行实例列表数据

响应示例:


{

  "reqId": "sdfds8434sfdf",

  "code": 0,

  "msg": "success",

  "cost": 236,

  "result": {

    "pageSize": 100,

    "pageNum": 2,

    "totalCount": 1000,

    "totalPage": 10,

    "list": \[

      {

        "jobId": 99939,

        "taskId": 100752,

        "taskName": "tnPJMdBJ6E",

        "scheduleType": 9154,

        "datasourceType": "ORACLE",

        "datasourceId": 101194,

        "db": "Lg7RF0NyMX",

        "table": "BHwszDZpOE",

        "partitionFields": \[

          {

            "fieldType": "String",

            "fieldName": "date",

            "fieldValue": "2022-04-21"

          }

        \],

        "taskOwner": {

          "user": "ELFbM4nnHz",

          "fullName": "5q5bl9KG72"

        },

        "tableOwner": {

          "user": "ek3do9UKsG",

          "fullName": "zA64A5uHr7"

        },

        "startTime": "2022-04-22 10:00:00",

        "endTime": "2022-04-22 10:00:00",

        "status": 94392,

        "planRuleNum": 89147,

        "errorRuleNum": 58357

      }

    \]

  }

}
2.2.2 查询执行实例运行结果

GET /job/v1/result

产品版本:v2.1.0、v2.7.0、v2.9.0

描述:查询执行实例运行结果

URL参数/请求体

名称 类型 描述 必须 默认值
product String 项目ID(项目空间名称)
clusterId String 集群ID
user String 用户邮箱
jobId Number 执行实例ID

请求示例:(注意鉴权信息需要额外添加,具体可以参考OpenAPI通用规范说明)

?jobId=1&product=intern&clusterId=dev4&user=

响应体

名称 类型 描述
code number 响应码
reqId string 请求ID
cost number 耗时
msg string 响应消息
result JobResult 执行实例运行结果数据

响应示例:


{

  "reqId": "sdfds8434sfdf",

  "code": 0,

  "msg": "success",

  "cost": 236,

  "result": {

    "templateRules": \[

      {

        "id": 70974,

        "description": "3wX7phTccc",

        "disable": false,

        "interrupt": false,

        "columnName": "RV96kUIBbo",

        "ruleLevel": 0,

        "checkType": "-1",

        "ruleName": "88sgyMV30I",

        "actuals": \[

          {

            "sampleValue": "2orYakJpWL",

            "referenceResultValue": "tlArhi6os5",

            "computeResultValue": "Kj4UQ3wTgi",

            "compareType": "3",

            "leftValue": "1.0",

            "rightValue": "hfZwv5BKHt",

            "computeRuleType": "REFERENCE\_DIFFERENCE",

            "referenceType": "NTH\_DAYS\_LATEST",

            "referenceValue": 1

          }

        \],

        "expects": \[

          {

            "compareType": "6",

            "leftValue": "1.0",

            "rightValue": "IVOcT2rNwa",

            "computeRuleType": "REFERENCE\_DIFFERENCE",

            "referenceType": "NTH\_DAYS\_AVG",

            "referenceValue": 1

          }

        \],

        "pass": true,

        "abnormalDataSql": "select count(1) as num from \`test\`.\`test\`"

      }

    \],

    "customRules": \[

      {

        "id": 70974,

        "description": "3wX7phTccc",

        "disable": false,

        "interrupt": false,

        "columnName": "RV96kUIBbo",

        "ruleLevel": 0,

        "checkType": "-1",

        "ruleName": "88sgyMV30I",

        "actuals": \[

          {

            "sampleValue": "2orYakJpWL",

            "referenceResultValue": "tlArhi6os5",

            "computeResultValue": "Kj4UQ3wTgi",

            "compareType": "3",

            "leftValue": "1.0",

            "rightValue": "hfZwv5BKHt",

            "computeRuleType": "REFERENCE\_DIFFERENCE",

            "referenceType": "NTH\_DAYS\_LATEST",

            "referenceValue": 1

          }

        \],

        "expects": \[

          {

            "compareType": "6",

            "leftValue": "1.0",

            "rightValue": "IVOcT2rNwa",

            "computeRuleType": "REFERENCE\_DIFFERENCE",

            "referenceType": "NTH\_DAYS\_AVG",

            "referenceValue": 1

          }

        \],

        "pass": true,

        "abnormalDataSql": "select count(1) as num from \`test\`.\`test\`"

      }

    \],

    "standardRules": \[

      {

        "id": 70974,

        "description": "3wX7phTccc",

        "disable": false,

        "interrupt": false,

        "columnName": "RV96kUIBbo",

        "ruleLevel": 0,

        "checkType": "-1",

        "ruleName": "88sgyMV30I",

        "actuals": \[

          {

            "sampleValue": "2orYakJpWL",

            "referenceResultValue": "tlArhi6os5",

            "computeResultValue": "Kj4UQ3wTgi",

            "compareType": "3",

            "leftValue": "1.0",

            "rightValue": "hfZwv5BKHt",

            "computeRuleType": "REFERENCE\_DIFFERENCE",

            "referenceType": "NTH\_DAYS\_LATEST",

            "referenceValue": 1

          }

        \],

        "expects": \[

          {

            "compareType": "6",

            "leftValue": "1.0",

            "rightValue": "IVOcT2rNwa",

            "computeRuleType": "REFERENCE\_DIFFERENCE",

            "referenceType": "NTH\_DAYS\_AVG",

            "referenceValue": 1

          }

        \],

        "pass": true,

        "abnormalDataSql": "select count(1) as num from \`test\`.\`test\`"

      }

    \]

  }

}
2.2.3 运行质量监控任务

POST /job/v1/run

产品版本:v3.3.0

描述:运行质量监控任务

URL参数/请求体

名称 类型 描述 必须 默认值
product String 项目ID(项目空间名称)
clusterId String 集群ID
user String 用户邮箱
taskId Number 任务ID
queueName String 队列名称
parameters Array<JobRunParameter> 运行参数
ruleConcurrent Boolean 串行执行,空则使用监控配置
ruleMerge Boolean 规则合并,空则使用监控配置
noticeConditions Array<Number> 通知条件,0正常,1异常,2失败
noticeWays Array<Number> 通知方式

请求示例:(注意鉴权信息需要额外添加,具体可以参考OpenAPI通用规范说明)


{

"product": "intern",

"clusterId": "dev4",

"user": "zhulianxin@corp.netease.com",

"taskId": "50",

"queueName": "intern\_new",

  "parameters": \[\],

  "ruleConcurrent": true,

  "ruleMerge": true,

  "noticeConditions": \[1, 2\],

  "noticeWays": \[1\]

}

响应体

名称 类型 描述
code number 响应码
reqId string 请求ID
cost number 耗时
msg string 响应消息
result OpenapiRunDqTaskInstanceIdVO 包含质量监控任务执行实例id

响应示例:


{

  "reqId": "sdfds8434sfdf",

  "code": 0,

  "msg": "success",

  "cost": 236,

  "result": {

    "id": 111

  }

}

2.3 质量报告

2.3.1 查询今日表质量分排行

GET /quality/v1/table/rank

产品版本:v2.1.0

描述:查询今日表质量分排行

URL参数/请求体

名称 类型 描述 必须 默认值
product String 项目ID(项目空间名称)
clusterId String 集群ID
user String 用户邮箱
pageNum Number 页码 1
pageSize Number 每页条数 10
datasourceType DatasourceTypeEnum 数据源类型

请求示例:(注意鉴权信息需要额外添加,具体可以参考OpenAPI通用规范说明)

?datasourceType=&product=intern&clusterId=dev4&pageNum=1&pageSize=25

响应体

名称 类型 描述
code number 响应码
reqId string 请求ID
cost number 耗时
msg string 响应消息
result PageResult<RankedTable> 排好序的今日表质量分数据

响应示例:


{

  "reqId": "sdfds8434sfdf",

  "code": 0,

  "msg": "success",

  "cost": 236,

  "result": {

    "pageSize": 100,

    "pageNum": 2,

    "totalCount": 1000,

    "totalPage": 10,

    "list": \[

      {

        "rank": 1,

        "datasourceType": "HIVE",

        "datasourceId": "71284",

        "db": "jyu9Zf3xUF",

        "table": "k92CYClMKR",

        "owner": {

          "fullName": "9PQ2ZFrDNo",

          "user": "4hqyKH@hzATV.rrh"

        },

        "qualityScore": "9VwxyzAK1t"

      },

      {

        "rank": 1,

        "datasourceType": "ORACLE",

        "datasourceId": "71649",

        "db": "fgIOqwbZCe",

        "table": "BS5jp7VvlF",

        "owner": {

          "fullName": "ICm4HGItV5",

          "user": "jYlTLUhl@y3gLv.dct"

        },

        "qualityScore": "tuZQg5vU1w"

      },

      {

        "rank": 1,

        "datasourceType": "ORACLE",

        "datasourceId": "72142",

        "db": "pJh3V8RvsV",

        "table": "97eAZj3QH0",

        "owner": {

          "fullName": "oaeTmD2Yah",

          "user": "VYuJxv4@WlXQR.cwr"

        },

        "qualityScore": "HQNVhOTNNA"

      }

    \]

  }

}
2.3.2 查询项目组下有表级质量报告的表列表

POST /quality/v1/table/list

产品版本:v3.8.0

描述:查询项目组下有表级质量报告的表列表

URL参数/请求体

名称 类型 描述 必须 默认值
pgId Number 项目组id
email String 账号
datasourceType String 数据源类型
tableOwner String 表技术负责人,hive独有
subjectFullIdList Array<String> 主题域列表,hive独有
tableLayerList Array<String> 表分层列表,hive独有
pageNum Number 页码 1
pageSize Number 每页条数 10

请求示例:


{

    "pgId": 65,

    "email": "yan",

    "datasourceType": "hive",

    "tableLayerList": \["dim"\],

    "subjectFullIdList":\["608/787"\],

    "tableOwner":"zhaomin3@corp.netease.com",

    "pageNum": 1,

    "pageSize": 10

}

响应体

名称 类型 描述
code number 响应码
reqId string 请求ID
cost number 耗时
msg string 响应消息
result PageResult<TablePg> 表列表

响应示例:


{

"code":0,

"reqId":"074fb9a4a4a74725928da65850fc4c61",

"cost":107,

"result":{

    "count":2,

    "pageNum":1,

    "pageSize":10,

    "list":\[

    {

    "catalogName":"dev4-catalog",

    "datasourceType":"hive",

    "dbName":"dev",

    "tableName":"ads\_test",

    },

    {

    "catalogName":"dev4-catalog",

    "datasourceType":"hive",

    "dbName":"jinyx\_hivedb",

    "tableName":"dqc\_demo\_07",

    }

    \],

    "hasMore":false

    }

}

2.4 形态探查

2.4.1 查询形态探查任务列表

POST /explore-task/v1/list

产品版本:v2.8.0

描述:查询形态探查任务列表,可按修改时间、任务负责人、表名、任务名称查询

URL参数/请求体

Content-Type: application/json

名称 类型 描述 必须 默认值
product String 项目ID(项目空间名称)
clusterId String 集群ID
user String 用户邮箱
pageNum Number 页码 1
pageSize Number 每页条数 10
modifyStartTime Number 修改时间开始毫秒时间戳
modifyEndTime Number 修改时间结束毫秒时间戳
table String 表名称,模糊查询
taskOwners Array<String> 任务负责人邮箱,多选
taskName String 任务名称,模糊查询

请求示例:


{

"product": "intern",

"clusterId": "easyops-cluster",

"pageNum": 1,

"pageSize": 10,

"user": "zhulianxin@corp.netease.com",

"modifyStartTime": 1670241780699,

"modifyEndTime": 1670241830681,

"table": "rQoj5mDFxz",

"taskOwners": \[

"DlNdSBWpV8",

"FEwNp4SUeF",

"JxjKPGWRBg"

\],

"taskName": "7zIZhfH5n0"

}

响应体

名称 类型 描述
code number 响应码,可能返回 -2 等异常状态码,含义见[1.2 异常响应码]
reqId string 请求ID
cost number 耗时
msg string 响应消息
result PageResult<ExploreTask> 形态探查任务列表数据

响应示例:


{

    "code": 0,

    "msg": null,

    "result": {

        "pageSize": 10,

        "pageNum": 1,

        "totalCount": 38,

        "list": \[

            {

                "taskId": "52",

                "taskName": "20221212202354\_探查hive.cwztest3.b\_cwztest2\_sub2\_ccz\_df\_a\_copy",

                "db": "cwztest3",

                "table": "cwz",

                "partitionFields": \[

                    {

                        "fieldType": "string",

                        "fieldName": "e",

                        "fieldValue": "${azkaban.flow.1.days.ago}"

                    }

                \],

                "otherFilter": "1=1 and 2=2",

                "owner": {

                    "user": "zhulianxin@corp.netease.com",

                    "fullName": "祝联新"

                },

                "creator": {

                    "user": "zhulianxin@corp.netease.com",

                    "fullName": "祝联新"

                },

                "modifier": {

                    "user": "zhulianxin@corp.netease.com",

                    "fullName": "华昊泽"

                },

                "mode": "online"

            },

            {

                "taskId": "50",

                "taskName": "20221123194639\_探查hive.cwz11\_dev.gaolong\_test",

                "db": "cwz11\_dev",

                "table": "gaolong\_test",

                "description": "sadsadasddsadasd",

                "owner": {

                    "user": "zengxiaomin@corp.netease.com",

                    "fullName": "曾晓敏"

                },

                "creator": {

                    "user": "zengxiaomin@corp.netease.com",

                    "fullName": "曾晓敏"

                },

                "modifier": {

                    "user": "zengxiaomin@corp.netease.com",

                    "fullName": "曾晓敏"

                },

                "mode": "dev"

            },

            {

                "taskId": "49",

                "taskName": "20221123193724\_探查hive.cwz11\_dev.gaolong\_test",

                "db": "cwz11\_dev",

                "table": "gaolong\_test",

                "description": "asdasd是的撒的sss",

                "owner": {

                    "user": "zengxiaomin@corp.netease.com",

                    "fullName": "曾晓敏"

                },

                "creator": {

                    "user": "zengxiaomin@corp.netease.com",

                    "fullName": "曾晓敏"

                },

                "modifier": {

                    "user": "zengxiaomin@corp.netease.com",

                    "fullName": "曾晓敏"

                },

                "mode": "online"

            },

            {

                "taskId": "48",

                "taskName": "20221116163329\_探查hive.dev45.ods\_eto\_az\_exec\_job\_1d",

                "db": "chensuan",

                "table": "test",

                "otherFilter": "1=2",

                "description": "dasdasdasdasd",

                "owner": {

                    "user": "huahaoze@corp.netease.com",

                    "fullName": "华昊泽"

                },

                "creator": {

                    "user": "huahaoze@corp.netease.com",

                    "fullName": "华昊泽"

                },

                "modifier": {

                    "user": "huahaoze@corp.netease.com",

                    "fullName": "祝联新"

                },

                "mode": "online"

            },

            {

                "taskId": "47",

                "taskName": "���",

                "db": "cwz",

                "table": "ods\_ei\_index2",

                "partitionFields": \[

                    {

                        "fieldType": "string",

                        "fieldName": "pt",

                        "fieldValue": "${azkaban.flow.1.days.ago}"

                    }

                \],

                "description": "描述",

                "owner": {

                    "user": "zengxiaomin@corp.netease.com",

                    "fullName": "曾晓敏"

                },

                "creator": {

                    "user": "zengxiaomin@corp.netease.com",

                    "fullName": "曾晓敏"

                },

                "modifier": {

                    "user": "zengxiaomin@corp.netease.com",

                    "fullName": "曾晓敏"

                },

                "mode": "dev"

            },

            {

                "taskId": "46",

                "taskName": "20221031150733\_探查hive.data\_transform.docs\_1000",

                "db": "data\_transform",

                "table": "docs\_1000",

                "owner": {

                    "user": "xuchuqiao@corp.netease.com",

                    "fullName": "徐楚翘"

                },

                "creator": {

                    "user": "xuchuqiao@corp.netease.com",

                    "fullName": "徐楚翘"

                },

                "modifier": {

                    "user": "xuchuqiao@corp.netease.com",

                    "fullName": "徐楚翘"

                },

                "mode": "dev"

            },

            {

                "taskId": "45",

                "taskName": "20221031105914\_探查hive.default.test\_a",

                "db": "default",

                "table": "test\_a",

                "owner": {

                    "user": "zhulianxin@corp.netease.com",

                    "fullName": "祝联新"

                },

                "creator": {

                    "user": "zhulianxin@corp.netease.com",

                    "fullName": "祝联新"

                },

                "modifier": {

                    "user": "zhulianxin@corp.netease.com",

                    "fullName": "祝联新"

                },

                "mode": "dev"

            },

            {

                "taskId": "44",

                "taskName": "20221028150002\_探查hive.cwz.cwztestdmla",

                "db": "hzluzhonghao",

                "table": "sparktest",

                "description": "sss",

                "owner": {

                    "user": "zengxiaomin@corp.netease.com",

                    "fullName": "曾晓敏"

                },

                "creator": {

                    "user": "zengxiaomin@corp.netease.com",

                    "fullName": "曾晓敏"

                },

                "modifier": {

                    "user": "zengxiaomin@corp.netease.com",

                    "fullName": "曾晓敏"

                },

                "mode": "dev"

            },

            {

                "taskId": "43",

                "taskName": "20221028104257\_探查hive.intern\_new.src\_t2\_v602",

                "db": "intern\_new",

                "table": "src\_t2\_v602",

                "owner": {

                    "user": "zhulianxin@corp.netease.com",

                    "fullName": "祝联新"

                },

                "creator": {

                    "user": "zhulianxin@corp.netease.com",

                    "fullName": "祝联新"

                },

                "modifier": {

                    "user": "zhulianxin@corp.netease.com",

                    "fullName": "华昊泽"

                },

                "mode": "dev"

            },

            {

                "taskId": "42",

                "taskName": "20221028103124\_探查hive.intern\_new.src\_t1\_v602",

                "db": "intern\_new",

                "table": "src\_t1\_v602",

                "owner": {

                    "user": "zhulianxin@corp.netease.com",

                    "fullName": "祝联新"

                },

                "creator": {

                    "user": "zhulianxin@corp.netease.com",

                    "fullName": "祝联新"

                },

                "modifier": {

                    "user": "zhulianxin@corp.netease.com",

                    "fullName": "祝联新"

                },

                "mode": "dev"

            }

        \]

    },

    "reqId": "b45bd7089131404baf4660acd0d263f3",

    "cost": 15

}
2.4.2 运行形态探查任务

POST /explore-task/v1/run

产品版本:v2.8.0

描述:运行形态探查任务,用户需要有探查任务中表的读权限和队列的使用权限

URL参数/请求体

Content-Type: application/json

名称 类型 描述 必须 默认值
product String 项目ID(项目空间名称)
clusterId String 集群ID
user String 用户邮箱
taskId String 任务ID
queueName String 队列
yarnId String yarn队列ID
yarnName String yarn队列Name
executorsNum Number spark executor并发数 4
driverMemory Number spark driver 内存大小,单位:MB 2048
executorMemory Number spark executor 内存大小,单位:MB 2048
parameters Array<JobRunParameter> 运行参数
partitionFields Array<PartitionField> 分区过滤条件,填入后替换形态探查中的分区过滤条件,如果不填默认使用形态探查任务中的分区过滤条件

请求示例:


{

"product": "intern",

"clusterId": "dev4",

"user": "zhulianxin@corp.netease.com",

"taskId": "50",

"queueName": "intern\_new",

"yarnId": "default",

"yarnName": "默认Yarn集群",

"partitionFields": \[{

"fieldName": "1",

"fieldValue": "2",

"fieldType": "string"

}\],

        "authType": "TEST"

}

响应体

名称 类型 描述
code number 响应码,可能返回 1403, 1404 -2 等异常状态码,含义见[1.2 异常响应码]
reqId string 请求ID
cost number 耗时
msg string 响应消息
result ExploreTaskInstanceID 包含形态探查任务Id

响应示例


{

    "code": 0,

    "msg": null,

    "result": {

        "id": "120"

    },

    "reqId": "79d1c59bb2bf4b3881a15b386727db55",

    "cost": 444

}
2.4.3 查询形态探查任务实例列表

POST /explore-task/v1/instance/list

产品版本:v2.8.0

描述:查询形态探查任务实例列表

URL参数/请求体

Content-Type: application/json

名称 类型 描述 必须 默认值
product String 项目ID(项目空间名称)
clusterId String 集群ID
user String 用户邮箱
taskId String 任务ID
pageNum Number 页码 1
pageSIze Number 每页条数 10

请求示例:


{

"product": "intern",

"clusterId": "dev4",

"user": "zhulianxin@corp.netease.com",

"taskId": "43",

"pageNum": 1,

"pageSize": 3,

        "authType": "TEST"

}

响应体

名称 类型 描述
code number 响应码,可能返回 -2 等异常状态码,含义见[1.2 异常响应码]
reqId string 请求ID
cost number 耗时
msg string 响应消息
result PageResult<ExploreTaskInstance> 形态探查任务实例列表

响应示例


{

    "code": 0,

    "msg": null,

    "result": {

        "pageSize": 3,

        "pageNum": 1,

        "totalCount": 1,

        "list": \[

            {

                "id": "77",

                "taskId": "43",

                "taskName": "20221028104257\_探查hive.intern\_new.src\_t2\_v602",

                "queueName": "intern\_new",

                "db": "intern\_new",

                "table": "src\_t2\_v602",

                "taskOwner": {

                    "user": "zhulianxin@corp.netease.com",

                    "fullName": "祝联新"

                },

                "creator": {

                    "user": "zhulianxin@corp.netease.com",

                    "fullName": "祝联新"

                },

                "startTime": "2022-10-31 10:59:43",

                "endTime": "2022-10-31 11:01:57",

                "status": 3,

                "logUrl": "https://easydata-dev.bdms.netease.com/dataquality/instance/log/77?product=intern&clusterId=dev4&execId=3581020&type=1"

            }

        \]

    },

    "reqId": "35f4d4185cd6457baa09351e9d125297",

    "cost": 20

}
2.4.4 查询形态探查任务实例结果

GET /explore-task/v1/instance-result/get

产品版本:v2.8.0

描述:查询形态探查任务实例结果

URL参数

名称 类型 描述 必须 默认值
product String 项目ID(项目空间名称)
clusterId String 集群ID
user String 用户邮箱
id String 任务实例ID

请求示例:

product=intern&clusterId=dev4&user=zhulianxin@corp.netease.com&id=105

响应体

名称 类型 描述
code number 响应码,可能返回 1404 -2 等异常状态码,含义见[1.2 异常响应码]
reqId string 请求ID
cost number 耗时
msg string 响应消息
result ExploreTaskInstanceResult 形态探查任务实例详情

响应示例


{

    "code": 0,

    "msg": null,

    "result": {

        "id": "105",

        "exploreTask": {

            "taskId": "46",

            "taskName": "20221031150733\_探查hive.data\_transform.docs\_1000",

            "db": "data\_transform",

            "table": "docs\_1000",

            "createdTime": "2022-10-31 15:08:24",

            "updatedTime": "2022-11-10 16:39:23"

        },

        "jobExecuteParam": {

            "executorsNum": 4,

            "driverMemory": 2048,

            "executorMemory": 2048,

            "queueName": "intern\_1"

        },

        "creator": {

            "user": "xuchuqiao@corp.netease.com",

            "fullName": "徐楚翘"

        },

        "startTime": "2022-12-08 10:27:30",

        "endTime": "2022-12-08 10:27:31",

        "status": 5,

        "logUrl": "https://easydata-dev.bdms.netease.com/dataquality/instance/log/105?product=intern&clusterId=dev4&execId=3620016&type=1"

    },

    "reqId": "290cb2d9b49542ae8c8c1acdebbd1bb0",

    "cost": 6

}