配置OBS源端参数
参数类型 | 参数名 | 说明 | 取值样例 |
|---|---|---|---|
基本参数 | 桶名 | 待迁移数据所在的桶名。 | BUCKET_2 |
文件格式 | 传输数据时使用的格式。
| CSV格式 | |
源目录或文件 | 待迁移数据的目录或单个文件路径。文件路径支持输入多个文件(最多50个),默认以“|”分隔,也可以自定义文件分隔符,具体请参见文件列表迁移。 | FROM_DIRECTORY/ or FROM_DIRECTORY/example.csv | |
列表文件 | 当“文件格式”选择为“二进制格式”时,才有该参数。 打开列表文件功能时,支持读取OBS桶中文件(如txt文件)的内容作为待迁移文件的列表。该文件中的内容应为待迁移文件的绝对路径(不支持目录),例如直接写为如下内容: /052101/DAY20211110.data /052101/DAY20211111.data | 是 | |
列表文件源连接 | 当“列表文件”选择为“是”时,才有该参数。可选择列表文件所在的OBS连接。 | OBS_test_link | |
列表文件OBS桶 | 当“列表文件”选择为“是”时,才有该参数。该参数表示列表文件所在的OBS桶名。 | 01 | |
列表文件或目录 | 当“列表文件”选择为“是”时,才有该参数。该参数表示列表文件所在的OBS桶中的绝对路径或目录。 此处建议选择为文件的绝对路径。当选择为目录时,也支持迁移子目录中的文件,但如果目录下文件量过大,可能会导致集群内存不足。 | /0521/Lists.txt | |
JSON类型 | 当“文件格式”选择为“JSON格式”时,才有该参数。JSON文件中存储的JSON对象的类型,可以选择“JSON对象”或“JSON数组”。 | JSON对象 | |
记录节点 | 当“文件格式”选择为“JSON格式”并且“JSON类型”为“JSON对象”时,才有该参数。对该JSON节点下的数据进行解析,如果该节点对应的数据为JSON数组,那么系统会以同一模式从该数组中提取数据。多层嵌套的JSON节点以字符“.”分隔。 | data.list | |
高级属性 | 换行符 | 文件中的换行符,默认自动识别“\n”、“\r”或“\r\n”。当“文件格式”选择为“CSV格式”时,才有该参数。 | \n |
使用包围符 | 选择“是”时,包围符内的字段分隔符会被视为字符串值的一部分,目前CDM默认的包围符为:"。 | 否 | |
使用转义符 | 选择“是”时,CSV数据行中的\作为转义符使用。 选择“否”时,CSV中的\作为数据不会进行转义。CSV只支持\作为转义符。 | 是 | |
使用正则表达式分隔字段 | 选择是否使用正则表达式分隔字段,当选择“是”时,“字段分隔符”参数无效。当“文件格式”选择为“CSV格式”时,才有该参数。 | 是 | |
正则表达式 | 分隔字段的正则表达式,正则表达式写法请参考正则表达式分隔半结构化文本。 | ^(\d.*\d) (\w*) \[(.*)\] ([\w\.]*) (\w.*).* | |
前N行为标题行 | “文件格式”选择“CSV格式”时才有该参数。在迁移CSV文件到表时,CDM默认是全部写入,如果该参数选择“是”,CDM会将CSV文件的前N行数据作为标题行,不写入目的端的表。 | 否 | |
标题行数 | “前N行为标题行”选择“是”时才有该参数。抽取数据时将被跳过的标题行数。 说明: 标题行数不为空,取值为1-99之间的整数。 | 1 | |
解析首行为列名 | “前N行为标题行”选择“是”时才有该参数。选择是否将标题的首行解析为列名,在配置字段映射时会在原字段中显示该列名。 说明:
| 是 | |
编码类型 | 文件编码类型,例如:“UTF-8”或“GBK”。只有文本文件可以设置编码类型,当“文件格式”选择为“二进制格式”时,该参数值无效。 | GBK | |
压缩格式 | 选择对应压缩格式的源文件:
| 无 | |
压缩文件后缀 | 需要解压缩的文件后缀名。当一批文件中以该值为后缀时,才会执行解压缩操作,否则就保持原样传输。当输入*或为空时,所有文件都会被解压。 | * | |
启动作业标识文件 | 选择是否开启作业标识文件的功能。当源端路径下存在启动作业的标识文件时才启动作业,否则会挂起等待一段时间,等待时长在下方“等待时间”中配置。 | 否 | |
文件分隔符 | “源目录或文件”参数中如果输入的是多个文件路径,CDM使用这里配置的文件分隔符来区分各个文件,默认为“|”。 | | | |
标识文件名 | 选择开启作业标识文件的功能时,需要指定启动作业的标识文件名。指定文件后,只有在源端路径下存在该文件的情况下才会运行任务。该文件本身不会被迁移。 | ok.txt | |
等待时间 | 选择开启作业标识文件的功能时,如果源路径下不存在启动作业的标识文件,作业挂机等待的时长,当超时后任务会失败。 等待时间设置为0时,当源端路径下不存在标识文件,任务会立即失败。 单位:秒。 | 10 | |
过滤类型 | 满足过滤条件的路径或文件会被传输,该参数有“无”、“通配符”和“正则表达式”三种选择。具体使用方法可参见文件增量迁移。 | 通配符 | |
目录过滤器 | “过滤类型”选择“通配符”、“正则表达式”时,用通配符过滤目录,符合过滤器规则的目录,允许进行迁移。支持配置多个路径,中间使用“,”分隔。 说明: 如果配置了时间宏变量,通过DataArts Studio数据开发调度CDM迁移作业时,系统会将时间宏变量替换为“数据开发作业计划启动时间-偏移量”,而不是“CDM作业实际启动时间-偏移量”。 | *input | |
文件过滤器 | “过滤类型”选择“通配符”、“正则表达式”时,用通配符过滤目录下的文件,符合过滤器规则的文件,允许进行迁移。支持配置多个文件,中间使用“,”分隔。 说明: 如果配置了时间宏变量,通过DataArts Studio数据开发调度CDM迁移作业时,系统会将时间宏变量替换为“数据开发作业计划启动时间-偏移量”,而不是“CDM作业实际启动时间-偏移量”。 | *.csv,*.txt | |
时间过滤 | 选择“是”时,可以根据文件的修改时间选择性地传输文件。 | 是 | |
起始时间 | “过滤类型”选择“时间过滤器”时,可以指定一个时间值,当文件的修改时间大于该时间才会被传输,输入的时间格式需为“yyyy-MM-dd HH:mm:ss”。 该参数支持调用DateUtil内嵌对象,例如#{DateUtil.format(DateUtil.addDays(Job.planTime,-90),"yyyy-MM-dd")}表示:只迁移最近90天内的文件。 | 2019-06-01 00:00:00 | |
终止时间 | “过滤类型”选择“时间过滤器”时,可以指定一个时间值,当文件的修改时间小于该时间才会被传输,输入的时间格式需为“yyyy-MM-dd HH:mm:ss”。 该参数支持调用DateUtil内嵌对象,例如#{DateUtil.format(DateUtil.now(),"yyyy-MM-dd HH:mm:ss")}表示:只迁移修改时间为当前时间以前的文件。 | 2019-07-01 00:00:00 | |
忽略不存在原路径/文件 | 在迁移过程中发现文件在源路径下不存在的情况下是否报错。如果将其设为是, 那么文件在源路径下不存在的情况下也能成功执行。 | 否 | |
MD5文件名后缀 | “文件格式”选择“二进制格式”时,该参数才显示。 校验CDM抽取的文件,是否与源文件一致,详细请参见MD5校验文件一致性。 | .md5 |

