You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Cloud Data Fusion管道中用BigQuery变量过滤MS SQL Server增量数据?

用Cloud Data Fusion实现SQL Server到BigQuery的增量同步方案

当然可以通过获取BigQuery目标表的最新时间戳,作为SQL Server数据源的筛选条件来实现增量同步,这是Cloud Data Fusion里实现增量数据抽取的常用方案,具体实现步骤如下:

  • 步骤1:获取BigQuery中的最新同步时间戳
    在管道中添加一个BigQuery Execute SQL组件,执行查询语句获取目标表的最大CREATE_DTM值。为兼容首次同步(此时目标表无数据),可以用COALESCE设置默认起始时间:

    SELECT COALESCE(MAX(CREATE_DTM), '1970-01-01 00:00:00') AS last_sync_time 
    FROM `your-project.your-dataset.target_table`
    

    该组件会输出包含last_sync_time的单行结果,供后续步骤调用。

  • 步骤2:将时间戳参数传入SQL Server查询
    在SQL Server数据源配置中,使用参数化查询替换固定时间条件,把获取到的last_sync_time作为参数注入:

    SELECT * 
    FROM your_source_table 
    WHERE CREATE_DTM >= ?
    

    在Cloud Data Fusion的数据源参数绑定界面,将last_sync_time字段映射到这个问号参数,确保时间格式与SQL Server的CREATE_DTM类型(如datetime、datetime2)匹配。

  • 步骤3:配置管道调度保障时效性
    针对源数据每日生成的特点,在Cloud Data Fusion的管道调度设置中,配置每日定时触发(比如选择凌晨低峰时段),既保证BigQuery数据的时效性,又避免高峰时段对源服务器和网络造成额外压力。

  • 关键注意事项

    • 确保SQL Server与BigQuery的时间戳时区一致,避免因时区偏差导致数据漏拉或重复;
    • 若源表CREATE_DTM含毫秒级精度,需保证两边时间类型精度匹配(比如BigQuery用TIMESTAMP,SQL Server用datetime2(3));
    • 可在管道中添加日志组件,记录每次同步的last_sync_time,方便后续问题排查。

内容的提问来源于stack exchange,提问作者ScholarYoshi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.15 04:25:57