SQL Server并行 - 永远不会发生

时间:2013-05-17 21:30:00

标签: sql sql-server

我有sql server的64位开发版本。

SELECT @@VERSION 
  

Microsoft SQL Server 2008 R2(SP1) - 10.50.2500.0(X64)2011年6月17日   00:54:03版权所有(c)Microsoft Corporation Developer Edition   Windows NT 6.1(Build 7601:Service Pack 1)上的(64位)

我的主表有600k记录。我经常从中选择并在select中有许多(超过6个)subquerys,同时也自己加入同一个表。有些查询占用了15分钟。但我从未见过sql server使用过多个处理器。

In this issue有一个问题列表,我的查询填写了所有这些问题。 “你有一台多核机器吗?”真的吗?那是一个问题?

http://technet.microsoft.com/en-us/library/ms189094(v=sql.90).aspx 是的我有“最大并行度”= 0。

所以我的请求是,有人可以创建一个脚本,证明并行机在他们的机器上工作。

我希望有类似的东西。

  • 创建2个表

  • 自动用ids和一些垃圾填充

  • 从两个表中选择,使用子查询,排序,组,以及展示并行性的任何内容。

由于 布赖恩

1 个答案:

答案 0 :(得分:2)

这导致我的并行性查询:

USE master

SELECT o1.object_id, o1.type
INTO #temp
FROM sys.objects o1
CROSS JOIN sys.objects o2
CROSS JOIN sys.objects o3
CROSS JOIN sys.objects o4

SELECT o1.type, o2.type, COUNT_BIG(*)
FROM #temp o1
JOIN #temp o2 ON o1.object_id = o2.object_id
GROUP BY o1.type, o2.type