详情页标题前

阿里云大数据开发治理平台 DataWorksAnalyticDB for MySQL 3.0数据源-云淘科技

详情页1

AnalyticDB MySQL 3.0数据源为您提供读取和写入AnalyticDB MySQL 3.0双向通道的功能,本文为您介绍DataWorks的AnalyticDB for MySQL 3.0数据同步的能力支持情况。

使用限制

  • ADB湖仓版数据源不支持在公共资源组配置以及运行同步任务。

  • 如果ADB数据源配置的实例从数仓版切换到了湖仓版,使用该数据源运行在公共资源组上的同步任务将会失败,建议切换前,确认是否有运行在公共资源组上的同步任务,并且将其切换到独享资源组运行。

  • 离线同步支持读取视图(VIEW)

支持的字段类型

离线读

AnalyticDB for MySQL 3.0 Reader针对AnalyticDB for MySQL 3.0类型的转换列表,如下表所示。

类型分类

AnalyticDB for MySQL 3.0类型

整数类

INT、INTEGER、TINYINT、SMALLINT和BIGINT

浮点类

FLOAT、DOUBLE和DECIMAL

字符串类

VARCHAR

日期时间类

DATE、DATETIME、TIMESTAMP和TIME

布尔类

BOOLEAN

离线写

AnalyticDB for MySQL 3.0 Writer针对AnalyticDB for MySQL 3.0类型的转换列表,如下所示。

类型

AnalyticDB for MySQL 3.0数据类型

整数类

INT、INTEGER、TINYINT、SMALLINT和BIGINT

浮点类

FLOAT、DOUBLE和DECIMAL

字符串类

VARCHAR

日期时间类

DATE、DATETIME、TIMESTAMP和TIME

布尔类

BOOLEAN

数据同步任务开发

MaxCompute数据同步任务的配置入口和通用配置流程指导可参见下文的配置指导,详细的配置参数解释可在配置界面查看对应参数的文案提示。

创建数据源

在进行数据同步任务开发时,您需要在DataWorks上创建一个对应的数据源,操作流程请参见创建与管理数据源。

单表离线同步任务配置指导

  • 操作流程请参见通过向导模式配置离线同步任务、通过脚本模式配置离线同步任务。

  • 脚本模式配置的全量参数和脚本Demo请参见下文的附录:脚本Demo与参数说明。

单表及整库实时同步任务配置指导

操作流程请参见DataStudio侧实时同步任务配置。

整库离线读、单表或整库全增量实时写等整库级别同步配置指导

操作流程请参见数据集成侧同步任务配置。

附录:脚本Demo与参数说明

附录:离线任务脚本配置方式

如果您配置离线任务时使用脚本模式的方式进行配置,您需要在任务脚本中按照脚本的统一格式要求编写脚本中的reader参数和writer参数,脚本模式的统一要求请参见通过脚本模式配置离线同步任务,以下为您介绍脚本模式下的数据源的Reader参数和Writer参数的指导详情。

Reader脚本Demo

{
"type": "job",
"steps": [
{ 
"stepType": "analyticdb_for_mysql", //插件名。
"parameter": {
"column": [ //列名。
"id",
"value",
"table"
],
"connection": [
{
"datasource": "xxx", //数据源。
"table": [ //表名。
"xxx"
]
}
],
"where": "", //过滤条件。
"splitPk": "", //切分键。
"encoding": "UTF-8" //编码格式。
},
"name": "Reader",
"category": "reader"
},
{ 
"stepType": "stream",
"parameter": {},
"name": "Writer",
"category": "writer"
}
],
"version": "2.0",
"order": {
"hops": [
{
"from": "Reader",
"to": "Writer"
}
]
},
"setting": {
"errorLimit": {
"record": "0" //同步过程中的错误记录限制数。
},
"speed": {
"throttle":true,//当throttle值为false时,mbps参数不生效,表示不限流;当throttle值为true时,表示限流。
                        "concurrent":1 //作业并发数。
                      "mbps":"12"//限流,此处1mbps = 1MB/s。
}
}
}

Reader脚本参数

参数

描述

是否必选

默认值

datasource

