从ADF中的手动触发器中获取参数

时间:2018-04-30 05:22:41

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

USECASE

我们有一个内部部署的Hadoop设置,我们使用power BI作为BI可视化工具。我们目前所做的关于Powerbi的数据如下:

  1. 将数据从内部部署复制到Azure Blob(我们的内部部署时间表会在Hive中准备好数据后执行此操作)
  2. 然后将Azure Blob中的数据复制到Azure-DataWarehouse / Azure-SQL
  3. Azure AAS上的多维数据集刷新,AAS从Azure DataWarehouse / SQL
  4. 中提取数据

    要执行step2和step3,我们当前正在Azure上运行Web服务器,并且端点配置为使用少量参数,如表名,azure文件位置,多维数据集信息等。

    示例http请求:

    http://azure-web-server-scheduler/copydata?from=blob&to=datawarehouse&fromloc=myblob/data/today.csv&totable=mydb.mytable

    此处,Web服务器从变量(from,fromloc,to,totable)中提取值,然后执行复制活动。我们做了这个,因为我们有很多表,所有表都可以重用相同的功能。

    现在我们有堆积的用例(重试,控制流,电子邮件警报,监控),我们正在寻找一个云替代方案来为我们做调度工作,我们仍然想要像上面那样点击一个HTTP端点。

    我们迄今为止检查的其中一个替代方案是Azure数据工厂,其中创建管道以实现上述步骤并使用http端点触发ADF。

    问题

    1. 我们如何从http post调用中获取参数并使其可用作自定义变量[1],这在管道中是必需的,这样我们仍然可以为每个步骤编写一个函数{2,3}并且函数可以拿这些参数,我们不想为每个表创建一个ADF。
    2. 我们如何检测ADF步骤中的故障并在故障期间发送电子邮件警报?
    3. 除了ADF在Azure中执行此操作之外还有哪些其他选项?
    4. [1] https://docs.microsoft.com/en-us/azure/data-factory/control-flow-system-variables

1 个答案:

答案 0 :(得分:0)

您可以通过Get Metadata Acitivity从blob触发复制作业到SQL DW。它可用于以下场景:   - 验证任何数据的元数据信息   - 数据准备就绪/可用时触发管道

对于电子邮件通知,您可以使用调用LogicApp的Web活动。请参阅以下tuturial如何发送电子邮件通知。