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

如何调整Synapse管道/数据集,新增SQL Server表至存储账户Bronze层?

Synapse Analytics新增SQL Server表至Bronze层实操方案

一、新增对应数据集

  • 源数据集(SQL Server):复制现有已成功同步的SQL Server源数据集,修改配置中的表名为新增目标表,保存为新数据集(示例命名:Source_SQL_NewTable),确保连接字符串、权限与原有源数据集一致。
  • 目标数据集(存储账户):复制现有Bronze层的目标数据集,调整文件存储路径(建议按表分区存储,例如bronze/new_table/),保持文件格式(如Parquet/CSV)、压缩方式与原有目标数据集一致,保存为新数据集(示例命名:Target_Bronze_NewTable)。

二、调整管道配置

分两种场景处理:

场景1:原管道为单表独立执行流程

直接在现有管道内复制已有的Copy Activity(数据复制活动),替换活动的源数据集和目标数据集为刚创建的新数据集,修改活动名称(示例:Copy_NewTable_To_Bronze),保存后单独测试该活动,验证数据写入正常。

场景2:原管道用ForEach批量处理多表

  1. 找到管道中存储表名的参数数组或变量,将新增表的名称添加至数组/变量中;
  2. 若已有Copy Activity采用参数化配置(例如源表名用表达式@pipeline().parameters.TableName,目标路径用@concat('bronze/', pipeline().parameters.TableName, '/')),仅需更新表名列表即可;
  3. 若未做参数化,先将源、目标数据集修改为参数化模式(把表名、路径设为可传入的参数),再更新表名列表,确保ForEach循环能自动遍历新增表。

三、长期批量新增的优化方案

为减少后续重复操作,建议做可维护性改造:

  • 参数化统一配置:将源表名、目标路径、同步频率等做成管道参数,新增表时仅需在参数列表中添加条目,无需重复创建数据集;
  • 表清单驱动同步:在ADLS存储中创建一个JSON格式的表清单文件(示例:[{"tableName":"table1"},{"tableName":"new_table"}]),管道开头用Lookup Activity读取该清单,再通过ForEach循环批量处理,新增表仅需修改JSON文件;
  • 增量同步配置:针对新增表,在Copy Activity中配置增量读取规则(如基于时间戳列、自增ID),避免全量同步浪费资源;
  • 统一命名规范:制定数据集、活动的命名规则(如Source_SQL_<TableName>、Copy_<TableName>_To_Bronze),方便后续维护排查。

四、测试与验证

  • 单独运行新增的Copy Activity,确认数据成功写入Bronze层对应路径;
  • 检查存储账户中的文件完整性,对比源表与目标数据的行数、字段一致性;
  • 若为批量管道,测试全流程运行,确保原有表与新增表同步均正常。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.27 23:53:16