Azure functions 使用ADF在SQL和CosmosDB之间移动数据,并进行复杂的数据转换
我正在尝试在Azure SQL数据库和ADF中的Cosmos DB之间移动数据。但据我所知,复制活动不允许我对数据进行任何更改。数据流选项仅允许我使用预定功能。(Abs、cos、aso) 我创建了一个Azure函数,其中包含转换所需的数学。我将试着用一个例子来说明 SQL查询的结果(可能有多条记录): 然后我需要函数使用Azure functions 使用ADF在SQL和CosmosDB之间移动数据,并进行复杂的数据转换,azure-functions,azure-data-factory,Azure Functions,Azure Data Factory,我正在尝试在Azure SQL数据库和ADF中的Cosmos DB之间移动数据。但据我所知,复制活动不允许我对数据进行任何更改。数据流选项仅允许我使用预定功能。(Abs、cos、aso) 我创建了一个Azure函数,其中包含转换所需的数学。我将试着用一个例子来说明 SQL查询的结果(可能有多条记录): 然后我需要函数使用int1、int2作为Azure函数的参数。我需要插入Cosmos DB的对象看起来像: id = 1, int1 = 4, int2 = 3, Calculated1 = Az
int1、int2
作为Azure函数的参数。我需要插入Cosmos DB的对象看起来像:
id = 1,
int1 = 4,
int2 = 3,
Calculated1 = AzureFunction.Result[0]
Calculated2 = AzureFunction.Result[1]
我的场景有点复杂,但这是最低限度的。这可以在ADF中完成吗?对于您的场景,不太确定如何进行数据转换,有两种解决方法 解决方案1: 如果它非常复杂,那么您可以这样做:查找active+Azure函数:
Calculate1
和
计算2
,构建
需要HTH.数据流几乎肯定是正确的方法,它的表达式可以执行复杂的数学运算。你能举一个这样一个公式的例子吗?Hi@Steffen Hvid,不太确定函数方法是怎么做的,获取
Calculate1
和Calculate2
是一个复杂的数据转换吗?我正在将坐标从度转换为ETRS89,而这方面的数学对于我来说是非常复杂的,无法进行实际计算。幸运的是,有一个库,可以转换这个。因此,我需要使用Azure函数进行计算。但这个函数的作用并不重要。原则上,解决方案可以是将数据传递到azure函数,然后将数据返回到cosmos db。谢谢您的输入。我已经决定实际上只是将1-1拷贝到CosmosDB,然后创建函数来选择所有不包含转换数据的记录。然后把它转换过来。这使得可以在事后运行我的计算,并且我的复制活动不依赖于功能可用性。
id = 1,
int1 = 4,
int2 = 3,
Calculated1 = AzureFunction.Result[0]
Calculated2 = AzureFunction.Result[1]