更新时间:2024-10-18 GMT+08:00

配置MySql源端参数

支持从MySQL导出数据。

表1 MySQL作为源端时的作业参数

参数类型

参数名

说明

取值样例

基本参数

使用SQL语句

导出关系型数据库的数据时,您可以选择使用自定义SQL语句导出。

SQL语句

“使用SQL语句”选择“是”时,您可以在这里输入自定义的SQL语句,CDM将根据该语句导出数据。

说明:
  • SQL语句只能查询数据,支持join和嵌套写法,但不能有多条查询语句,比如 select * from table a; select * from table b。
  • 不支持with语句。
  • 不支持注释 ,比如 "--" ,“/*”。
  • 不支持增删改操作,包括但不限于以下操作:
    • load data
    • delete from
    • alter table
    • create table
    • drop table
    • into outfile
  • 如果SQL语句过长,会导致请求过长下发失败,继续创建作业系统会报错“错误请求”,此时您需要简化或清空SQL语句,再次尝试继续创建作业。

select id,name from sqoop.user;

模式或表空间

“使用SQL语句”选择“否”时,显示该参数,表示待抽取数据的模式或表空间名称。单击输入框后面的按钮可进入模式选择界面,用户也可以直接输入模式或表空间名称。

如果选择界面没有待选择的模式或表空间,请确认对应连接里的账号是否有元数据查询的权限。

该参数支持配置正则表达式,实现导出满足规则的所有数据库。

SCHEMA_E

表名

“使用SQL语句”选择“否”时,显示该参数,表示要抽取的表名。单击输入框后面的按钮可进入表的选择界面,用户也可以直接输入表名称。

如果选择界面没有待选择的表,请确认表是否已经创建,或者对应连接里的账号是否有元数据查询的权限。

该参数支持配置为时间宏变量,且一个路径名中可以有多个宏定义变量。使用时间宏变量和定时任务配合,可以实现定期同步新增数据,详细说明请参见使用时间宏变量完成增量同步

该参数支持配置正则表达式,实现导出满足规则的所有数据库。例如:表名配置为user_[0-9]{1,2},会匹配 user_0 到 user_9,user_00 到 user_99 的表。

说明:

如果配置了时间宏变量,通过DataArts Studio数据开发调度CDM迁移作业时,系统会将时间宏变量替换为“数据开发作业计划启动时间-偏移量”,而不是“CDM作业实际启动时间-偏移量”。

table

高级属性

Where子句

“使用SQL语句”选择“否”时,显示该参数,表示配置抽取范围的Where子句,不配置时抽取整表。

该参数支持配置为时间宏变量,实现抽取指定日期的数据,详细说明请参见关系数据库增量迁移

说明:

如果配置了时间宏变量,通过DataArts Studio数据开发调度CDM迁移作业时,系统会将时间宏变量替换为“数据开发作业计划启动时间-偏移量”,而不是“CDM作业实际启动时间-偏移量”。

DS='${dateformat(yyyy-MM-dd,-1,DAY)}'

Date类型值是否保留一位精度

Date类型值是否保留一位精度。

按表分区抽取

从MySQL导出数据时,支持从分区表的各个分区并行抽取数据。启用该功能时,可以通过下面的“表分区”参数指定具体的MySQL表分区。
  • 该功能不支持非分区表。
  • 数据库用户需要具有系统视图dba_tab_partitionsdba_tab_subpartitionsSELECT权限。

抽取分片字段

“按表分区抽取”选择“否”时,显示该参数,表示抽取数据时使用该字段进行数据切分,CDM依据此字段将作业分割为多个任务并发执行。一般使用数据均匀分布的字段,例如以自然增长的序号字段作为分片字段。

单击输入框后面的按钮可进入字段选择界面,用户也可以直接输入抽取分片字段名。

说明:

抽取分区字段支持TINYINT、SMALLINT、INTEGER、BIGINT、REAL、FLOAT、DOUBLE、NUMERIC、DECIMAL、BIT、BOOLEAN、DATE、TIME、TIMESTAMP类型,建议该字段带有索引。

id

分片字段是否允许空值

“按表分区抽取”选择“否”时,显示该参数,是否允许分片字段包含空值。

多并发抽取时,若确定分片字段不含Null,将该值设为“否”可提升性能,若不确定,请设为“是”,否则可能会丢数据。

例如:是