数据源名称,脚本模式支持添加数据源,此配置项填写的内容必须要与添加的数据源名称保持一致。

table

所选取的需要同步的表。

column

所配置的表中需要同步的列名集合,使用JSON的数组描述字段信息,默认使用所有列配置,例如[ * ]。

  • 支持列裁剪,即列可以挑选部分列进行导出。

  • 支持列换序,即列可以不按照表组织结构信息的顺序进行导出。

  • 支持常量配置,您需要按照MySQL的语法格式,例如[“id”, “`table`“, “1”, “‘bazhen.csy’”, “null”, “to_char(a + 1)”, “2.3” , “true”]

    • id为普通列名。

    • table包含保留的列名。

    • 1为整型数字常量。

    • bazhen.csy为字符串常量。

    • null为空指针。

    • to_char(a + 1)为计算字符串长度函数表达式。

    • 2.3为浮点数。

    • true为布尔值。

  • column必须显示您指定同步的列集合,不允许为空 。

splitPk

AnalyticDB for MySQL 3.0 Reader进行数据抽取时,如果指定splitPk,表示您希望使用splitPk代表的字段进行数据分片,数据同步因此会启动并发任务进行数据同步,提高数据同步的效能。

  • 推荐splitPk用户使用表主键,因为表主键通常情况下比较均匀,因此切分出来的分片也不容易出现数据热点。

  • 目前splitPk仅支持整型数据切分,不支持字符串、浮点和日期等其他类型 。如果您指定其他非支持类型,忽略splitPk功能,使用单通道进行同步。

  • 如果不填写splitPk,包括不提供splitPk或者splitPk值为空,数据同步视作使用单通道同步该表数据 。

where

筛选条件,在实际业务场景中,往往会选择当天的数据进行同步,将where条件指定为gmt_create>$bizdate

  • where条件可以有效地进行业务增量同步。如果不填写where语句,包括不提供where的key或value,数据同步均视作同步全量数据。

  • 不可以将where条件指定为limit 10,这不符合MySQL SQL WHERE子句约束。

Writer脚本Demo

{
"type": "job",
"steps": [
{
"stepType": "stream",
"parameter": {},
"name": "Reader",
"category": "reader"
},
{
"stepType": "analyticdb_for_mysql", //插件名。
"parameter": {
"postSql": [], //导入后的准备语句。
"tableType": null, //保留字段,默认空。
"datasource": "hangzhou_ads", //数据源名称。
"column": [ //同步字段。
"id",
"value"
],
"guid": null,
"writeMode": "insert", //写入模式,请参见writeMode参数说明。
"batchSize": 2048, //批量写入的大小,请参见batchSize参数说明。
"encoding": "UTF-8", //编码格式。
"table": "t5", //写入的表名。
"preSql": [] //导入前的准备语句。
},
"name": "Writer",
"category": "writer"
}
],
"version": "2.0", //配置文件格式的版本号。
"order": {
"hops": [
{
"from": "Reader",
"to": "Writer"
}
]
},
"setting": {
"errorLimit": {
"record": "0" //错误记录数。
},
"speed": {
"throttle":true,//当throttle值为false时,mbps参数不生效,表示不限流;当throttle值为true时,表示限流。
                        "concurrent":2, //作业并发数。
                        "mbps":"12"//限流,此处1mbps = 1MB/s。
}
}
}

Writer脚本参数

参数

描述

是否必选

默认值

datasource

数据源名称,脚本模式支持添加数据源,此配置项填写的内容必须与添加的数据源名称保持一致。

table

选取的需要同步的表名称。

writeMode

选择导入模式,可以支持insert 、replace和update三种方式。

  • insert :当没有遇到主键/唯一性索引冲突时,数据正常写入。当主键/唯一性索引冲突时会写不进去冲突的行,以脏数据的形式体现。

  • replace :没有遇到主键/唯一性索引冲突时,与insert行为一致。冲突时会先删除原有行,再插入新行。即新行会替换原有行的所有字段。

  • update:没有遇到主键/唯一性索引冲突时,与insert行为一致。冲突时会使用新行替换原有行的所有字段(仅脚本模式支持)。

insert

column

