限制读取内容
Setting up Data Reading Restraints
限制读取内容是对数据源中数据读取的限制配置,通常用于增量识别字段模式指定增量数据的获取。
关于此功能
在增量识别字段模式获取增量数据时,我们提供lastmax()函数配置的方式来指定增量数据获取。
在通过JDBC读取数据时,通过指定限制读取内容条件(即where语句)即可限制读取范围。
操作步骤
在数据映射--表映射页面点击限制读取内容按钮;
或在数据映射--字段映射页面点击编辑读取条件,进入限制读取内容配置弹窗:
您可根据需求设置 WHERE 语句,DataPipeline 提供 last_max()函数帮助用户解决定时读取增量数据的需求。
last_max()函数
使用该函数 DataPipeline 会取该任务下已同步数据中某一个字段的最大值,您可以使用该值作为 WHERE 语句读取条件。
使用 last_max()函数,在第一次执行该语句或对应字段暂无数值,则会忽略该函数相关的读取条件。
例子一:
已同步数据中,取某一个字段的最大值用于读取条件。
SELECT * FROM table1 WHERE _id>=last_max(_id)注:每次执行批量读取时,使用 last_max 自定义函数取已同步数据中「_id」字段最大值,读取大于等于「id」已同步最大值的数据。
例子二:
以日期字段作为读取条件,每次只同步当前日期减一天的数据,并且只同步未曾读取的数据。
SELECT * FROM E_Commerce_Retail_Sales WHERE date >last_max(date) and date <=CURDATE()-1每次只同步 date 字段值大于已同步数据中 date 字段最大值,并且只同步昨天的数据(date 字段值)。
注意事项
选择合适的增量识别字段有助于增量任务稳定运行,通常情况下选取日期、时间戳、数字自增id等字段作为增量识别字段配置相对容易,且计算更加稳定。
下一步
配置清洗脚本最后更新于
这有帮助吗?