参数 是为整个视觉数据准备定义的命名值。 你可以在SQL和Python代码中引用参数,在支持的操作符配置字段中,以及启用或禁用运算符的表达式中。 参数允许你在不同环境中运行相同的可视化数据准备,例如开发中的测试目录集和生产环境中的生产目录集。
定义参数
要管理参数,请在左侧窗格中选择“参数”。 每个参数都有一个在定义时设置的值。 当可视化数据准备按计划或作业运行时,你可以覆盖该值。 参见 在生产环境中覆盖参数值。
从运算符引用参数
你如何引用参数取决于你在哪里使用它:
SQL 运算符:使用命名参数标记语法,例如
:environment。 请参阅 “使用命名参数标记”。Python运算符:调用
dbutils.widgets.get(),例如dbutils.widgets.get("environment")。 请参阅微件工具(dbutils.widgets)。支持的操作符配置字段:在操作符的配置面板中,选择右上角 的参数 。 选择一个字段并输入表达式,如
:source_table。 支持的字段包括:来源: 表格、 文件路径和 文件格式。
输出:目录、架构、表、视图、卷、文件名和写入模式。
极限: 极限。
合并: 设置操作, 合并策略, 按名称合并, 允许缺失列。
打开 SQL 或 Python 运算符进行编辑时,Lakeflow Designer 演示了如何引用源编辑器上方的可用参数的示例。
将参数与固定文本合并
在源或输出操作符的参数表达式中,用 :parameter_name 替换整个值。 要将参数与固定文本结合,请用单引号包住文本并使用 ||。 例如,以下源 表 表达式构造了一个完全限定的表名:
:catalog || '.' || :schema || '.' || :table
使用参数启用或禁用操作员
你可以用参数来启用或禁用任何已配置的操作符。 在 参数面板 中,选择 禁用 并输入一个布尔表达式。 例如, :skip_operator 当参数为 true时,使算符失效。 已禁用的操作符不会产生任何输出行。
如需手动启用或禁用操作员,请参见 “重命名、复制、删除和禁用操作员”。
覆盖生产中的参数值
运行时,可视化数据准备无论以交互式还是作业形式运行,参数读取方式相同,因此同一个文件在所有环境中都能正常工作,无需更改。 为每种环境提供不同的数值如下:
在 UI 中计划作业时:覆盖每个计划的参数值。 例如,将相同的可视化数据准备计划为每天中午运行,
environment设为test,并在下午 2 点再次运行一次,将environment设为production。 请参见 计划为作业。使用捆绑包进行部署时:通过作业
parameters设置参数值,并使用捆绑包目标为每个环境提供不同的值。 捆绑包开发目标和生产目标可让你将同一作业部署到不同的环境中,并为每个环境使用特定的设置。 请参阅 声明性自动化捆绑包部署模式 和 声明性自动化捆绑包配置。