从Sql Server流式传输或发布实时数据

时间:2014-04-19 17:47:57

标签: sql-server

最终目标是拥有一个允许实时监控或回显插入到SQL数据库中的表的值的UI。此监视并不重要,因此保证传递的优先级低于对SQL Server性能的影响。有问题的表每分钟插入2k到5k行。

有哪些机制允许sql server触发并忘记对sql本身影响最小的队列或服务总线?

1 个答案:

答案 0 :(得分:0)

SQL CLR有一些选项,如果它可用,要么使用从执行INSERT的其他SP调用的触发器或CLR SP。

您可以使用Service Broker将消息发送到另一台服务器,以分发负载。

由于监控并不重要,如果它只需要偶尔使用一次,您可以考虑使用SQL Profiler使用的相同挂钩的编程接口,或者SQL Profiler本身。

如果您的系统架构是客户端 - 服务器,您可以创建"任务"每当调用INSERT操作时进行日志记录/监视,并将它们排队到后台线程,在后台线程中可以以较低的优先级处理它们,甚至写入完全不同的数据库服务器,以避免影响性能。

不幸的是,如果您使用的是Azure,Service Broker和SQL Profiler都无法使用。