问题标签 [copy-activity]

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.

0 投票
3 回答
1357 浏览

sql - Azure 数据工厂 -> 查找、ForEach 和复制活动

我想从 azure synapse 中获取一个文件并使用 ADf 将其加载到 ADL 中。我想读取过去 13 个月的数据并为每个月制作一个不同的文件。我制作了一个 CSV 文件,在其中写下了每个月的开始日期和结束日期,并对这个文件进行了查找活动。然后使用 foreach 活动,我从复制活动中加载文件。现在我想为每个月的数据编写一个查询。

从 edw.factbaldly 中选择 * 其中 INSERT_DATE > @activity('Lookup1').output.value.startdate 和 INSERT_DATE < @activity('Lookup1').output.value.EndDate

select * from edw.factbaldly where INSERT_DATE > @item().startdate 和 INSERT_DATE < @item().EndDate'

我使用这些查询但无法读取查找活动的数据并获取数据。请帮我查询。提前致谢。

0 投票
1 回答
106 浏览

azure - 使用来自 Web 套接字安全链接的数据工厂复制数据

我有一个这样的 URL:wss://**** 并且我有这个 URL 的令牌。我需要使用数据工厂从这个位置复制文件。

我找不到任何可用于此的活动以及我如何为连接创建链接服务。我尝试使用 Web 活动,但它只允许 HTTP 或 HTTPS。

任何线索都会有所帮助。谢谢。

0 投票
1 回答
377 浏览

sequence - 在 ADF 中使用复制活动添加顺序自定义列

我有一个 CSV 源和 Azure SQL 作为 Azure 数据工厂管道中复制活动的接收器。我想将 RowID 列(不是 CSV 的一部分)添加到值为 1、2、3、4 的接收器表中......是否可以在不使用数据流的情况下执行此操作?提前致谢

ADF 管道在复制活动中添加顺序值

(类似于上面链接中的情况,但我不需要重置 rowID)

0 投票
1 回答
588 浏览

azure - 如何从 azure 数据工厂中嵌套父文件夹下的子文件夹中获取文件?

我的文件夹结构如下所示,

容器/xx56585/DST_1/2021-03-26/xxxxxxxx.csv

容器/xx56585/DST_1/2021-03-26/xxxxxxxx.ctl

容器/xx56585/DST_2/2021-03-26/yyyyyyyyy.csv

容器/xx56585/DST_2/2021-03-26/yyyyyyyyy.ctl

容器/xx56585/DST_3/2021-03-26/zzzzzzzzz.csv

容器/xx56585/DST_3/2021-03-26/zzzzzzzzz.ctl

容器/xx56585/DST_4/2021-03-26/sssssssssss.csv

容器/xx56585/DST_4/2021-03-26/sssssssssss.ctl

我需要将 .csv 和 .ctl 文件复制到 sFTP 目标并移动这些文件以实现文件夹(在复制活动后的 blob 存储中)

请帮助我

0 投票
3 回答
601 浏览

azure - 数据工厂无法将最后一列后带逗号的“csv”复制到 sql 数据仓库

我有CSV要从 blob 复制到 DW 的CSV文件,这些文件在最后一列之后有逗号(参见下面的示例)。使用 ADF,我尝试将 csv 文件复制到 DW 中的 SQL 表中。但是,我收到了这个错误,我认为这是因为最后一个逗号(因为我有 15 列):

在此处输入图像描述

几行csv文件:

请注意,CSVs 是原始文件,我无法更改它们。我还在数据集中尝试了不同的QuoteEscape字符,但没有成功。我也想使用 ADF 来做到这一点,而不是天蓝色的功能。

我找不到任何解决方案,请帮助。

更新:有趣的是数据集预览有效: 在此处输入图像描述

0 投票
1 回答
294 浏览

azure - Azure 数据工厂复制活动 - 将日期时间保存为 csv 格式错误的日期字符串

在 Azure Synapse / Datafactory 管道期间,我尝试“简单地”将日期时间保存为 CSV 文件中的字符串。在保存日期时间之前,我想对其进行格式化,例如“2021-04-13T00:00:00.000Z”,在“T”之后总是“00:00:00.000Z”。

在复制活动中,我使用 Azure 中的 formatDateTime 函数在源中添加一个新字段并格式化日期时间,但我无法产生我期望的结果。此外,我遇到了多个我不明白的输出。

这是我为调试所做的: 在复制活动“源”中,我添加了多个新字段,这些字段以不同的方式格式化 PipelineTriggerTime,具有不同的效果。我将这些值作为接收器写入 CSV 文件。 复制活动新字段

在此处输入图像描述

下表显示了输入、动态值、预期结果和实际结果。

