Azure数据工厂-如何从blob存储中仅读取新文件

Azure数据工厂-如何从blob存储中仅读取新文件,azure,azure-data-factory,azure-blob-storage,Azure,Azure Data Factory,Azure Blob Storage,我在我的应用程序洞察中有一个“连续导出”过程,可以根据我的新洞察创建新文件 除此之外,我还有一个过程,使用Azure数据工厂,将Blob存储数据加载到一个SQL表中 问题: 我无法从A.D.F.读取数据,只能从Blob存储中读取新文件,而且我总是在处理相同的数据。目前,我忽略了SQL存储过程中加载过程之后的重复数据,但我想通过只从blob存储中读取新数据来提高此过程的效率,我可以从a.D.F.中执行此操作吗。? 有人能帮我吗?实现这一目标的备选方案有哪些 致以最良好的祝愿, 鲁伊·费尔南德斯 实

我在我的应用程序洞察中有一个“连续导出”过程,可以根据我的新洞察创建新文件

除此之外,我还有一个过程,使用Azure数据工厂,将Blob存储数据加载到一个SQL表中

问题: 我无法从A.D.F.读取数据,只能从Blob存储中读取新文件,而且我总是在处理相同的数据。目前,我忽略了SQL存储过程中加载过程之后的重复数据,但我想通过只从blob存储中读取新数据来提高此过程的效率,我可以从a.D.F.中执行此操作吗。? 有人能帮我吗?实现这一目标的备选方案有哪些

致以最良好的祝愿, 鲁伊·费尔南德斯

实现这一目标的备选方案有哪些

如果WebJob是可接受的,我们可以使用WebJob blob触发器轻松实现这一点。我们可以从Azure获得有关WebJob触发器的更多信息

以下是演示代码:

 public static void ProcessBlobTrigger([BlobTrigger("containername/{name}")] TextReader input, TextWriter log)
        {
            // your logic to process data
        }

我建议您通过将旧Blob重命名为“archive/oldBlobName”,以编程方式(自定义管道)归档旧Blob!这样做之后,下次在代码中迭代分段blob结果(数据集中指定的容器中包含的blob列表)时,只需转义名称以“Archive”开头的blob


Data Factory可以很好地处理基于时间的文件夹,并且有一些功能可以帮助实现这一点-请参阅。我试图避免使用此选项,但我遵循了它,因为这是实现我想要的唯一方法。谢谢你,汤姆
        foreach (IListBlobItem listBlobItem in blobList.Results)
        {
            CloudBlockBlob inputBlob = listBlobItem as CloudBlockBlob;

            // Take all blobs from container that are not in "Archive"
            if ((inputBlob == null) || string.IsNullOrEmpty(inputBlob.Name)
                            || inputBlob.Name.ToLower().StartsWith("Archive"))
            {
                continue;
            }
                     ...