gpt4 book ai didi

azure - 集成运行时有两个磁盘驱动器,有没有办法参数化链接服务文件系统中的 Host 字段?

转载 作者:行者123 更新时间:2023-12-03 04:49:13 25 4
gpt4 key购买 nike

我正在尝试部署一个带有复制数据管道的 Azure 数据工厂,该管道从一个或多个已部署/本地文件系统路径中提取文件并将其转储到 Blob 存储中。文件系统上的源文件路径可能跨越多个不同的驱动器(例如 - C:\fileshare1 与 D:\fileshare2),并且可能包括通过 UNC 路径引用的网络位置(例如 -\localnetworkresource\fileshare3)。

我想配置单个本地文件系统连接和源数据集,并仅参数化链接服务的主机属性。然后,我的管道将仅迭代文件共享路径的集合并重用数据集和链接的服务连接。但是,似乎没有任何方法可以让数据集或管道向链接服务提供主机信息。当然可以提供来自管道和数据集的文件夹信息,但这些信息将连接到链接服务连接中指定的主机,因此不允许我访问不同的驱动器或网络资源。

通过为需要包含的每个不同文件共享配置单独的链接服务连接、数据集和管道来完成此操作相当简单,但我更愿意管理单个管道。

我已经尝试创建链接服务的 JSON,但它不起作用,有人可以帮助我吗?

https://learn.microsoft.com/en-us/azure/data-factory/parameterize-linked-services

最佳答案

是的,您可以按如下方式参数化文件系统链接服务。首先您需要创建一个文件系统链接服务,然后您可以修改 JSON 代码以添加参数部分,如下所示:

{
"name": "OnPremFileSystemLinkedService_Parameterized",
"type": "Microsoft.DataFactory/factories/linkedservices",
"properties": {
"type": "FileServer",
"parameters": {
"HostParameter": {
"type": "string",
"defaultValue": "C:\\[Folder]"
},
"userIDParameter": {
"type": "string",
"defaultValue": "DOMAIN\\USERNAME"
}
},
"annotations": [],
"typeProperties": {
"host": "@{linkedService().HostParameter}",
"userId": "@{linkedService().userIDParameter}",
"encryptedCredential": "XXXXXXXXXXXencryptedKeyXXXXXXXXX"
},
"connectVia": {
"referenceName": "MySelfHostedIR",
"type": "IntegrationRuntimeReference"
}
}
}

在我的示例中,我仅使用单个文件共享作为输入和复制事件。但根据您的要求,您可以将 FileShare 集合列表传递给 ForEach 事件,并迭代每个 FileShare 并将这些值传递给您的复制事件 -> 源/接收器数据集参数 -> 链接服务参数属性。

下面是有关如何使用参数化文件系统链接服务的示例

enter image description here

希望这有帮助。

关于azure - 集成运行时有两个磁盘驱动器,有没有办法参数化链接服务文件系统中的 Host 字段?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61129552/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com