只是寻找一些有关通过计划的 Web 作业处理数据导入的最佳方法的建议。 我有 8 个 json 文件,每 5 小时通过 FTP 客户端使用 JSON 序列化程序将其导入到内存中,然后使用 EF6 处理这些 JSON 对象并将其插入到 Azure SQL 中。每个文件都按顺序循环处理,因为我想确保所有数据都正确插入,因为当我尝试使用 Parallel ForEach 时,某些数据没有插入到相关表中。因此,如果 WebJob 失败,我知道出现了错误,我们可以再次运行,问题是现在需要很长时间才能完成,接近 2 小时,因为我们有大量数据 - 每个文件有 500 个位置,每个位置有 11 个天和 24 小时数据。
任何人都知道如何更快地完成此操作,同时确保数据始终正确插入或处理任何错误。正在考虑使用存储队列,但我们将来可能需要指向其他数据库,或者我可以为每个文件使用 1 个 Web 作业,以便每 5 小时为每个文件安排 8 个 Web 作业,因为我认为数量有限制我每天可以运行的网络作业。
或者是否有其他方法可以将数据导入到可以计划的 Azure SQL 中。
最佳答案
Azure Web 作业 ( via the Web Jobs SDK ) 可以监视和处理 BLOB。无需创建计划作业。 SDK 可以监视新的 BLOB 并在创建它们时对其进行处理。您可以将处理分解为较小的文件并在创建它们时加载它们。
Azure 流分析具有类似的功能。
关于json - 使用 Azure Web 作业将数据导入到 Azure SQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36266299/