ADF 第八篇:传递参数(Pipeline的Parameter和Variable,Activity的output)和应用表达式
Azure Data Factory传递参数的方式主要有两种,通过Pipeline的Parameter和Variable来传递参数,通过Activity的输出来传递参数。要在Activity中引用Parameter、Variable或活动输出的值,需要通过“Add dynamic content”来实现。
Activity可以通过表达式获得动态上下文,使得Activity可以根据表达式的值得出不同的执行效果。
一,通过Parameter 和 Variable来传递参数
在Pipeline中,可以创建Parameter和Variable,Parameter是不可变的、只读的常量,而Variable的值是可变。从这个意义上来说,Parameter和Variable都是在Pipeline级别上创建的常量或变量。
1,创建Parameter和Variable
点击Pipeline的画布,底部弹出对话框,打开Parameters选项卡,创建Parameter,Parameter的Type有String、Int、Float、Bool、Array、Object和SecureString。Object代表的是对象类型,通常是指表类型。

打开Variables选项卡,创建Variable,Variable的Type只有String、Bool和Array。

2,引用Parameter和Variable
在“Add dynamic content”的文本框中输入公式,来引用Parameter或Variable的值。

举个例子,引用Paramter的值:

举个例子,引用Variable的值:

3,更新Variable的值
用于可以通过Set Variable 活动或Append Variable活动来更新Variable的值。其中,Set Variable活动用于更新变量值,而Append Variable用于向Array类型的变量增加item,即向数组的末尾增加一个元素。
二,通过Activity的输出来传递参数
在Pipeline中的Activity的输出,都可以通过“Add dynamic content”来添加Activity outputs:

通常活动的输出(output)是表结构,引用表中第一行的某一列的语法是:
@activiy('activity_name').output.firstRow.column_name
三,应用表达式
数据工厂以JSON文件的格式来配置Activity的属性,一个Key-Value对表示一个属性。在Value中应用表达式,表达式中的字符串使用单引号:'string' 来表示,
1,表达式的理论知识
定义中的JSON的值(Value)可以是文字的(常量),或者在运行时求值的表达式,例如:
"name": "value"
"name": "@pipeline().parameters.password"
表达式可以出现在JSON字符串值中的任何位置,如果JSON值是一个表达式,则可以通过前导符号@来提取表达式的主体。如果需要以@开头的文字字符串,则必须使用@@对其进行转义。 以下示例显示如何评估表达式。

举个例子,myString参数是foo,myNumber参数是42,引用表达式运算的结果如下:

