【发布时间】:2010-10-28 18:57:39
【问题描述】:
这是一个有趣的问题。我有一个用 c# 编写的 ETL 脚本,我一直在定期手动运行。它用于更新我的网络应用程序的数据库。
我想自动化 ETL 流程并为 Web 应用管理员创建一个界面以手动启动 ETL 流程。
我可以让 sql server 按计划启动 ETL 过程并在网页上实现一个按钮或其他东西来做同样的事情,但我不想把我的代码放在两个不同的地方,因为我不当它改变时,不想在 2 个地方更新它。但我不知道如何让我的网络应用程序告诉 SQL Server 手动启动计划进程。这个可以吗?
或
我可以通过某种方式在 Web 应用程序本身中实现调度,但现在大多数人都熟悉尝试这样做时所面临的问题(应用程序可能在某些时候没有运行,必须等待请求启动进程(没有一些诡计))。另外,由于 ETL 过程需要一段时间,我不想让一些可怜的最终用户等待响应,所以它肯定必须使用新线程。
我还能做什么?你会怎么做?
【问题讨论】:
标签: c# .net asp.net database etl