3

我在 Azure 数据工厂中将 U-SQL 活动作为管道的一部分运行定义的时间片。U-SQL 活动运行一系列 U-SQL 脚本,这些脚本读入和处理存储在 Azure Data Lake 中的数据。虽然数据在我的本地运行中成功处理,但在 Azure 数据工厂云环境中运行时会引发系统内存不足异常。

输入数据约为 200MB,这不应该是处理问题,因为之前已经处理过更大的数据集。

假设内存管理可以根据需要进行扩展,在 Azure 云环境中看到内存不足异常令人惊讶,以下是在相同输入数据上运行的两次异常快照,唯一的区别是它们发生的时间。

异常快照 - 1

异常快照 - 2

非常感谢任何帮助,谢谢。

进一步更新:在进一步调查中观察到使用变量skipNRow:1跳过标题行解决了这个问题,我们在片段后面的 u-sql 代码有一个以日期比较为条件的循环,它可能循环没有终止,因为给定片段的标题行列的无效日期时间转换正在处理 DateTime 类型的行列作为输入。理想情况下,这应该会给出一个无效的日期时间格式异常,但我们会看到内存不足异常。

4

1 回答 1

1

看起来用户代码中的某些内容导致了异常,您可以尝试在 VS 中运行失败的顶点调试功能。您可以在 VS 中打开失败的作业,它应该在作业概述中为您提供一个错误栏,让您开始该过程。它会将失败的部分下载到桌面并让您逐步完成。

于 2016-09-30T22:08:41.630 回答