如何编写转移到数据湖的Azure Blob存储触发器

时间:2018-03-17 00:34:05

标签: azure azure-storage azure-data-lake azure-blob-storage

我想创建一个blob存储触发器,它将任何文件放入blob存储(一个快速进程)并将它们传输到Data Lake存储(而不是另一个Blob存储位置)。

可以这样做吗?

可以使用JavaScript完成,还是需要C#?

示例代码是否存在显示如何执行此操作?如果是这样,你会非常友好地指出我吗?

注意:我们已经创建了一个从Blob存储到Data Lake存储的管道。这不是我在这里问的问题。

2 个答案:

答案 0 :(得分:1)

您可以使用Azure功能或Azure Logic App检测Blob存储上的新文件,并调用您的webhook来触发管道或自行移动。

答案 1 :(得分:0)

  

可以这样做吗?

正如jamesbascle提到我们可以使用Azure功能来做到这一点。

  

可以使用JavaScript完成,还是需要C#?

可以使用javascript或C#完成。

  

示例代码是否存在显示如何执行此操作?如果是这样,你会非常友好地指出我吗?

如何创建Blob存储触发功能,请参阅this document。我们也可以从this document获得C#/ javascript演示代码。

JavaScript代码

module.exports = function(context) {
    context.log('Node.js Blob trigger function processed', context.bindings.myBlob);
    context.done();
};

C#代码

[FunctionName("BlobTriggerCSharp")]        
public static void Run([BlobTrigger("samples-workitems/{name}")] Stream myBlob, string name, TraceWriter log)
{
    log.Info($"C# Blob trigger function Processed blob\n Name:{name} \n Size: {myBlob.Length} Bytes");
}