跳转到内容

在源头更改列(重命名、更改类型或删除)后,所有映射到该列的下游步骤都必须随之更新。列传播只需一次确认即可完成这项工作。

任何带有 ColumnMapper 的步骤(Project Table、Calculate、Append、Merge 等)都可以进行传播。映射器工具栏中的两个按钮用于触发传播:

  • Propagate All:传播映射器中的所有列
  • Propagate Selected:仅传播在映射器网格中选中的列
  1. 打开包含要更改的列的工作流步骤
  2. 在 ColumnMapper 中进行更改(重命名、更改类型等)
  3. 在映射器工具栏中单击 Propagate All(或选中若干行后单击 Propagate Selected)
  4. 此时会打开向下游传播对话框,其中以树形结构列出所有依赖于源步骤的步骤
  5. 勾选要应用更改的步骤,子步骤会自动级联勾选
  6. 对于聚合步骤,请在下方的聚合面板中为任何新列选择聚合函数
  7. 单击 Confirm

聚合面板列出了标准聚合函数。与窗口函数配合使用的高级非分组依据需在步骤自身的映射器中设置,此处不提供。如果所选聚合不适用于某列,对话框会指出是哪一列以及原因,以便您选择其他聚合。

对话框的默认行为是安全的:当下游某一行没有该列的显式映射时,会沿用源名称作为目标名称,因此传递过程中不会丢失信息。

  • 列重命名:源名称到目标名称的更改
  • 类型更改:在该列出现的所有位置更新 dtype
  • 此步骤中新增的列:向前流入下游映射器
  • 应用于源的 Strip 操作

未引用该列的步骤仍会显示在树中,但默认不勾选。

如果在打开对话框之后,有其他人编辑了某个下游步骤,传播将失败并提示版本过期错误。对话框会自动重新获取依赖关系图,并允许您重试,而不会丢失您的选择。如果重新获取本身失败,您的选择仍会保留,以便您排除根本问题后再次尝试。