更新时间:2022-08-02 GMT+08:00
分享

批量数据加工

功能介绍

数据复制服务支持对同步的对象进行加工,即可以为选择的对象添加规则。

调试

您可以在API Explorer中调试该接口,支持自动认证鉴权。API Explorer可以自动生成SDK代码示例,并提供SDK代码示例调试功能。

接口约束

  • 每张表仅支持添加一个校验规则。
  • Oracle为源库的数据过滤每次最多支持20000张表,MySQL为源库的数据过滤每次最多支持10000张表。
  • 过滤条件不支持使用某种数据库引擎特有的packege、函数、变量、常量等写法,须使用通用SQL标准。

URI

POST /v3/{project_id}/jobs/batch-transformation

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

租户在某一Region下的Project ID。

请求参数

表2 请求Header参数

参数

是否必选

参数类型

描述

Content-Type

String

指定类型为application/json。

缺省值:application/json

X-Auth-Token

String

从IAM服务获取的用户Token。

X-Language

String

请求语言类型。

缺省值:en-us

取值:

  • en-us
  • zh-cn
表3 请求Body参数

参数

是否必选

参数类型

描述

jobs

Array of CheckDataTransformationReq objects

批量数据加工规则请求列表。

表4 CheckDataTransformationReq

参数

是否必选

参数类型

描述

job_id

String

任务ID。

object_info

Array of DatabaseObjectVO objects

对象信息,生成加工规则时需要填写。

transformation_info

TransformationInfo object

加工信息。

config_transformation

ConfigTransformationVo object

  • 配置信息,如果存在多张关联表,请生成多条配置规则。满足配置条件的数据将暂存到缓存中,在数据过滤的场景进行使用。
  • 配置的库名和表名支持数字、字母和下划线。
  • 配置的列名、主键、索引,请确保与源库配置表的字段名保持大小写一致。
表5 DatabaseObjectVO

参数

是否必选

参数类型

描述

id

String

数据库名称和数据库表名称,例如格式为lxl_test1-*-*-test_1,其中lxl_test1为数据库名称,test_1为表名称。

select

String

是否选择高级配置,值为true。

表6 TransformationInfo

参数

是否必选

参数类型

描述

transformation_type

String

  • 生成加工规则值为contentConditionalFilter。
  • 生成配置规则值为configConditionalFilter。

    取值:

    • contentConditionalFilter
    • configConditionalFilter

value

String

过滤条件,生成加工规则值为sql条件语句,生成配置规则值为config。长度限制256。

表7 ConfigTransformationVo

参数

是否必选

参数类型

描述

db_table_name

String

库名.表名,例如格式为lxl_test1.test_1,其中lxl_test1为库名,test_1为表名。

db_name

String

库名。长度限制256。

table_name

String

表名。长度限制256。

col_names

String

列名。长度限制256。

prim_key_or_index

String

主键或唯一索引。长度限制256。

indexs

String

优化查询所需的索引。长度限制256。

values

String

过滤条件。长度限制256。

响应参数

状态码: 200

表8 响应Body参数

参数

参数类型

描述

results

Array of DataTransformationResp objects

批量数据加工响应列表。

count

String

总数。

表9 DataTransformationResp

参数

参数类型

描述

id

String

任务ID。

status

String

状态。取值:

  • success
  • failed

error_code

String

错误码。

error_msg

String

错误信息。

请求示例

  • MySQL数据生成配置规则示例:
    https://{EndPoint}/v3/054ba152d480d55b2f5dc0069e7ddef0/jobs/batch-transformation
    {
      "jobs" : [ {
        "job_id" : "e894593d-5e0a-4652-af7e-1b0c239jb201",
        "object_info" : [ ],
        "transformation_info" : {
          "transformation_type" : "configConditionalFilter",
          "value" : "config"
        },
        "config_transformation" : {
          "col_names" : "id,name",
          "db_name" : "lxl_test1",
          "db_table_name" : "lxl_test1.test_1",
          "indexs" : "name",
          "prim_key_or_index" : "id",
          "table_name" : "test_1",
          "values" : "name like '%a%'"
        }
      } ]
    }
  • MySQL数据生成加工规则示例:
    https://{EndPoint}/v3/054ba152d480d55b2f5dc0069e7ddef0/jobs/batch-transformation
    {
      "jobs" : [ {
        "job_id" : "e894593d-5e0a-4652-af7e-1b0c239jb201",
        "object_info" : [ {
          "id" : "lxl_test1-*-*-test_1",
          "select" : "true"
        } ],
        "transformation_info" : {
          "transformation_type" : "contentConditionalFilter",
          "value" : "id>5"
        }
      } ]
    }

响应示例

状态码: 200

OK

{
  "count" : 1,
  "results" : [ {
    "id" : "e894593d-5e0a-4652-af7e-1b0c239jb201",
    "status" : "success"
  } ]
}

状态码

状态码

描述

200

OK

400

Bad Request

错误码

请参见错误码

分享:

    相关文档

    相关产品

close