有没有办法在将原始文件从 Azure Blob 存储移动到 Azure 数据工厂中的 Azure Data Lake 时保留原始文件的名称?目前,它们被 Azure 重新命名为完全没有意义的东西
这是场景 - 我们使用 Azure DataFactoryV2 运行一系列管道,这些管道从本地数据源获取帐户数据,将其转换并上传到 Salesforce。
目前我们想要导入一个帐户并将其与另一个帐户关联。帐户存在标准的父/子关系(例如经销商帐户和子帐户),并且使用内部 Salesforce ID。
我们还使用外部 ID 来进行更新插入,并且该 ID 对于每条记录都是唯一的。
根据 SF 文档:这里- 当您手动调用 API 并向其传递 JSON 文件时,您可以在 JSON 中添加关系:
{
"Name" : "NewAccount",
"account__r" :
{
"Ext_UID__c" : 123
}
}
Run Code Online (Sandbox Code Playgroud)
但是,这在 Azure DataFactoryV2 中似乎无法在代码中指定查找关系,或者如果可以,我不确定如何执行。
作为参考 - 这是管道 JSON 代码:
{
"name": "Import_to_Salesforce",
"properties": {
"activities": [
{
"name": "Load_to_Salesforce",
"type": "Copy",
"policy": {
"timeout": "7.00:00:00",
"retry": 0,
"retryIntervalInSeconds": 30,
"secureOutput": false,
"secureInput": false
},
"userProperties": [
{
"name": "Source",
"value": "[dbo].[Account]" …Run Code Online (Sandbox Code Playgroud) 我想知道是否可以使用 PowerShell 动态触发数据工厂?是否有可用的脚本或使用 API 的一些解决方法?
例如,使用 PowerShell 将数据库从 S2 扩展为 S9 后,我想触发特定的数据工厂管道。
您好,我正在尝试从 azure 数据工厂中的 Json 数组中选择状态
{
"dataRead": 2997,
"dataWritten": 2714,
"filesWritten": 1,
"sourcePeakConnections": 1,
"sinkPeakConnections": 1,
"rowsRead": 11,
"rowsCopied": 11,
"copyDuration": 3,
"throughput": 0.976,
"errors": [],
"effectiveIntegrationRuntime": "DefaultIntegrationRuntime (East US)",
"usedDataIntegrationUnits": 4,
"billingReference": {
"activityType": "DataMovement",
"billableDuration": [
{
"meterType": "AzureIR",
"duration": 0.06666666666666667,
"unit": "DIUHours"
}
]
},
"usedParallelCopies": 1,
"executionDetails": [
{
"source": {
"type": "AzureSqlDatabase",
"region": "East US"
},
"sink": {
"type": "AzureBlobStorage",
"region": "East US"
},
"status": "Succeeded",
"start": "2020-03-19T06:24:39.0666585Z",
"duration": 3,
"usedDataIntegrationUnits": 4,
"usedParallelCopies": 1,
Run Code Online (Sandbox Code Playgroud)
我尝试过选择。 …
是否有一种简单的方法来声明字典或将 SQL 结果(查找活动)转换为字典?
例子:
SQL 查找响应:
{
"Id": "12313ased",
"Name": "john"
},
{
"Id": "123dsada",
"Name": "doe"
}
Run Code Online (Sandbox Code Playgroud)
我想要什么:(
Dict("12313ased": "john", "123dsada", "doe")或者任何最适合此目的的 Azure 数据工厂格式)。
Azure 数据工厂 (ADF) 是否支持链接服务 Azure Cosmos DB(表 API)?如果没有,是否可以创建链接服务Azure Table Storage并提供Cosmos DB(Table API)的连接字符串?
谢谢你!
尝试通过逻辑应用程序使用 ADF 管道加载一些 Excel 数据。但是,当通过逻辑应用触发时,任务会触发,然后立即移至下一步。寻找一种解决方案,其中下一步等待“执行数据工厂管道”完全执行后再继续。
为了清晰起见添加图像。
-谢谢
我有一个 json 文件,它包含开始日期和结束日期。我需要使用 azure 数据工厂 foreach 迭代此开始日期和结束日期。据我所知,foreach 期望项目(集合/数组)。但就我而言,我只有两个项目,即开始日期和结束日期。我想运行数据工厂来处理一些历史数据。我没有日期集合,那么如何使用开始日期和结束日期迭代它?如果有人能帮助我弄清楚,那就太好了。
我在 ADF 的 Until 活动中进行了两次查找。第一个查找 ( BookList) 是类似于下面列出的 JSON 的书籍列表。
[
{
"BookID": 1,
"BookName": "Book A"
},
{
"BookID": 2,
"BookName": "Book B"
}
]
Run Code Online (Sandbox Code Playgroud)
ExcludedBooks第二个查找是我想要从下面列出的第一个列表 ( ) 中排除的书籍列表。
[
{
"BookID": 2,
"BookName": "Book B"
}
]
Run Code Online (Sandbox Code Playgroud)
在这两次查找之后,我有一个 Filter 活动,其项目是查找中的值BookList。我希望过滤条件基于未在值中列出的 BookID 值ExcludedBooks,但我不确定如何根据 ADF 中的集合函数编写此条件。我所拥有的在下面列出,但不起作用。
@not(contains(activity('ExcludedBooks').output.value, item().BookID))
Run Code Online (Sandbox Code Playgroud)
我意识到解决此问题的一种方法是循环遍历 ExcludedBooks 的每条记录,并使用 SetVariable 活动构建 BookID 数组,该数组可以与集合函数 Contains() 一起使用,但由于某种原因,ADF 不允许嵌套活动组( ForEach 内的 Until)。
我也无法在 Until 活动之外设置排除的书籍列表,因为它会随着 Until 活动的每次迭代而变化。我还意识到嵌套组活动限制的解决方法是创建一个完全不同的管道,但这并不理想,并且在尝试返回结果时会产生不必要的复杂性。
有人对如何根据另一个查找的结果过滤查找结果有任何建议吗?
我们如何找出各种 ADF 实体(例如管道、数据集和链接服务)之间的依赖关系?
示例:我有一个数据集 DS_ASQL_DB。我们如何检查此数据集是否正在任何 ADF 管道中使用/引用?