使用Azure Data Factory执行雪花存储过程

时间:2019-06-02 14:56:18

标签: azure azure-data-factory azure-data-factory-2 snowflake-datawarehouse snowflake

我有一个已启动并正在运行的链接服务,从中可以运行简单的查询。

我的意图是将ETL的大多数逻辑封装在一个存储过程中,该存储过程是从Azure数据工厂“查找”组件计划和执行的。 但是,似乎无法使用在工作台上运行良好的常规CALL test_snowflake_sp()来执行它。

我的存储过程由一个简单的查询组成,后跟“失败” /“成功”消息,出现以下错误消息:

  

活动获取值失败:失败发生在“源”端。 ErrorCode = UserErrorOdbcInvalidQueryString,'Type = Microsoft.DataTransfer.Common.Shared.HybridDeliveryException,Message =以下ODBC查询无效:'CALL test_snowflake_sp()',Source = Microsoft.DataTransfer.Runtime.GenericOdbcConnectors,'

不幸的是,我没有Python访问权限可以在代码中运行它。

有人知道吗?

预先感谢

1 个答案:

答案 0 :(得分:0)

您可以完全按照示例中的语法从Lookup中调用Snowflake存储的proc。确保为数据工厂用户授予了对proc的“使用”权限,并在您每次“创建或替换”该proc时重新授予许可(假定您已为其创建角色,则“将过程test_snowflake_sp()上的使用授予角色datafactory”) ADF用户)。