移动 - 而不是复制 - Azure数据工厂中的数据

时间:2017-01-19 06:51:28

标签: azure azure-data-factory azure-data-lake

我想设置Azure数据工厂管道,该管道执行移动(即复制,验证,删除)操作,而不仅仅是Blob存储和Data Lake Store之间的复制操作。我似乎无法找到有关如何做到这一点的任何细节。

3 个答案:

答案 0 :(得分:1)

Azure数据工厂没有移动文件的内置活动或选项,而不是复制它们。但是,您可以使用Custom Activity

执行此操作 github上的

This example显示了如何使用Azure Blob执行此操作:

...
blob.DeleteIfExists();
...

https://github.com/Azure/Azure-DataFactory/tree/master/Samples/DeleteBlobFileFolderCustomActivity

如果您认为这是一项重要功能,请添加反馈请求:

https://feedback.azure.com/forums/270578-data-factory

最近添加了删除活动:

https://azure.microsoft.com/en-us/blog/clean-up-files-by-built-in-delete-activity-in-azure-data-factory/

答案 1 :(得分:0)

来自ADF的产品团队。虽然我们正在将“删除”作为ADF中的第一类活动,但我们已经在Github中发布了一个示例,说明用户在使用ADF复制活动复制文件后如何删除文件(在本例中为Azure Blob)。 / p>

https://github.com/Azure/Azure-DataFactory/tree/master/Samples/DeleteBlobFileFolderCustomActivity

使用ADF自定义.Net活动可以实现这一点。该示例展示了以下内容:

  • 一个C#文件,可用作ADF自定义.net活动的一部分,用于删除特定blob或整个文件夹。
  • 用户需要在管道json的'inputToDelete'扩展属性中提供要删除的Azure Blob数据集列表,作为逗号分隔列表。自定义.Net活动将检索数据集FolderPath和filename属性。如果仅指定了FolderPath,它将删除blob文件夹的所有内容。

Github回购的内容:

  • DeleteFromBlobActivity.cs - 用作删除blob文件夹的ADF Custom .Net活动的一部分的C#文件
  • PipelineSample.json - 展示如何调用ADF Custom .Net delete blob活动。替换样本管道json中与数据集名称,计划和链接服务相对应的占位符。

答案 2 :(得分:0)

只需为遇到此问题的任何人添加现代更新即可。

Data Factory V2相对发布了专用的删除活动

在撰写本文时,此支持:

  • Azure Blob存储
  • Azure Data Lake Storage Gen1
  • Azure Data Lake Storage Gen2
  • 文件系统
  • FTP
  • SFTP
  • Amazon S3
{
    "name": "DeleteActivity",
    "type": "Delete",
    "typeProperties": {
        "dataset": {
            "referenceName": "<dataset name>",
            "type": "DatasetReference"
        },
        "recursive": true/false,
        "maxConcurrentConnections": <number>,
        "enableLogging": true/false,
        "logStorageSettings": {
            "linkedServiceName": {
                "referenceName": "<name of linked service>",
                "type": "LinkedServiceReference"
            },
            "path": "<path to save log file>"
        }
    }
}

来自: https://docs.microsoft.com/en-gb/azure/data-factory/delete-activity