我们有一个 100M 行的大型数据集。我需要汇总一些摘要的数据。我们目前正在通过 Proc SQL 执行此操作。当我运行它时,该进程会运行一段时间,然后出乎意料地,该进程在工作区服务器中终止。这会让 EG 挂起,直到它最终出错(几小时后)。
这可能是什么原因造成的?我监控盒子,我们没有用尽资源。
如何进行故障排除?工作区服务器没有生成日志。
我们有一个 100M 行的大型数据集。我需要汇总一些摘要的数据。我们目前正在通过 Proc SQL 执行此操作。当我运行它时,该进程会运行一段时间,然后出乎意料地,该进程在工作区服务器中终止。这会让 EG 挂起,直到它最终出错(几小时后)。
这可能是什么原因造成的?我监控盒子,我们没有用尽资源。
如何进行故障排除?工作区服务器没有生成日志。
如果进程在另一个数据库上运行,通过 ODBC 直通或 SAS/Access,则跟踪选项可能有助于调试(将在日志中准确显示正在执行的内容)
options sastrace=',,,d' sastraceloc=saslog nostsuffix;
去除:
options sastrace=none;
关于工作区日志记录 - 这可能没有打开。您可以通过 SMC 或手动执行此操作(请参阅本指南)。
您能否提供有关正在执行的代码、您的环境等的更多详细信息?
另一种选择可能是在较少数量的观察上运行(inobs=100)。如果这仍然不起作用,请尝试修改您的查询 - 一次删除一个表..