SQL Server 2008 R2 分布式分区视图更新/删除问题

发布于 2024-10-13 08:11:58 字数 319 浏览 7 评论 0原文

我有一个用于存储文章的大数据表(有超过5亿条记录),因此我在3台服务器上使用SQL Server 2008的分布式分区视图功能。

选择和插入操作工作正常。但删除或更新操作需要很长时间并且永远无法完成。

在“活动监视器”的“进程”选项卡中,我看到更新命令的“等待类型”字段为“PREEMPTIVE_OLEDBOPS”。

知道有什么问题吗?

注意:我认为 MSDTC 存在问题,因为更新命令未显示在第二台服务器的 SQL Profiler 中。但当检查同一服务器上的 MSDTC 状态时,状态列为 Update(active)。

I have a big data table for store articles(has more than 500 million record), therefore I use distributed partition view feature of SQL Server 2008 across 3 servers.

Select and Insert operations work fine. But Delete or Update action take long time and never complete.

In Processes tab of Activity Monitor, I see Wait Type field is "PREEMPTIVE_OLEDBOPS" for Update command.

Any idea what's the problem?

Note: I think problem with MSDTC, because Update command not shown in SQL Profiler of second server. but when check MSDTC status on the same server, status column is Update(active).

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

妄司 2024-10-20 08:11:58

最有可能发生的情况是,在应用更新语句的过滤器之前,来自其他服务器的所有数据都被拉到运行查询的计算机上。当您使用 4 部分命名时,可能会发生这种情况。可能的解决方案是:

  • 确保每个表都有正确的“检查约束”,它定义分区表的最小值和最大值。如果没有这个分区消除就无法正常工作。
  • 在另一台服务器上调用由 4 部分命名的存储过程来执行更新。
  • 使用 OPENQUERY() 连接到其他服务器

要提供 5 亿条记录,您的服务器似乎就足够了。使用带有滑动窗口的表分区进行设置可能更具成本效益处理音量的方式。

What is most likely happening is that all the data from the other server is pulled over to the machine where the query is running before the filter of your update statement is applied. This can happen when you use 4-part naming. Possible solutions are:

  • Make sure each table has a correct "check constraint" which defines the minimum and maximum value of the partition table. Without this partition elimination is not going to work properly.
  • Call a stored procedure with 4-part naming on the other server to do the update.
  • use OPENQUERY() to connect to the other server

To serve 500 million records your server seems to be adequate. A setup with Table Partitioning with a sliding window is probably a more cost effective way of handling the volume.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文