SQL Server数据文件增长检测(二)

日期: 2009-06-29 作者:Michelle Gutzait翻译:孙瑞 来源:TechTarget中国 英文

性能监控工具   性能由SQL Profiler来监控。   结果总结   测试的结果由表格呈现,对比了两次循环中的CPU、读写和持续时间情况,第一次循环有文件增长而第二次没有。   有两行作比较:百分比差异(<第二循环 >/<第一循环 > *100)和总数差异(<第一循环 > – <第二循环 >)。如果结果是正面的,那么说明第二循环性能更佳。

相反的说明第一循环性能更佳。在每个对比表的最后,对比的平均只包括了三个循环的平均值。   测试结果:   测试1   初始文件大小= 256,   目标文件大小 = 8448,   少量事务(1……

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

性能监控工具

  性能由SQL Profiler来监控。

  结果总结

  测试的结果由表格呈现,对比了两次循环中的CPU、读写和持续时间情况,第一次循环有文件增长而第二次没有。

  有两行作比较:百分比差异(<第二循环 >/<第一循环 > *100)和总数差异(<第一循环 > - <第二循环 >)。如果结果是正面的,那么说明第二循环性能更佳。相反的说明第一循环性能更佳。在每个对比表的最后,对比的平均只包括了三个循环的平均值。

  测试结果:

  测试1

  初始文件大小= 256,

  目标文件大小 = 8448,

  少量事务(1次一行),

  总行数: 8160,

  文件增长 1 MB

  目标文件8448比初始文件增长了33倍。

  我运行了几次以下的代码:

  运行以上代码后,SQL Profiler显示的结果:

  结果总结:

循环

步骤

CPU

持续时间 (ms)

1

文件增长

2031

69850

8222

13045

 

文件不增长

750

55234

8210

7999

 

% 改进

63.07237814

20.92483894

0.145949891

38.68148716

 

差异

1281

14616

12

5046

2

文件增长

1859

69853

8218

12735

 

文件不增长

1078

55533

8210

7230

 

% 改进

42.01183432

20.50019326

0.097347286

43.22732627

 

差异

781

14320

8

5505

3

文件增长

1985

69853

8221

13150

 

文件不增长

1360

55316

8210

8324

 

% 改进

31.4861461

20.81084563

0.133803674

36.69961977

 

差异

625

14537

11

4826

 

 

 

 

 

 

 

平均% 改进

45.52345285

20.74529261

0.125700284

39.5361444

 

平均差异

895.6666667

14491

10.33333333

5125.666667

  测试2

  初始文件大小 = 256,

  最终文件大小 = 34816,

  少量事务 (每次一行),

  总行数: 33373,

  文件增长1 MB

  现在我们来测试更多的插入,代码如下:

  结果总结:

循环

步骤

CPU

持续时间 (ms)

1

文件增长

6730

285208

33618

56148

 

文件不增长

4250

225591

33567

35003

 

% 改进

36.84992571

20.9029901

0.151704444

37.65940016

 

差异

2480

59617

51

21145

2

文件增长

7031

285223

33619

53373

 

文件不增长

4204

225364

33564

32472

 

% 改进

40.20765183

20.98673669

0.163597965

39.16024956

 

差异

2827

59859

55

20901

3

文件增长

6453

285278

33618

54189

 

文件不增长

3844

225362

33564

33530

 

% 改进

40.43080738

21.00267108

0.160628235

38.1239735

 

差异

2609

59916

54

20659

 

 

 

 

 

 

 

平均% 改进

39.16279497

20.96413262

0.158643548

38.31454107

 

平均差异

2638.666667

59797.33333

53.33333333

20901.66667

  测试3

  初始文件大小= 256,

  最终文件大小 = 34816,

  少量事务(每次一行),

  文件增长10 MB

  在这个测试中,代码同测试2一样,但数据库数据文件被设定为autogrow10MB。

  结果总结:

循环

步骤

CPU

持续时间 (ms)

1

文件增长

8907

283930

33588

41354

 

文件不增长

6297

225358

33565

37755

 

% 改进

29.30279555

20.62902828

0.068476837

8.702906611

 

差异

2610

58572

23

3599

2

文件增长

9078

283902

33588

46607

 

文件不增长

5578

216971

33560

41202

 

% 改进

38.55474774

23.57538869

0.083363106

11.59697041

 

差异

3500

66931

28

5405

3

文件增长

9016

283909

33587

52515

 

文件不增长

6015

225358

33565

38807

 

% 改进

33.28527063

20.62315742

0.065501533

26.10301819

 

差异

3001

58551

22

13708

 

 

 

 

 

 

 

平均% 改进

33.71427131

21.60919146

0.072447159

15.46763174

 

平均差异

3037

61351.33333

24.33333333

7570.666667

  测试4

  初始文件大小 = 33664,

  最终文件大小 = 66944,

  大量事务 (33373行),

  文件增长1 MB

  在这个测试中,我再次将ShrinkDB表中的行插入到ShrinkTable中,是大量的事务(一次33373行)。文件增长了1MB,我必须把T-Log增加到200MB才能在事务运行时不增长。我在测试大量事务如何影响文件增长。

  代码如下:

  结果总结:

循环

步骤

CPU

持续时间 (ms)

1

文件增长

3969

880471

33381

36097

 

文件不增长

3720

879426

33380

18104

 

% 改进

6.273620559

0.118686476

0.002995716

49.84624761

 

差异

249

1045

1

17993

2

文件增长

3750

880473

33381

35962

 

文件不增长

3578

879435

33380

20006

 

% 改进

4.586666667

0.117891179

0.002995716

44.36905623

 

差异

172

1038

1

15956

3

文件增长

3657

880471

33381

36544

 

文件不增长

3999

879422

33380

18802

 

% 改进

-9.35192781

0.119140778

0.002995716

48.54969352

 

差异

-342

1049

1

17742

 

 

 

 

 

 

 

平均% 改进

0.502786472

0.118572811

0.002995716

47.58833245

 

平均差异

26.33333333

1044

1

17230.33333

  测试5

  初始文件大小= 33664,

  最终文件大小 = 66944,

  大量事务(33373行),

  文件增长10 MB

  在这个测试中,代码通测试4的相同,但是文件autogrowth被设定为10MB。

  结果总结:

循环

步骤

CPU

持续时间 (ms)

1

文件增长

4016

879535

33381

23003

 

文件不增长

4016

879432

33380

21177

 

% 改进

0

0.011710734

0.002995716

7.938095031

 

差异

0

103

1

1826

2

文件增长

3672

879531

33381

22501

 

文件不增长

3673

879439

33380

19965

 

% 改进

-0.027233115

0.01046012

0.002995716

11.2706102

 

差异

-1

92

1

2536

3

文件增长

3798

879544

33381

22366

 

文件不增长

3782

879426

33380

18702

 

% 改进

0.421274355

0.013416043

0.002995716

16.38200841

 

差异

16

118

1

3664

 

 

 

 

 

 

 

平均% 改进

0.13134708

0.011862299

0.002995716

11.86357121

 

平均差异

5

104.3333333

1

2675.333333


翻译

孙瑞
孙瑞

相关推荐