我有一个 SSIS 包,我计划每 15 分钟运行一次。该软件包将从 ftp 服务器获取文件并将它们移动到服务器上的文件夹,然后处理文件。
我需要做的是在运行 SSIS 包之前检查文件是否存在。
我正在对服务器内文件夹中的文件做类似的事情,将它们移动到 ftp 服务器以返回客户端。
有人有这方面的经验吗?
如果它是您希望检查文件的远程 FTP 服务器,并且您的 FTP 任务在 SSIS 包中……那么您将无法在不运行 SSIS 包的情况下检查文件。如果您在包中的初始 FTP 任务中检查文件,那么您每 15 分钟启动一个 SSIS 包,这可能不是一个好习惯。
接下来发生的事情是企业问为什么它不能每五分钟运行一次,然后他们问为什么它不能每两分钟运行一次。这是很多服务器开销。
有时我使用了两个 SSIS 包,一个执行 FTP 传输,另一个执行本地处理,并将它们设置为 SQL Server 代理作业的两个独立步骤。这样做的原因是为了区分错误行为。但这是针对每晚的工作,而不是每 15 分钟运行一次的工作。
如果您正在检查本地网络上的文件,或者直接使用 FTP,那么您可以使用批处理文件或其他东西作为 SQL Server 代理作业的第一步(并在必要时中止)。这样可以降低开销。