我在 Azure 数据工厂中将 U-SQL 活动作为管道的一部分运行定义的时间片。U-SQL 活动运行一系列 U-SQL 脚本,这些脚本读入和处理存储在 Azure Data Lake 中的数据。虽然数据在我的本地运行中成功处理,但在 Azure 数据工厂云环境中运行时会引发系统内存不足异常。
输入数据约为 200MB,这不应该是处理问题,因为之前已经处理过更大的数据集。
假设内存管理可以根据需要进行扩展,在 Azure 云环境中看到内存不足异常令人惊讶,以下是在相同输入数据上运行的两次异常快照,唯一的区别是它们发生的时间。
非常感谢任何帮助,谢谢。
进一步更新:在进一步调查中观察到使用变量skipNRow:1跳过标题行解决了这个问题,我们在片段后面的 u-sql 代码有一个以日期比较为条件的循环,它可能循环没有终止,因为给定片段的标题行列的无效日期时间转换正在处理 DateTime 类型的行列作为输入。理想情况下,这应该会给出一个无效的日期时间格式异常,但我们会看到内存不足异常。