猿问

如何构建用于文件验证检查和发送错误邮件的Azure数据工厂和Azure函数

我在管道中有一个 Azure 数据工厂复制活动。复制活动正在进行中。我有 2 个问题。第一个问题是如何构建 Azure 数据工厂或 Azure 函数来执行以下任何流程。

  1. 将上传的 csv 文件或 Excel 文件复制到另一个容器。

  2. 对 python 编码的 azure 函数执行验证检查。

  3. 将包含错误消息的邮件作为由 SMTP 的 Azure 发送网格验证检查生成的附件发送。

  4. 如果验证检查没有问题,则将该文件复制到 SQL 数据库表。

非常感谢您提前的配合。


森栏
浏览 92回答 1
1回答

倚天杖

根据我的理解,回答您的问题如下。如果您需要其他内容或更多详细信息,请随时澄清。将上传的 csv 文件或 Excel 文件复制到另一个容器。使用复制数据,将源 blob 作为输入,将目标 blob 作为输出谢谢。我得到了它。我也可以实现这个。  对 python 编码的 azure 函数执行验证检查使用数据工厂中的Azure 函数活动来调用 http 触发函数(假设您的意思是对正在上传/复制的文件进行验证检查?)是的,我愿意。该文件与我上传和复制的文件相同。如何使用消息队列触发器?由于文件很大,我希望使用复制完成队列的触发器。您不需要排队来处理自己的事情。您可以使用内置的 Blob触发器 ,这将使您的生活更轻松。将包含错误消息的邮件作为由 SMTP 的 Azure 发送网格验证检查生成的附件发送。您可以使用 SendGrid绑定从同一 python Azure Functions 通过 SendGrid 发送电子邮件 。但函数绑定不支持在邮件中附加文件。为此,您可以使用 SendGrid SDK 编写自定义代码,而不是使用内置绑定。我不知道函数bindind 不支持附加文件。我尝试使用sendgrid SDK和API是的你可以。我相信这就是 REST API 规范。如果您使用 SendGrid SDK,它会为您处理好。如果验证检查没有问题,则将该文件复制到 SQL 数据库表。您的意思是在某些 SQL 表列中将文件保留为二进制吗?尽管从技术上讲您可以将其存储在 varbinary 类型列中。但我建议存储 blob 链接,而不是在 SQL 中存储整个文件。您可以使用管道中的SQL 活动来调用存储过程,并将 blob 链接作为参数传递。我的评论中包含了漏词。下面是正确的。如果验证检查没有问题,请将文件中的信息复制到SQL数据库表中,因为我积累数据后需要分析数据。我不知道如何设置 SQL 数据库迁移过程的触发器。我使用 Stage blob 的复制完成消息队列作为输出是否更好?如上所述,您不需要自定义队列,因为数据工厂已经有触发器可以帮助您。
随时随地看视频慕课网APP

相关分类

Python
我要回答