管道()。触发时间 动态内容 预期产出 实际输出
1 2021-04-13T11:14:33.375Z @formatDateTime(pipeline().TriggerTime, 'yyyy-MM-ddT00:00:00.000Z') 2021-04-13T00:00:00.000Z 2021 年 4 月 13 日 00:00:00
2 2021-04-13T11:14:33.375Z @formatDateTime(pipeline().TriggerTime, 'yyyy-MM-dd hh:mm:ss') 2021-04-13 11:14:33 2021-04-13 11:14:33
3 2021-04-13T11:14:33.375Z @formatDateTime(pipeline().TriggerTime, 'yyyy-MM-ddTsomeText') 2021-04-13TsomeText 2021-04-13T33o14eTexA
4 2021-04-13T11:14:33.375Z @concat(formatDateTime(pipeline().TriggerTime, 'yyyy-MM-dd'), 'T00:00:00.000Z') 2021-04-13T00:00:00.000Z 2021 年 4 月 13 日 00:00:00
5 2021-04-13T11:14:33.375Z @concat(formatDateTime(pipeline().TriggerTime, 'yyyy-MM-dd'), 'TsomeText') 2021-04-13TsomeText 2021-04-13TsomeText

老实说,对我来说唯一不令人惊讶的输出是 2 和 5。
这可以解释吗?formatDateTime 函数应该返回一个“字符串”,但它似乎做了一些不同的事情(有时)。
任何其他想法,我如何达到我的目标,将字符串“2021-04-13T00:00:00.000Z”保存到 csv Azure 复制活动中的文件?

我正在使用 Synapse Analytics,但数据工厂的效果是相同的,因此我添加了后者以接触更多人。

0 投票
0 回答
87 浏览

wildcard - DataFactory 在使用通配符时多次复制文件

大家好,这里是完整的 ADF 新手——我对 DataFactory 有一个奇怪的问题,而且令人惊讶的是看不到其他人也遇到过同样的问题。

总结一下:

  1. 我已经设置了从 blob 到 Azure SQL 数据库的基本复制活动,没有任何转换步骤
  2. 我已经根据通配符名称设置了一个触发器。即任何加载到以 IDT* 开头的 blob 的文件都将被复制到数据库中
  3. 我已将一些文件加载​​到 Azure Blob 中的特定位置
  4. 触发器被激活
  5. 一旦看起来一切正常,对记录数的快速评估显示相同的文件已被导入 X 次

我已经分析了正在发生的事情,基本上当我将文件加载到 blob 时,它们在技术上不会同时到达。因此,当文件 1 命中 blob 时,会触发通配符搜索并找到 1 个文件。然后当第二个文件在几毫秒后命中 blob 时,再次触发通配符搜索,这一次它处理 2 个文件(第一个和第二个)。

根据加载的文件数量,问题不断复杂化。

我尝试了多种方法来解决此问题,但无济于事,因为从根本上说它的行为“正确”。

我努力了:

  1. 处理完文件后删除文件,但由于毫秒问题再次删除文件在技术上仍然存在并且仍然可以处理
  2. 我添加了一个循环来一次处理 1 个文件,然后在根据 blob 中的文件名加载下一个文件之前删除该文件,但没有奏效(并且无法解释原因)
  3. 我将 ADF 限制为只有 1 个并发连接,这减少了它重复的次数,但不幸的是仍然重复它
  4. 尝试在复制活动开始时放置一个等待计时器,但这会导致资源锁定问题。我收到一条错误消息,指出多次等待导致进程失败
  5. 尝试了 1,2 和 3 的组合,我最终遇到了一个完全不同的问题,因为它正在尝试查找文件 X,但现在不再存在,因为它已作为上述步骤 2 的一部分被删除

我真的在为一些看似非常基本的东西而苦苦挣扎。所以我确信是我忽略了一些非常基本的东西,因为似乎没有其他人对 ADF 有这个问题。

0 投票
2 回答
166 浏览

azure - 在 Azure 数据工厂的复制活动中自动记录行号的附加列

我的 ADF 管道中有一个复制活动,它将 Excel 工作表数据复制到 JSON 接收器。我正在寻找一种添加自定义列的方法,该列可以在复制数据时跟踪行号。例如,

姓名 价值
美国广播公司 123
国防军 456
全球健康指数 789

以上应转换为以下 JSON:

0 投票
1 回答
99 浏览

azure-data-factory - 将 blob 容器中的不同架构合并到单个 sql 表中

我必须从具有不同架构的 blob 容器中的文件夹中读取 10 个文件(表 macthes 中的大部分架构)并将它们合并到一个 SQL 表文件中 1:假设有 25 个这样的列

在此处输入图像描述

文件 2:文件 2 中的某些列与文件 1 中的列匹配

在此处输入图像描述

文件 3:

在此处输入图像描述

输出:一个sql表

在此处输入图像描述

如何在 Azure 数据工厂中设置管道以将这些列合并到单个 SQL 表中。

我的方法:获取元数据活动--->每个子项---复制活动

对于映射---我构建了一个 json,其中包含这些文件中的所有源/接收器列

在此处输入图像描述

在此处输入图像描述

在此处输入图像描述

在此处输入图像描述

0 投票
2 回答
221 浏览

azure - 如何跳过 azure 数据工厂复制活动中的第 n 行?

这是我要保存在数据库中的表,这是导致问题的行: 在此处输入图像描述

当我尝试下沉整个桌子时,会弹出此错误:

在此处输入图像描述

但是当我跳过前 4 行时,复制活动会正常调试。错误还提到了列分隔符,但这是我的设置,对我来说似乎没有错。

在此处输入图像描述

解决此问题的最佳解决方案是什么?