小编Amy*_*y B的帖子

高度碎片化是一个问题吗?

DBCC SHOWCONTIG scanning 'MyTable' table...
Table: 'MyTable' (2048062382); index ID: 1, database ID: 28
TABLE level scan performed.
- Pages Scanned................................: 1019182
- Extents Scanned..............................: 127400
- Extent Switches..............................: 127399
- Avg. Pages per Extent........................: 8.0
- Scan Density [Best Count:Actual Count].......: 100.00% [127398:127400]
- Logical Scan Fragmentation ..................: 0.01%
- Extent Scan Fragmentation ...................: 77.25%
- Avg. Bytes Free per Page.....................: 135.7
- Avg. Page Density (full).....................: 98.32%
Run Code Online (Sandbox Code Playgroud)

我读过 Scan Density = 100% 非常好,并且 Logical Scan Fragmentation <1% 也很棒。77% …

performance sql-server fragmentation sql-server-2012 query-performance

7
推荐指数
1
解决办法
1万
查看次数

查询在第一次执行时在测试站点中运行缓慢。为什么?

我通过使用 sql profiler 观看测试站点发现了这个查询,任何需要超过 10 秒的时间。我将代码直接从 sql profiler 中放入 sql studio,在那里它能够快速执行。可以使用 DBCC DROPCLEANBUFFERS 重置缓慢的“首次运行”行为。

这是慢查询:

exec sp_executesql N'SELECT [t0].*
FROM [dbo].[MyTable] AS [t0]
WHERE [t0].[ParentID] IN (@p0, @p1, @p2, @p3, @p4, @p5, @p6, @p7, @p8, @p9, @p10, @p11, @p12, @p13, @p14, @p15, @p16, @p17, @p18, @p19, @p20, @p21, @p22, @p23, @p24, @p25, @p26, @p27, @p28, @p29, @p30, @p31, @p32, @p33, @p34, @p35, @p36, @p37, @p38, @p39, @p40, @p41, @p42, @p43, @p44, @p45, @p46, @p47, @p48, @p49, @p50, @p51, @p52, @p53, …
Run Code Online (Sandbox Code Playgroud)

performance sql-server execution-plan query-performance

7
推荐指数
2
解决办法
2万
查看次数