目标表需要写入数据的字段,字段之间用英文所逗号分隔,例如"column": ["id", "name", "age"]。如果要依次写入全部列,使用*表示, 例如"column": ["*"]

说明

如果字段名中包含select,请在字段名前后加上反引号。例如,item_select_no需要写为`item_select_no`。

preSql

执行数据同步任务之前率先执行的SQL语句。目前向导模式仅允许执行一条SQL语句,脚本模式可以支持多条SQL语句,例如清除旧数据。

说明

当有多条SQL语句时,不支持事务。

postSql

执行数据同步任务之后执行的SQL语句,目前向导模式仅允许执行一条SQL语句,脚本模式可以支持多条SQL语句,例如加上某一个时间戳。

说明

当有多条SQL语句时,不支持事务。

batchSize

一次性批量提交的记录数大小,该值可以极大减少数据同步系统与MySQL的网络交互次数,并提升整体吞吐量。如果该值设置过大,会导致数据同步运行进程OOM异常。

1,024

内容没看懂? 不太想学习?想快速解决? 有偿解决: 联系专家

阿里云企业补贴进行中: 马上申请

腾讯云限时活动1折起,即将结束: 马上收藏

同尘科技为腾讯云授权服务中心。

购买腾讯云产品享受折上折,更有现金返利:同意关联,立享优惠

转转请注明出处:https://www.yunxiaoer.com/171441.html

(0)
上一篇 2023年12月10日
下一篇 2023年12月10日
详情页2

相关推荐

  • 阿里云日志服务SLS云产品日志通用操作-云淘科技

    您在各个云产品控制台开通日志功能后,即可执行日志服务相关操作。 常用操作 采集到云产品日志后,您可以执行如下操作。 操作 说明 查询和分析日志 查询和分析日志。具体操作,请参见查询和分析日志。 查询和分析时序数据 查询和分析时序数据。具体操作,请参见查询和分析时序数据。 查看原始日志 在查询和分析页面,查看原始日志。 快速分析 快速分析日志字段。具体操作,请…

    2023年12月10日
  • 阿里云日志服务SLS如何使用Logtail容器快速诊断工具-云淘科技

    在阿里云Kubernetes集群或自建Kubernetes集群中使用Logtail采集日志发生异常时,您可以通过Logtail容器自助诊断工具查看客户端是否存在异常情况,根据工具提示快速定位并解决问题。诊断工具仅通过必要资源的信息进行诊断。诊断过程中,对您的Kubernetes环境无侵入。本文主要介绍如何使用Logtail容器快速诊断工具。 步骤一:下载及运…

    阿里云日志服务SLS 2023年12月10日
  • 阿里云日志服务SLS时序库(MetricStore)-云淘科技

    时序库(MetricStore)是日志服务中时序数据的采集、存储和查询单元。 每个MetricStore隶属于一个Project,每个Project中可创建多个MetricStore。您可以根据实际需求为某个项目创建多个MetricStore,一般是为不同类型的时序数据创建不同的MetricStore。例如您需要采集基础主机监控数据、云服务监控数据、业务应用…

    阿里云日志服务SLS 2023年12月10日
  • 信息流广告,信息流部分建议宽度830px,只针对默认列表样式,顺序随机
  • 阿里云日志服务SLS概述-云淘科技

    Telegraf是InfluxData开发的数据采集器,支持众多的输入输出插件(例如MySQL、Redis、Elasticsearch等),在开源领域被广泛使用。本文介绍Telegraf的工作机制、安装步骤及采集方式。 工作机制 日志服务基于Telegraf开发的监控模板,支持将Telegraf采集的监控数据(MySQL监控数据、Redis监控数据、Elas…

    2023年12月10日
  • 阿里云ECS云服务器DescribeUserData-云淘科技

    调用DescribeUserData查询一台ECS实例的自定义数据。 接口说明 返回的实例自定义数据将以Base64编码的方式显示。 如果实例不存在自定义数据,则返回空值。 调试 您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。 请求参数 名称 类型 是否…

    阿里云服务器 2023年12月9日

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信
本站为广大会员提供阿里云、腾讯云、华为云、百度云等一线大厂的购买,续费优惠,保证底价,买贵退差。