问题标签 [azure-data-flow]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
parameter-passing - 如何将数组参数传递到 ADF 数据流
我的 ADF 中有一个 DataFlow,它接受一个 int 数组参数:
但是当我尝试从管道调用该数据流时,它似乎一点也不开心:(
到目前为止,我已经尝试了 3 个不同的版本:
- 传递一个定义为硬编码表达式的空数组:imageLink
- 传递一个包含值的数组,定义为硬编码表达式:imageLink
- 从管道中传入一个数组变量:(看看我是如何传入
ValuationDateIds
上面链接的图像的)
无论我尝试哪种方式,我都会从数据流中得到相同的错误,说参数丢失。
数据流调用日志显示参数已传递,但:
我究竟做错了什么?
编辑:我尝试了另一件事:我在 DF 上设置了一个默认参数,使用硬编码值,然后重新创建了 DF 调用。它使用这些默认值自动填充参数,并且运行良好。但是,当我将调用修改为一对不同的数字(只是更改了数字,因此在语法上相同)时,结果证明它忽略了输入并继续使用默认值。
apache-spark-sql - 我们可以在 Azure 映射数据流中转置数据吗?
我正在使用映射数据流在 ADF 中实现我的 M 查询脚本。在 M 查询中有两个函数,一个是 Table.pivot,另一个是 Table.transpose。映射数据流具有枢轴转换,但没有转置。谁能告诉我,我们可以在 Azure 映射数据流中进行数据转置,还是我需要使用除映射数据流之外的其他东西(Databricks、Spark SQL)?
Transpose 会将所有行旋转为列,将列旋转为行。
azure-data-factory-2 - ADF 数据流;我对集群启动时间有任何控制或影响吗?(不是“TTL”)
是的,我知道 TTL;是的,我正在配置它;不,这不是我在这里要问的。
为 Dataflow启动一个初始集群大约需要5 分钟。
开始从现有的“温暖”集群(即使用 TTL 保持“活动”状态的集群)获取计算,对于新的数据流,似乎仍需要1-2 分钟。
这些数字非常大,特别是如果您有一个多步骤 ETL 流程,并且已经将您的管道分解为单独的关注点(或者如果您在循环中执行数据流,以处理每个源日的数据)
控制 TTL 可以让我对触发这两种可能性中的哪一种进行一些控制,但即使是 2 分钟也可能是相当大的开销。(我有一个管道,其中一半的执行时间正在等待那些 1-2 分钟的“获取计算”启动)
我是否有任何控制权,每种情况下启动需要多长时间?有什么我可以做的来加快启动速度,或者我应该避免什么以防止事情变得更糟!
filter - 在 azure 数据工厂中过滤导入的数据集
我有一个 JSON 文件,我需要对其进行过滤以仅显示过去 2 天的数据。
有没有办法添加一个表达式来执行此操作,以便我可以接收包含过去 2 天数据的数据集?
此外,是否可以使用管道中的过滤器选项来完成,或者我是否需要为此类问题创建数据流?
dynamic - 如何利用 Azure 数据工厂中的动态数据流来映射基于配置文件的查找表?
我正在尝试创建一个接受来自配置文件 (JSON) 的值的管道,以尝试基于文件中的值构建源查询、查找逻辑和目标接收器。
配置文件中的对象示例如下所示:
管道将识别配置中需要检查新数据的项目数(对于每个项目),基本管道如下所示:
然后,我会将这些值从 ADF 管道传递到数据流中: ADF 参数
并在数据流表达式中构建源拉取和查找值,如下所示:
当我在数据流中并在调试设置中传递相同的配置值时,我可以正确地查看投影并正确地单步执行数据流。当我从管道执行数据流时,我得到了错误。
作为第二次尝试,我只是通过配置中的源查询:
我本来打算在数据流表达式中使用 md5 函数,但此时我只想:
- 定义源查询,无论是通过 SQL 语句还是从变量构建
- 定义查找查询,无论是通过 SQL 语句还是从变量构建
- 能够比较从源到查找(目标表)的散列值
- 如果查找在哈希上没有返回匹配项,则加载值
理想情况下,我不会直接定义 SQL 语句。它只是感觉不太聪明。无论如何,这是为了防止将大约 50 个 DFT 从 SSIS 迁移到几个管道和可以处理动态的单个数据流。由于该过程一直在数据流的范围内工作,因此我一直在以不同的方式传递参数,删除引号,不确定字符串插值在做什么......等等。
azure - 有没有办法只删除或重新映射第一行的列?(CSV 输出)
我正在使用 Azure 数据流进行许多数据转换,最后输出一个制表符分隔的文本文件。
我正在寻找一种仅从第一行中完全删除 2 列的方法……然后仅在第一行中,之后的所有列都应“向左滑动”。
示例:(我使用的是制表符分隔的列表,但我将在此处使用逗号以提高可见性)
假设我有以下输入:
1、2、3、4、5
6、7、8、9、10
11、12、13、14、15
我想从第一行删除 2 列,所以我希望输出为:
1、4、5
6、7、8、9、10
11、12、13、14、15
(在本例中,删除了包含 2 和 3 的列)
此外。如果要求每行中的列数相同,我可以将空列移动到第一行的末尾,例如:
1, 4, 5, ,
6、7、8、9、10
11、12、13、14、15
我已经使用派生列来实现动态逻辑来删除第一行的值。但是,我需要删除整个字段,而不仅仅是删除值。
我还使用映射来删除列,但当然会从所有行中删除列,在我的场景中,我只需要删除第一行的选项卡/列。