我正在尝试使用Azure资源管理器模板部署Azure数据工厂服务。到目前为止,我已经能够创建数据工厂本身,但是我无法使用这种方法向其添加任何链接服务,管道或数据集。由于没有可用的Data Factory模板示例,因此我根据REST API文档创建了我的数据库。以下是我尝试实现的模板,但是服务器返回了“错误请求”。
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"siteName": {
"type": "string"
}
},
"resources": [
{
"apiVersion": "2015-05-01-preview",
"type": "Microsoft.DataFactory/datafactories",
"name": "teststoragedatafactory",
"location": "[resourceGroup().location]",
"resources": [
{
"apiVersion": "2015-05-01-preview",
"type": "linkedservices",
"name": "mylinkedservice",
"location": "[resourceGroup().location]",
"dependsOn": [
"/subscriptions/xxx/resourceGroups/TestARMTemplate/providers/Microsoft.DataFactory/datafactories/teststoragedatafactory"
],
"properties":
{
"type": "AzureStorageLinkedService",
"description": "",
"connectionString": "DefaultEndpointsProtocol=https;AccountName=xxx;AccountKey=xxx"
}
}
]
}
]
}
Run Code Online (Sandbox Code Playgroud)
根据我从日志中获得的信息,执行了对API的请求,并且端点似乎是正确的。但是,请求有效负载似乎存在问题。
你们是否有使用ARM模板部署Data Factory服务的经验?是否可以使用这种方法创建链接服务?有什么办法可以查看用于创建链接服务的请求?
非常感谢您的帮助!
哈维
azure azure-resource-manager azure-data-factory cortana-intelligence
我坚持用.net 4.6.1创建azure批处理池.
我经历了那些非常好的资源:
我发现有一种方法可以使用.net 4.6.1 而无需在节点上手动安装它.有一种编程方式可以使用最新的.net版本(.net 4.6.1)设置Windows Ghost映像,但我的节点是事先定义的.
我需要.net 4.6.1,因为我们使用Data Factory和在azure批处理节点上运行的自定义活动.我们在该节点上手动升级了.net版本,但Microsoft不保证该状态将保留,我们注意到该节点已重置为其原始状态几次.
我的问题是:
你知道在天蓝门户上有没有办法选择安装了.net 4.6.1版本的OS系列的OS系列?
有没有人知道什么时候会有.net 4.6.1的操作系统?
或者我应该使用StartTask功能并尝试手动安装.net 4.6.1?但是,该选项听起来像是一些解决方法,而不是正确的解决方案.
我正在考虑将 Google DataFlow 作为运行管道的选项,该管道涉及以下步骤:
我喜欢 DataFlow 管理完成工作所需的虚拟机的生命周期,因此我不需要自己启动或停止它们,但我遇到的所有示例都使用它来执行数据挖掘类型的任务。我想知道对于图像处理和爬行等其他批处理任务来说,这是否是一个可行的选择。
amazon-data-pipeline google-cloud-platform google-cloud-dataflow azure-data-factory apache-beam
我有一个 VSTS CI/CD 管道,它将本地的 Azure 数据工厂项目设置部署到 Azure 平台中的现有数据工厂。有没有办法可以对我的项目进行单元测试?我知道构建定义中有一个 Visual Studio 测试任务。如何为 ADF 创建单元测试项目?任何建议都会有所帮助。
我目前正在使用ADF按计划将文件从SFTP服务器复制到Blob存储.
文件名结构为AAAAAA_BBBBBB_CCCCCC.txt.
是否可以在复制到Blob存储之前重命名该文件,以便最终得到类似文件夹的结构,如下所示?
AAAAAA/BBBBBB/CCCCCC.txt
有没有一种方法可以在 Azure 数据工厂中创建一个触发器,该触发器仅在管道尚未运行时才启动它?我基本上想连续运行管道,因此无论出于什么原因它完成(失败/成功),我希望它尽快恢复。
{“errorCode”:“2200”,“message”:“ErrorCode = FailedDbOperation,'Type = Microsoft.DataTransfer.Common.Shared.HybridDeliveryException,Message =数据库操作失败,出现以下错误:'PdwManagedToNativeInteropException ErrorNumber:46724,MajorCode: 467,次要代码:24,严重性:20,状态:2,抛出“Microsoft.SqlServer.DataWarehouse.Tds.PdwManagedToNativeInteropException”类型的异常。',Source =,''Type = System.Data.SqlClient.SqlException,Message = PdwManagedToNativeInteropException 错误号:46724,主要代码:467,次要代码:24,严重性:20,状态:2,抛出类型为“Microsoft.SqlServer.DataWarehouse.Tds.PdwManagedToNativeInteropException”的异常。,源 = .Net SqlClient 数据提供程序,SqlErrorNumber = 100000 ,Class=16,ErrorCode=-2146232060,State=1,Errors=[{Class=16,Number=100000,State=1,Message=PdwManagedToNativeInteropException 错误编号:46724,主要代码:467,次要代码:24,严重性:20,状态: 2,抛出了“Microsoft.SqlServer.DataWarehouse.Tds.PdwManagedToNativeInteropException”类型的异常。,},],'", "failureType": "UserError", "target": "hana_ODS_DEV" }
谁能告诉我这个错误的主要原因吗?我正在尝试将数据从 SAP HANA 迁移到 Azure SQL 数据仓库
我正在尝试在Azure数据工厂数据集中读取具有.xlsx扩展名的Azure Blob存储中的文件并使其表现出色。它引发以下错误
Error found when processing 'Csv/Tsv Format Text' source 'Filename.xlsx' with row number 3: found more columns than expected column count: 1.
Run Code Online (Sandbox Code Playgroud)
什么是在Azure Data Factory中读取Excel文件的正确列和行分隔符
关于如何使用Azure数据工厂将数据从Blob读取到SQL中,有很多文档,甚至还有关于如何将查询的输出转储到单个Blob的文档。我试图为表中的每一行(在Azure SQL Server上)创建一个Blob,由一个字段命名,并在另一字段中包含数据。
我的表有一个GUID id字段和一个nvarchar(max)data字段(其中包含JSON,尽管基本上无关紧要)。假设我有以下几行:
id | data
---------------------------------------+----------
38b2f551-5f13-40ce-8512-c108a05ecd44 | foo
4db5b25b-1194-44e9-a7b2-bc8889c32979 | bar
2a3bd653-ce14-4bd2-9243-6923e97224c6 | baz
Run Code Online (Sandbox Code Playgroud)
我希望创建以下Blob:
https://mycontainer.blob.core.windows.net/myblobs/38b2f551-5f13-40ce-8512-c108a05ecd44
https://mycontainer.blob.core.windows.net/myblobs/4db5b25b-1194-44e9-a7b2-bc8889c32979
https://mycontainer.blob.core.windows.net/myblobs/2a3bd653-ce14-4bd2-9243-6923e97224c6
Run Code Online (Sandbox Code Playgroud)
它们的内容应该是相关的数据字段,即foo,bar和baz分别。
Data Factory v2-每行生成一个json文件具有有效的答案,但它涉及一次查询数据库以获取所有ids,然后再查询N次以从每一行获取数据。似乎应该只对这两个字段查询一次,对文件名使用一个查询,对内容使用一个查询,但是我还无法弄清楚该怎么做。
azure-storage-blobs azure-data-factory azure-blob-storage azure-data-factory-2
我需要使用 Azure Datafactory 处理容器中的文件,并在下次执行时跟踪已处理的文件。
所以我在数据库中保留一个表来存储已处理的文件信息,在ADF中我获取已处理文件的文件名,我想检查当前文件是否已被处理。
我正在使用查找活动:获取所有已处理的文件 ,通过使用以下查询从数据库获取已处理的文件:
select FileName from meta.Processed_Files;
Run Code Online (Sandbox Code Playgroud)
然后我遍历目录,并使用获取元数据活动获取目录中当前文件的文件详细信息:“获取迭代中当前文件的详细信息”
在 If Condition 活动中,我使用以下表达式:
@not(contains(activity('Get All Files Processed').output.value,activity('Get Detail of current file in iteration').output.itemName))
Run Code Online (Sandbox Code Playgroud)
即使文件已被处理,这也始终返回 True
我们如何比较返回值中的文件名
活动的输出('获取已处理的所有文件').output.value
{
"count": 37,
"value": [
{
"FileName": "20210804074153AlteryxRunStats.xlsx"
},
{
"FileName": "20210805074129AlteryxRunStats.xlsx"
},
{
"FileName": "20210806074152AlteryxRunStats.xlsx"
},
{
"FileName": "20210809074143AlteryxRunStats.xlsx"
},
{
"FileName": "20210809074316AlteryxRunStats.xlsx"
},
{
"FileName": "20210810074135AlteryxRunStats.xlsx"
},
{
"FileName": "20210811074306AlteryxRunStats.xlsx"
},
Run Code Online (Sandbox Code Playgroud)
活动的输出('在迭代中获取当前文件的详细信息').output.itemName
"20210804074153AlteryxRunStats.xlsx"
Run Code Online (Sandbox Code Playgroud)