2,应用表达式
打开“Add dynamic content”对话框,输入表达式,如果表达式需要引用运行时的值,要以@字符开头。
上文遇到的表达式:
- 引用变量: @variables('var_name')
- 引用Pipeline的参数:@pipeline().parameters.para_name
- 获得活动输出的第一行的某一列的值:@activiy('activity_name').output.firstRow.column_name
- 根据表达式获得一个bool值:@equals(variables('strVar'),'abc')
参考文档:
Expressions and functions in Azure Data Factory
ADF 第八篇:传递参数(Pipeline的Parameter和Variable,Activity的output)和应用表达式的更多相关文章
- Flask最强攻略 - 跟DragonFire学Flask - 第八篇 实例化Flask的参数 及 对app的配置
Flask 是一个非常灵活且短小精干的web框架 , 那么灵活性从什么地方体现呢? 有一个神奇的东西叫 Flask配置 , 这个东西怎么用呢? 它能给我们带来怎么样的方便呢? 首先展示一下: from ...
- XAML实例教程系列 - XAML传递参数到值转换类实例 八
Kevin Fan分享开发经验,记录开发点滴 XAML实例教程系列 - XAML传递参数到值转换类实例 2012-06-28 05:25 by jv9, 508 阅读, 0 评论, 收藏, 编辑 继上 ...
- flask 第八篇 实例化flask时的参数配置
Flask 是一个非常灵活且短小精干的web框架 , 那么灵活性从什么地方体现呢? 有一个神奇的东西叫 Flask配置 , 这个东西怎么用呢? 它能给我们带来怎么样的方便呢? 首先展示一下: from ...
- Delphi过程函数传递参数的八种方式
今天一同事问我为什么有些过程函数里面有Var而有些没有,不解,遂到网上百度,得解.快哉,快哉. 在Delphi过程.函数中传递参数几个修饰符为Const.Var.Out.另一种不加修饰符的为默认按值传 ...
- 【delphi】Delphi过程、函数传递参数的八种方式
Delphi过程函数传递参数的八种方式
- Python 学习 第八篇:函数2(参数、lamdba和函数属性)
函数的参数是参数暴露给外部的接口,向函数传递参数,可以控制函数的流程,函数可以0个.1个或多个参数:在Python中向函数传参,使用的是赋值方式. 一,传递参数 参数是通过赋值来传递的,传递参数的特点 ...
- PowerBI开发 第八篇:查询参数
在PowerBI Desktop中,用户可以定义一个或多个查询参数(Query Parameter),参数的功能是为了实现PowerBI的参数化编程,使得Data Source的属性.替换值和过滤数据 ...
- Jmeter(五十二) - 从入门到精通高级篇 - jmeter之跨线程组传递参数(详解教程)
1.简介 之前分享的所有文章都是只有一个线程组,而且参数的传递也只在一个线程组中,那么如果需要在两个线程组中传递参数,我们怎么做呢?宏哥今天就给小伙伴或者童鞋们讲解一下,如何实现在线程组之间传递参数. ...
- 第八篇 :微信公众平台开发实战Java版之如何网页授权获取用户基本信息
第一部分:微信授权获取基本信息的介绍 我们首先来看看官方的文档怎么说: 如果用户在微信客户端中访问第三方网页,公众号可以通过微信网页授权机制,来获取用户基本信息,进而实现业务逻辑. 关于网页授权回调域 ...
随机推荐
- C# 9.0新特性详解系列之三:模块初始化器
1 背景动机 关于模块或者程序集初始化工作一直是C#的一个痛点,微软内部外部都有大量的报告反应很多客户一直被这个问题困扰,这还不算没有统计上的客户.那么解决这个问题,还有基于什么样的考虑呢? 在库加载 ...
- [自学] MIT的EECS本科+研究生课程【持续更新中-2020.06.02】
前言 我的本科是读的电子信息工程,研究生跟着老师做项目,参与到深度学习中来,毕业后做了算法工程师,工作之后愈发发现,不论从事什么岗位,基础都很重要,但现在也没有时间再读一遍本科了,自学的话也不知道从何 ...
- SkyWalking —— 分布式应用监控与链路追踪
SkyWalking 是一个应用性能监控系统,特别为微服务.云原生和基于容器(Docker, Kubernetes, Mesos)体系结构而设计.除了应用指标监控以外,它还能对分布式调用链路进行追踪. ...
- Beta冲刺随笔——Day_One
这个作业属于哪个课程 软件工程 (福州大学至诚学院 - 计算机工程系) 这个作业要求在哪里 Beta 冲刺 这个作业的目标 团队进行Beta冲刺 作业正文 正文 其他参考文献 无 今日事今日毕 林涛: ...
- SpringBoot中的Tomcat是如何启动的?
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>s ...
- Docker中搭建FastDFS文件系统(多图)
关于FastDFS FastDFS 是以 C 语言开发的一项开源轻量级分布式文件系统,他对文件进行管理,主要功能有:文件存储,文件同步,文件访问(文件上传/下载)等,特别适合以文件为载体的在线服务,如 ...
- moviepy音视频剪辑:使用fl_time报错OSError: MoviePy error: failed to read the first frame of video file
专栏:Python基础教程目录 专栏:使用PyQt开发图形界面Python应用 专栏:PyQt+moviepy音视频剪辑实战 专栏:PyQt入门学习 老猿Python博文目录 老猿学5G博文目录 在m ...
- 利用flask框架实现对用户的注册登录
------------------------------------(分割线)----------------------------------------------------------- ...
- Elements-of-Python_03_LanguageFeature
(内容包括Python语法概述,流程控制,条件表达式) 1 Python语法 1.1 Python的特点 Python是一种完全面向对象的.解释性的.可移植的.开源的脚本编程高级语言,具有丰富的库,允 ...
- 团队作业5_测试与发布(Alpha版本)
Alpha版本测试报告 1.测试找出的bug(N个): (1)修复的Bug:很多个,主要是一些疏忽造成的,比如请求url写错导致数据加载不了.比较有意义的bug是因为使用redux,但是用户刷新后数据 ...