文件增量迁移 本章节主要介绍文件增量迁移。 CDM支持对文件类数据源进行增量迁移,全量迁移完成之后,第二次运行作业时可以导出全部新增的文件,或者只导出特定的目录/文件。 目前CDM支持以下文件增量迁移方式: 1.增量导出指定目录的文件 −适用场景:源端数据源为文件类型(OBS/HDFS/FTP/SFTP)。这种增量迁移方式,只追加写入文件,不会更新或删除已存在的记录。 −关键配置:文件/路径过滤器+定时执行作业。 −前提条件:源端目录或文件名带有时间字段。 2.增量导出指定时间以后的文件 −适用场景:源端数据源为文件类型(OBS/HDFS/FTP/SFTP)。这里的指定时间,是指文件的修改时间,当文件的修改时间晚于指定的时间,CDM才迁移该文件。 −关键配置:时间过滤+定时执行作业。 −前提条件:无。 文件/路径过滤器 参数位置:在创建表/文件迁移作业时,如果源端数据源为文件类型,那么源端作业参数的高级属性中可以看到“过滤类型”参数,该参数可选择:通配符或正则表达式。 参数原理:“过滤类型”选择“通配符”时,CDM就可以通过用户配置的通配符过滤文件或路径,CDM只迁移满足指定条件的文件或路径。 配置样例: 例如源端文件名带有时间字段“20171015 20:25:26”,这个时刻生成的文件为“/opt/data/file20171015202526.data”,则在创建作业时,参数配置如下: a.过滤类型:选择“通配符”。 b.文件过滤器:配置为“ ${dateformat(yyyyMMdd,1,DAY)} ” (这是CDM支持的日期宏变量格式,详见 时间宏变量使用解析)。 c.配置作业定时自动执行,“重复周期”为1天。 这样每天就可以把昨天生成的文件都导入到目的端目录,实现增量同步。 文件增量迁移场景下,“路径过滤器”的使用方法同“文件过滤器”一样,需要路径名称里带有时间字段,这样可以定期增量同步指定目录下的所有文件。