738
魔兽
DRDSWriter__Writer插件_使用手册_数据集成-阿里云
1 快速介绍
DRDSWriter 插件实现了写入数据到 DRDS 的目的表的功能。在底层实现上, DRDSWriter 通过 JDBC 连接远程 DRDS 数据库的 Proxy,并执行相应的 replace into ... 的 sql 语句将数据写入 DRDS,特别注意执行的 Sql 语句是 replace into,为了避免数据重复写入,需要你的表具备主键或者唯一性索引(Unique Key)。
DRDSWriter 面向ETL开发工程师,他们使用 DRDSWriter 从数仓导入数据到 DRDS。同时 DRDSWriter 亦可以作为数据迁移工具为DBA等用户提供服务。
2 实现原理
DRDSWriter 通过 CDP 框架获取 Reader 生成的协议数据,通过 replace into...
(没有遇到主键/唯一性索引冲突时,与 insert into 行为一致,冲突时会用新行替换原有行所有字段) 的语句写入数据到 DRDS。DRDSWriter 累积一定数据,提交给 DRDS 的 Proxy,该 Proxy 内部决定数据是写入一张还是多张表以及多张表写入时如何路由数据。
注意:整个任务至少需要具备 replace into...的权限,是否需要其他权限,取决于你任务配置中在 preSql 和 postSql 中指定的语句。
3 功能说明
3.1 配置样例
- 配置一个写入DRDS的作业。
{
"type": "job",
"traceId": "您可以在这里填写您作业的追踪ID,建议使用业务名+您的作业ID",
"version": "1.0",
"configuration": {
"reader": {
"plugin": "sqlserver",
"parameter": {
"instanceName": "rds.aliyun.com",
"username": "username",
"password": "password",
"table": "table",
"column": [
"*"
],
"where": "1 = 1"
}
},
"writer": {
"plugin": "drds",
"parameter": {
"writeMode": "replace",
"jdbcUrl": "jdbc:mysql://ip:port/database",
"username": "username",
"password": "password",
"table": "table",
"column": [
"*"
],
"preSql": [
"delete from XXX;"
]
}
}
}
}
3.2 参数说明
- jdbcUrl
- 描述:jdbc连接信息,使用mysql的jdbc协议格式填写内容。
- 必选:是
- 默认值:无
- username
- 描述:数据源的用户名
- 必选:是
- 默认值:无
- password
- 描述:数据源指定用户名的密码
- 必选:是
- 默认值:无
- table
- 描述:所选取的需要同步的表。
- 必选:是
- 默认值:无
- writeMode
- 描述: 选择导入模式,可以支持replace/insert ignore方式,
- replace指没有遇到主键/唯一性索引冲突时,与 insert行为一致,当主键/唯一性索引冲突时会用新行替换原有行所有字段。
- insert ignore指当主键/唯一性索引冲突,CDP将直接忽略更新丢弃,并且不记录!
- 必选:否
- 默认值:insert
- 描述: 选择导入模式,可以支持replace/insert ignore方式,
- column
- 描述:所配置的表中需要同步的列名集合。以英文逗号(,)进行分隔。
我们强烈不推荐用户使用默认列情况
- 必选:是
- 默认值:无
- 描述:所配置的表中需要同步的列名集合。以英文逗号(,)进行分隔。
- preSql
- 描述:执行数据同步任务之前率先执行的sql语句,目前只允许执行一条SQL语句,例如清除旧数据。
- 必选:否
- 默认值:无
- postSql
- 描述:执行数据同步任务之后执行的sql语句,目前只允许执行一条SQL语句,例如加上某一个时间戳。
- 必选:否
- 默认值:无
- batchSize
- 描述:一次性批量提交的记录数大小,该值可以极大减少CDP与Mysql的网络交互次数,并提升整体吞吐量。但是该值设置过大可能会造成CDP运行进程OOM情况。
- 必选:否
- 默认值:1024
3.3 类型转换
目前 DRDSWriter 支持大部分 Mysql 类型,但也存在部分个别类型没有支持的情况,请注意检查你的类型。
下面列出 DRDSWriter 针对 DRDS 类型转换列表:
CDP 内部类型 | DRDS 数据类型 |
---|---|
Long | int, tinyint, smallint, mediumint, int, bigint, year |
Double | float, double, decimal |
String | varchar, char, tinytext, text, mediumtext, longtext |
Date | date, datetime, timestamp, time |
Boolean | bit, bool |
Bytes | tinyblob, mediumblob, blob, longblob, varbinary |
最后更新:2016-11-23 16:03:59
上一篇:
OTSWriter__Writer插件_使用手册_数据集成-阿里云
下一篇:
OSSWriter__Writer插件_使用手册_数据集成-阿里云
金融大数据应用解决方案__企业图谱_大数据解决方案-阿里云
合作伙伴账号下找不到某域名的原因__渠道商下客户问题_渠道合作伙伴_合作伙伴-阿里云
云服务器 ECS实例生命周期
调用方式__API参考_高性能计算-阿里云
按量付费计费规则说明__ECS购买须知_产品使用问题_云服务器 ECS-阿里云
物理专线接入终止__高速通道相关接口_API 参考_云服务器 ECS-阿里云
华为云、腾讯云、阿里云,三虎相争,混战刚刚开始
日志分析__快速开始_移动数据分析-阿里云
修改密码__管理实例_用户指南_云数据库 Memcache 版-阿里云
镜像产品制作__商品接入_服务商_云市场-阿里云
相关内容
常见错误说明__附录_大数据计算服务-阿里云
发送短信接口__API使用手册_短信服务-阿里云
接口文档__Android_安全组件教程_移动安全-阿里云
运营商错误码(联通)__常见问题_短信服务-阿里云
设置短信模板__使用手册_短信服务-阿里云
OSS 权限问题及排查__常见错误及排除_最佳实践_对象存储 OSS-阿里云
消息通知__操作指南_批量计算-阿里云
设备端快速接入(MQTT)__快速开始_阿里云物联网套件-阿里云
查询API调用流量数据__API管理相关接口_API_API 网关-阿里云
使用STS访问__JavaScript-SDK_SDK 参考_对象存储 OSS-阿里云