4

我在一个卫星办公室,需要从我们的主要办公室提取一些数据以显示在我们的 Intranet 上。我们在这两个位置都使用 MS SQL Server,并且我们计划在我们的卫星办公室中创建一个指向主办公室的链接服务器。两者之间的连接是我相信的VPN隧道(听起来对吗?我知道什么,我是程序员!)

我担心通过可能很慢的连接产生大量流量。我们将访问总部服务器上的 SQL 视图。选择查询运行后,数据量并不多(约 500 条记录),但没有查询的视图很大(约 30000 条记录)。

我假设在链接服务器上运行查询只会通过线路返回结果(而不是在本地查询的整个视图)。在这种情况下,主要瓶颈很可能是连接本身,假设视图已编入索引,等等。我应该注意哪些其他问题或潜在瓶颈(可能基于我构建查询的方式)?

4

1 回答 1

2

根据您的解释,您的连接可能是瓶颈。

此外,您还可以考虑在卫星位置缓存数据。
决定将取决于以下几点:
- 在主数据库中更新多少行以及多久更新一次数据
- 您需要多久在卫星位置加载相同的数据集

两个边缘示例:

  1. 数据是静态的或相对静态的 - 仅在主数据库中插入。在卫星定位中,用户经常一次又一次地查询相同的数据。在这种情况下,在卫星位置本地缓存数据是有意义的。

  2. 数据是易变的,有很多更新或/和删除。卫星定位的用户很少查询数据,当他们查询数据时,总是不同的位置条件。在这种情况下,缓存没有意义。如果连接速度很慢并且经常发生更改,那么您最终可能永远不会与主数据库同步。

缓存的另一个好处是可以实现数据压缩,这将减轻慢速连接的不良影响。

如果您选择缓存在本地位置,则有很多选择,但我相信这将是另一个话题。

[编辑]

关于压缩:您可以使用压缩的事务日志传送。在 SQL 2008 中,仅企业版支持压缩。在 SQL 2008 R2 中,它从标准版本开始可用。http://msdn.microsoft.com/en-us/library/bb964719.aspx

您可以使用您喜欢的任何压缩库在发送事务日志之前实施自定义压缩。

于 2011-05-07T01:57:55.533 回答