我正在运行U-SQL Activity作为Azure数据工厂中的管道的一部分,用于定义的时间片。 U-SQL Activity运行一系列U-SQL脚本,这些脚本读入并处理存储在Azure Data Lake中的数据。虽然数据在本地运行中成功处理,但在Azure数据工厂云环境中运行时会导致系统内存不足。
输入数据大约为200MB,这不应该是一个问题处理,因为先前已经处理了更大的数据集。
假设内存管理可以根据需要进行扩展,令人惊讶的是在Azure云环境中看到内存不足,以下是对同一输入数据进行两次运行的异常快照,唯一的区别是它们的时间发生。
非常感谢任何帮助,谢谢。
进一步更新:在进一步调查中观察到使用变量 skipNRow跳过标题行:1 重新解决了问题,我们的片段后面的u-sql代码有一个以日期比较为条件的循环由于标题行列处理日期时间类型行列作为输入,因此标题行列的日期时间转换无效,因此循环可能无法终止。理想情况下,这应该提供无效的日期时间格式异常,但我们会看到内存不足异常。
答案 0 :(得分:1)
看起来用户代码中的某些内容导致异常,您可以尝试在VS中运行失败的顶点调试功能。您可以在VS中打开失败的作业,它应该在作业概述中为您提供一个错误栏,让您启动该过程。它会将失败的部分下载到桌面,让您单步执行。