рдЙрдкрд▓рдмреНрдзрддрд╛ рд╕рдореВрд╣ рдХреЗ рджреНрд╡рд┐рддреАрдпрдХ рдкреНрд░рддрд┐рдХреГрддрд┐рдпреЛрдВ рдкрд░ рдЖрдБрдХрдбрд╝реЗ рдЕрджреНрдпрддрди рдХрд░рдирд╛

рд╣рдо рд╕рднреА рдорд╛рдзреНрдпрдорд┐рдХ рдкреНрд░рддрд┐рдХреГрддрд┐рдпреЛрдВ рдкрд░ рдЙрдкрд▓рдмреНрдзрддрд╛ рд╕рдореВрд╣ рдХреА рдЕрджреНрднреБрдд рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХрд╛ рдкреНрдпрд╛рд░ рдФрд░ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рдЬреИрд╕реЗ рдХрд┐ рдЕрдЦрдВрдбрддрд╛ рдХреА рдЬрд╛рдБрдЪ, рдмреИрдХрдЕрдк рдЖрджрд┐ред

рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдПрдХ рдкреНрд░рддрд┐рдХреГрддрд┐ рдкрд░ рдПрдХ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рдЗрд╕ рдЬрд╛рдирдХрд╛рд░реА рдХреЛ рдмрдЪрд╛рдиреЗ рдореЗрдВ рдЕрд╕рдорд░реНрдерддрд╛ рдЕрднреА рднреА рд╕рд┐рд░рджрд░реНрдж рд╣реИ (рдФрд░ рд╕реАрдбреАрд╕реА рдЬреИрд╕реА рдЪреАрдЬреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдФрд░ рднреА рдЕрдзрд┐рдХ рдЕрд╕реБрд╡рд┐рдзрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪреЗрдВ)ред

рд▓реЗрдХрд┐рди рд╢рд┐рдХрд╛рдпрдд рдХрд░рдирд╛ рдмрдВрдж рдХрд░реЛ, рдпрд╣рд╛рдВ рдореБрдЦреНрдп рд╡рд┐рдЪрд╛рд░ рд╣реИ: рдкреНрд░рд┐рдп рдорд╛рдЗрдХреНрд░реЛрд╕реЙрдлреНрдЯ, рд╣рдореЗрдВ рдЕрдкрдиреЗ cues рдХрд╛ рдЙрдкрдпреЛрдЧ рдЖрдВрдХрдбрд╝реЛрдВ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП ... рдареАрдХ рд╣реИ, рдЙрди рдкрд░ рдмрд╣реБрдд рдХреБрдЫ рдХрд░реЗрдВред

рд╣рдореЗрд╢рд╛ * рдПрдХ рд░рд╛рд╕реНрддрд╛ рд╣реИ, рдпрд╛ рдРрд╕рд╛ рдХреБрдЫ рд╣реИ


* рд▓рдЧрднрдЧ рд╣рдореЗрд╢рд╛

рдЖрдЗрдП рдПрдВрдЯрд░рдкреНрд░рд╛рдЗрдЬ рдПрдбрд┐рд╢рди MS SQL рд╕рд░реНрд╡рд░ рдкрд░ рд╕рдВрднрд╛рд╡рд┐рдд рд╕рдорд╛рдзрд╛рди рдХреЗ рдЬреНрдЮрд╛рдд рдмреБрдирд┐рдпрд╛рджреА рд╡рд┐рд╡рд░рдгреЛрдВ рдХреЛ рд╕реВрдЪреАрдмрджреНрдз рдХрд░реЗрдВ:

  • рд╣рдо рдкреНрд░рддрд┐рдХреГрддрд┐рдпреЛрдВ рдХреЛ рдкрдврд╝рдиреЗ рдпреЛрдЧреНрдп рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЙрдирд╕реЗ рдбреЗрдЯрд╛ рдкрдврд╝ рд╕рдХрддреЗ рд╣реИрдВ (рдРрд╕рд╛ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЖрдкрдХреЛ рд╣рдореЗрд╢рд╛ рдРрд╕рд╛ рдХрд░рдирд╛ рдерд╛, рд▓реЗрдХрд┐рди рдпрджрд┐ рдЖрдк рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЬрд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рдЖрдк рдХреНрдпрд╛ рдХрд░ рд░рд╣реЗ рд╣реИрдВ ...);
  • рд╣рдо рдЕрдкрдиреА рд╡рд╕реНрддреБрдУрдВ рдХреЛ Tempdb рдкрд░ рдХреЙрдкреА рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ (рд╣рд╛рдБ, рдЖрдкрдХреА рдмрд╣реБ-рдЯреЗрд░рд╛рдмрд╛рдЗрдЯ рдЯреЗрдмрд▓ рд╢рд╛рдпрдж рдЗрд╕ рддрд░рд╣ рдХреЗ рдСрдкрд░реЗрд╢рди рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдЙрдкрдпреБрдХреНрдд рдирд╣реАрдВ рд╣реИрдВ), рдпрд╛ рдХрд┐рд╕реА рдЕрдиреНрдп рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ рд▓рд┐рдП рдЬреЛ рдХрд┐ рдпреЛрдЧреНрдп рд╣реИ;
  • рд╣рдо рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЛ рдПрдХ рд╕рд╛рдЭрд╛ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд▓рд┐рдЦ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рджреЛрдиреЛрдВ рдкреНрд░рддрд┐рдХреГрддрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рд╕реБрд▓рдн рд╣реИ (рдЗрд╕реЗ рдПрдХ рдлрд╛рдЗрд▓ рд╢реЗрдпрд░ рдореЗрдВ рдПрдХ рдкрд╛рда рдлрд╝рд╛рдЗрд▓ рд╣реЛ);
  • рд╣рдо SQL рд╕рд░реНрд╡рд░ рд╕реЗ рдПрдХ рдмреВрдБрдж рдХреЗ рд░реВрдк рдореЗрдВ рдЖрдБрдХрдбрд╝реЛрдВ рдХрд╛ рдирд┐рд░реНрдпрд╛рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ;
  • рд╣рдо рдЖрдБрдХрдбрд╝реЛрдВ рдореЗрдВ рдбрд╛рдЙрдирд▓реЛрдб рдмреВрдБрдж рдЖрдпрд╛рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдЪрд▓реЛ рдХрд░рддреЗ рд╣реИрдВ


рдореЗрд░реЗ рдкрд╛рд╕ SQL тАЛтАЛServer 2017 рдХреЗ рд╕рд╛рде рдЖрднрд╛рд╕реА рдорд╢реАрдиреЛрдВ рдХреА рдПрдХ рдЬреЛрдбрд╝реА рдкрд░ рдПрдХ рдкрд░реАрдХреНрд╖рдг рдПрдЬреА рд╣реИ (рдЖрдк рдХрд┐рд╕реА рднреА рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ) рдФрд░ рдореИрдВ рдПрдХ рд╕рд░рд▓ рддрд╛рд▓рд┐рдХрд╛ рдмрдирд╛рдКрдВрдЧрд╛ рдЬрд┐рд╕рдореЗрдВ рдореИрдВ рдЖрдВрдХрдбрд╝реЗ рдЕрдкрдбреЗрдЯ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред

рдпрд╣рд╛рдБ рдПрдХ рддрд╛рд▓рд┐рдХрд╛ рдмрдирд╛рдиреЗ рдФрд░ рдЙрд╕рдореЗрдВ рдПрдХ рд▓рд╛рдЦ рдкрдВрдХреНрддрд┐рдпрд╛рдБ рдбрд╛рд▓рдиреЗ рдХреА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╣реИ:

DROP TABLE IF EXISTS dbo.SampleDataTable; CREATE TABLE dbo.SampleDataTable ( C1 BIGINT NOT NULL, C2 BIGINT NOT NULL, CONSTRAINT PK_SampleDataTable PRIMARY KEY (C1) ); INSERT INTO dbo.SampleDataTable WITH (TABLOCK) SELECT t.RN, t.RN FROM ( SELECT TOP (1000000) ROW_NUMBER() OVER (ORDER BY (SELECT NULL)) RN FROM sys.objects t1 CROSS JOIN sys.objects t2 CROSS JOIN sys.objects t3 CROSS JOIN sys.objects t4 CROSS JOIN sys.objects t5 ) t OPTION (MAXDOP 1); 

рдЕрдм рдХреЙрд▓рдо c2 рдкрд░ ST_SampleDataTable_C2 рдЖрдБрдХрдбрд╝реЗ рдмрдирд╛рддреЗ рд╣реИрдВ

 CREATE STATISTICS ST_SampleDataTable_C2 ON dbo.SampleDataTable(C2); 

рдФрд░ рдлрд┐рд░ рдореИрдВ 1000 рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЛ рд╕рдореНрдорд┐рд▓рд┐рдд рдХрд░реВрдВрдЧрд╛, рдЬреЛ рдмрд╣реБрдд рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реЛрдЧрд╛ рдФрд░ рдЬрд┐рд╕рдХреЗ рдХрд╛рд░рдг рдореБрдЭреЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЖрдБрдХрдбрд╝реЛрдВ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

 set nocount on; INSERT INTO dbo.SampleDataTable WITH (TABLOCK) SELECT 10000000 + t.RN, 999999999 FROM ( SELECT TOP (1000) ROW_NUMBER() OVER (ORDER BY (SELECT NULL)) RN FROM sys.objects t1 CROSS JOIN sys.objects t2 CROSS JOIN sys.objects t3 CROSS JOIN sys.objects t4 CROSS JOIN sys.objects t5 ) t OPTION (MAXDOP 1); 

рдЕрдм рдореЗрд░реЗ рдкрд╛рд╕ 1000 рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐рдпрд╛рдБ рд╣реИрдВ, рдЬрд┐рд╕рдореЗрдВ рд╕реНрддрдВрдн C2 рдореЗрдВ, рдорд╛рди 999999999 рд╣реИред рдФрд░ рдЗрд╕рдХрд╛ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЖрд░реЛрд╣реА рдХреБрдВрдЬреА рд╕рдорд╕реНрдпрд╛ рд╣реИ рдФрд░ рдореБрдЭреЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЖрдБрдХрдбрд╝реЛрдВ рдХреЛ рдЕрджреНрдпрддрди рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ ... рдкреНрд░рддрд┐рдХреГрддрд┐ рдкрд░ рддрд╛рдХрд┐ рдореИрдВ рдЧрдгрдирд╛ рдХреЗ рд╕рд╛рде рдореБрдЦреНрдп рд╕рд░реНрд╡рд░ рдХреЛ рддрдирд╛рд╡ рди рджреВрдВ рдЙрд╕реЗ рдЧреНрд░рд╛рд╣рдХреЛрдВ рдХреА рд╕реЗрд╡рд╛ рдХрд░рдиреЗ рд╕реЗ рд░реЛрдХрд╛ред

рдЕрдЪреНрдЫреЗ рдкреБрд░рд╛рдиреЗ DBCC SHOW_STATISTICS рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП, рдЖрдЗрдП рд╣рдорд╛рд░реЗ рдЖрдБрдХрдбрд╝реЛрдВ рдХреА рдЬрд╛рдБрдЪ рдХрд░реЗрдВред

 DBCC SHOW_STATISTICS('dbo.SampleDataTable', 'ST_SampleDataTable_C2') 


рд╣рдорд╛рд░реЗ рд░рд╛рдЬреНрдп рдореЗрдВ рд╕рдм рдХреБрдЫ рд╕рд╣реА рд╣реИ рдФрд░ рд╣рдорд╛рд░реЗ рдЖрдВрдХрдбрд╝реЗ рд╕рд╣реА рдХреНрд░рдо рдореЗрдВ рд╣реИрдВ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдпрд╣ рдХреЗрд╡рд▓ 1 рдорд┐рд▓рд┐рдпрди рд▓рд╛рдЗрдиреЛрдВ рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрддрд╛ рд╣реИ рдФрд░ рдХреЛрдИ рднреА рд╣рд╛рдирд┐рдХрд╛рд░рдХ рд╣рдЬрд╛рд░ рд▓рд╛рдЗрдиреЗрдВ рдирд╣реАрдВ рд╣реИрдВ, рдЬреЛ рдЕрдВрддрддрдГ, рдЗрди рдЖрдВрдХрдбрд╝реЛрдВ рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рдмрдирдирд╛ рдЪрд╛рд╣рд┐рдПред

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╣рдо DBCC SHOW_STATISTICS рдХреЗ STATS_STREAM рдкреИрд░рд╛рдореАрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕рд╛рдВрдЦреНрдпрд┐рдХреА рд╕реНрдЯреНрд░реАрдо рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ:

 DBCC SHOW_STATISTICS('dbo.SampleDataTable', 'ST_SampleDataTable_C2') WITH STATS_STREAM; 



рдпрд╣ рд╕рд┐рд░реНрдл рдПрдХ рдЪрд░рд┐рддреНрд░ рд╣реИ рдХрд┐ рдмреНрд▓реЙрдЧ рд╕рд╛рд▓реЛрдВ рд╕реЗ рд▓рд┐рдЦрддреЗ рдЖ рд░рд╣реЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдЕрднреА рднреА рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдкреНрд░рд▓реЗрдЦрд┐рдд рдлреАрдЪрд░ рд╣реИ (рд╣рд╛рд▓рд╛рдВрдХрд┐ рдЗрд╕рдиреЗ рд▓реЛрдЧреЛрдВ рдХреЛ рдЗрд╕реЗ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд░рдиреЗ рд╕реЗ рдХрднреА рдирд╣реАрдВ рд░реЛрдХрд╛)ред

рдХреНрдпреВ рдкрд░


рдЖрдЗрдП рд╣рдорд╛рд░реА рддрд╛рд▓рд┐рдХрд╛ рдХреЛ рдПрдХ рдкреНрд░рддрд┐рдХреГрддрд┐ рдкрд░ tempdb рдкрд░ рдХреЙрдкреА рдХрд░реЗрдВ (рд╣рд╛рд▓рд╛рдВрдХрд┐ рдореЗрд░рд╛ рдПрдЬреА рд╕рд┐рдВрдХреНрд░реЛрдирд╕ рдореЛрдб рдореЗрдВ рд╣реИ, рд╡рд╣реА рдХрд╛рдо рдПрд╕рд┐рдВрдХреНрд░реЛрдирд╕ рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдмрд╕ рдбреЗрдЯрд╛ рдереЛрдбрд╝реА рджреЗрд░реА рдХреЗ рд╕рд╛рде рдЖ рд╕рдХрддрд╛ рд╣реИ)ред

 use TempDB; DROP TABLE IF EXISTS dbo.SampleDataTable; CREATE TABLE dbo.SampleDataTable ( C1 BIGINT NOT NULL, C2 BIGINT NOT NULL, CONSTRAINT PK_SampleDataTable PRIMARY KEY (C1) ); INSERT INTO dbo.SampleDataTable SELECT C1, C2 FROM AvGroupDb.dbo.SampleDataTable; 

рдЕрдм рд╣рдо рдкреНрд░рддрд┐рдХреГрддрд┐ рдкрд░ tempdb рдореЗрдВ рдкреВрд░реНрдг рд╕реНрдХреИрди рдХреЗ рд╕рд╛рде рдЖрдБрдХрдбрд╝реЛрдВ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╣реИрдВред
 use TempDB; UPDATE STATISTICS ST_SampleDataTable_C2 ON dbo.SampleDataTable(C2) WITH FULLSCAN; 

( рдЕрдиреБрд╡рд╛рджрдХ рдХрд╛ рдиреЛрдЯ - рдиреАрдХреЛ рдЖрдБрдХрдбрд╝реЗ рдмрдирд╛рдирд╛ рднреВрд▓ рдЧрдпрд╛, рдФрд░ UPDATE STATISTICS рдСрдкрд░реЗрд╢рди рдХреЗ рдЧрд▓рдд рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ, UPDATE рдХреЗ рдмрдЬрд╛рдп рдЗрд╕реЗ CREATE рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдЕрд░реНрдерд╛рдд рдЖрдБрдХрдбрд╝реЗ рдЕрджреНрдпрддрди рдирд╣реАрдВ рдХрд┐рдП рдЧрдП рд╣реИрдВ, рд▓реЗрдХрд┐рди рдмрдирд╛рдП рдЧрдП рд╣реИрдВ )

DBCC SHOW_STATISTICS рдкрд░ рд╡рд╛рдкрд╕ рдЬрд╛рдПрдВ рдФрд░ рдЗрд╕реЗ рджреЗрдЦреЗрдВ:

 DBCC SHOW_STATISTICS('dbo.SampleDataTable', 'ST_SampleDataTable_C2') 



рдпрд╣ рдореБрдЦреНрдп рд╕рд░реНрд╡рд░ рдкрд░ рдЬреЛ рдерд╛ рдЙрд╕рд╕реЗ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЕрд▓рдЧ рджрд┐рдЦрддрд╛ рд╣реИ - рдХреЗрд╡рд▓ 3 рд▓рд╛рдЗрдиреЗрдВ рдмрдирд╛рдо 178, рд▓реЗрдХрд┐рди рдпрд╣ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдбреЗрдЯрд╛ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддрд╛ рд╣реИ - рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рд▓рд╛рдЦ рдЕрджреНрд╡рд┐рддреАрдп рд░реЗрдЦрд╛рдПрдВ рд╣реИрдВ рдФрд░ 1000 рд▓рд╛рдЗрдиреЗрдВ рд╕рдорд╛рди C2 рдХреЙрд▓рдо рдорд╛рди рдХреЗ рд╕рд╛рде рд╣реИрдВ - рд╣рд┐рд╕реНрдЯреЛрдЧреНрд░рд╛рдо рдЬрд┐рддрдирд╛ рд╕рдВрднрд╡ рд╣реЛ рдЙрддрдирд╛ рдЕрдЪреНрдЫрд╛ рд╣реИ ред

рдЖрдЗрдП рдЖрдБрдХрдбрд╝реЛрдВ рдХреЗ рдкреНрд░рд╡рд╛рд╣ рдХреЛ рджреЗрдЦреЗрдВ:

 DBCC SHOW_STATISTICS('dbo.SampleDataTable', 'ST_SampleDataTable_C2') WITH STATS_STREAM; 



рдЖрдкрдХреЛ рдпрд╣ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЬреАрдирд┐рдпрд╕ рд╣реЛрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдзрд╛рд░рд╛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЕрд▓рдЧ рджрд┐рдЦрддреА рд╣реИ - рд╣рдо рдЕрджреНрдпрддрди рд╕реНрдЯреНрд░реАрдо рдореЗрдВ 5689A0C6 рд╡рд░реНрдгреЛрдВ рдХреЛ рджреЗрдЦрддреЗ рд╣реИрдВ, рдЬрдмрдХрд┐ рдореВрд▓ рдореЗрдВ, рдЗрди рд╕рднреА рд╢реВрдиреНрдп рдХреЗ рдмреАрдЪ рд╣рдордиреЗ EDF10EB4 рджреЗрдЦрд╛ред

рдЪрд▓реЛ SQL рд╕рд░реНрд╡рд░ рдХреЗ рдмрд╛рд╣рд░ рдХрд╣реАрдВ рдкрд╛рда рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдЗрд╕ рдбреЗрдЯрд╛ рдХреЛ рдирд┐рд░реНрдпрд╛рдд рдХрд░рдиреЗ рдкрд░ рдзреНрдпрд╛рди рдХреЗрдВрджреНрд░рд┐рдд рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕реЗ рдЕрджреНрднреБрдд BCP рдХрдорд╛рдВрдб рдХреА рд╕рд╣рд╛рдпрддрд╛ рд╕реЗ рдХрд░рддреЗ рд╣реИрдВ, рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП CMDSHELL рдХреЛ рд╕рдХреНрд╖рдо рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ (рдзреНрдпрд╛рди рджреЗрдВ: рдЖрдк рд╢рд╛рдпрдж рдЕрдкрдиреЗ рдЙрддреНрдкрд╛рджрди рд╕рд░реНрд╡рд░ рдкрд░ рдРрд╕рд╛ рдирд╣реАрдВ рдЪрд╛рд╣рддреЗ):

 EXEC xp_cmdshell 'BCP "DBCC SHOW_STATISTICS(''AvGroupDb.dbo.SampleDataTable'', ''ST_SampleDataTable_C2'') WITH STATS_STREAM" queryout \\SharedServer\Tempdb\stats.txt -c -T'; 

рдФрд░ рдпрд╣рд╛рдВ рдмрддрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ рдХрд┐ рд╣рдорд╛рд░реЗ рдмреЙрд▓ рдореЗрдВ рдХрд┐рддрдиреЗ рдмрдбрд╝реЗ рдЖрдБрдХрдбрд╝реЗ рд╣реИрдВред



рдмрд╕ рдПрдХ рджреЛ рдХрд┐рд▓реЛрдмрд╛рдЗрдЯ! рдЯреНрд░рд╛рдВрд╕рдорд┐рдЯ рдХрд░рдирд╛ рдЖрд╕рд╛рди, рдореИрдиреЗрдЬ рдХрд░рдирд╛ рдЖрд╕рд╛рдиред

рдореБрдЦреНрдп рд╕рд░реНрд╡рд░ рдкрд░ рд╡рд╛рдкрд╕


рдореБрдЦреНрдп рд╕рд░реНрд╡рд░ рдкрд░, рд╣рдореЗрдВ рдПрдХ рдЕрд╕реНрдерд╛рдпреА рддрд╛рд▓рд┐рдХрд╛ рдмрдирд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА рдЬреЛ рдЖрдВрдХрдбрд╝реЗ рд╕реНрдЯреНрд░реАрдо рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░реЗрдЧреА, рдЗрд╕рд╕реЗ рдкрд╣рд▓реЗ рдХрд┐ рд╣рдо рдЕрдкрдиреЗ рдореБрдЦреНрдп рдирдореВрдирд╛ рдбреЗрдЯрд╛ рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рдЖрдВрдХрдбрд╝реЛрдВ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░ рд╕рдХреЗрдВ (рд╡реНрдпрд╡рд╣рд╛рд░ рдореЗрдВ, рд╣рдо рдХрдИ рдбреЗрдЯрд╛рдмреЗрд╕, рддрд╛рд▓рд┐рдХрд╛рдУрдВ, рдЖрдВрдХрдбрд╝реЛрдВ рдХреЗ рд▓рд┐рдП рдЗрд╕ рддрд╛рд▓рд┐рдХрд╛ рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ)ред

 CREATE TABLE dbo.TempStats( Stats_Stream VARBINARY(MAX), Rows BIGINT, DataPages BIGINT ); 

рдЖрдЗрдП рдЕрдкрдиреА рдкрд╛рда рдлрд╝рд╛рдЗрд▓ рд╕реЗ рдбреЗрдЯрд╛ рдХреЛ рд╣рдорд╛рд░реА рдирдИ рдЕрд╕реНрдерд╛рдпреА рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рдЖрдпрд╛рдд рдХрд░реЗрдВ рдФрд░ рджреЗрдЦреЗрдВ рдХрд┐ рд╣рдордиреЗ рдХреНрдпрд╛ рдЖрдпрд╛рдд рдХрд┐рдпрд╛ рд╣реИ:

 BULK INSERT dbo.TempStats FROM '\\SharedServer\Tempdb\stats.txt' SELECT * FROM dbo.TempStats; 



рд╣рдо рдЙрд╕реА рдбреЗрдЯрд╛ рдХреЛ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ рдЬрд┐рд╕рдХреА рд╣рдордиреЗ рдкреНрд░рддрд┐рдХреГрддрд┐ рдкрд░ рдЧрдгрдирд╛ рдХреА рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдбреЗрдЯрд╛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╣рдорд╛рд░реЗ рдореБрдЦреНрдп рд╕рд░реНрд╡рд░ рдкрд░ рд╣реИ рдФрд░ рд╣рдорд╛рд░реЗ рд▓рд┐рдП рдЬреЛ рдХреБрдЫ рднреА рдХрд░рдирд╛ рдмрд╛рдХреА рд╣реИ рд╡рд╣ рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рд╣рдорд╛рд░реЗ рдЖрдВрдХрдбрд╝реЛрдВ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рддрд╛ рд╣реИред рдпрд╣ рдСрдкрд░реЗрд╢рди STATS_STREAM = ... рдкреИрд░рд╛рдореАрдЯрд░ рдХреЗ рд╕рд╛рде UPDATE STATISTICS рдСрдкрд░реЗрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ

 DECLARE @script NVARCHAR(MAX) SELECT @script = 'UPDATE STATISTICS dbo.SampleDataTable(ST_SampleDataTable_C2) WITH STATS_STREAM = ' + CONVERT(nvarchar(max), [Stats_Stream],1) FROM dbo.TempStats PRINT @script; EXECUTE sp_executesql @script; 

рдпрд╣ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдКрдкрд░ рдЖрдпрд╛рддрд┐рдд рдорд╛рди рдХреЛ рдкрдврд╝рддрд╛ рд╣реИ (рд╣рд╛рдБ, рдореБрдЭреЗ рдкрддрд╛ рд╣реИ - рдореИрдВрдиреЗ рдпрд╣ рдЙрджрд╛рд╣рд░рдг рдПрдХ рддрд╛рд▓рд┐рдХрд╛ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдерд╛ рдФрд░ рдХрдИ рдЖрдБрдХрдбрд╝реЛрдВ, рддрд╛рд▓рд┐рдХрд╛рдУрдВ, рдбреЗрдЯрд╛рдмреЗрд╕реЛрдВ рдЖрджрд┐ рд╕реЗ рдкрд░реЗрд╢рд╛рди рдирд╣реАрдВ рдерд╛), рдПрдХ рдЕрджреНрдпрддрди рд╕реНрдЯреЗрдЯрдореЗрдВрдЯ рдХрдерди рдЙрддреНрдкрдиреНрди рдХрд░рддрд╛ рд╣реИ, рдЗрд╕реЗ рд╕реНрдХреНрд░реАрди рдкрд░ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддрд╛ рд╣реИ рдФрд░ рдЕрдВрдд рдореЗрдВ, рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддрд╛ рд╣реИред рдЙрд╕реЗ рдкреВрд░рд╛ рдХрд░рддрд╛ рд╣реИред
рдпрд╣рд╛рдБ рдореБрдЭреЗ рдЖрдЙрдЯрдкреБрдЯ рдореЗрдВ рдХреНрдпрд╛ рдорд┐рд▓рддрд╛ рд╣реИ:

 UPDATE STATISTICS dbo.SampleDataTable(ST_SampleDataTable_C2) WITH STATS_STREAM = 

рдореБрдЦреНрдп рд╕рд░реНрд╡рд░ рдкрд░ DBCC SHOW_STATISTICS рдЪрд▓рд╛рдиреЗ рд╕реЗ рдореБрдЭреЗ рд╡рд╣реА рдкрд░рд┐рдгрд╛рдо рдорд┐рд▓рддрд╛ рд╣реИ рдЬрд┐рд╕рдХреА рдореИрдВ рдЙрдореНрдореАрдж рдХрд░ рд░рд╣рд╛ рдерд╛ - рдЬреИрд╕рд╛ рдХрд┐ рд╣рдордиреЗ рдкреНрд░рддрд┐рдХреГрддрд┐ рдкрд░ рджреЗрдЦрд╛ рдерд╛ред рд╕рд░реНрдХрд▓ рдмрдВрдж рд╣реИред
 DBCC SHOW_STATISTICS('dbo.SampleDataTable', 'ST_SampleDataTable_C2'); 

рдЗрд╕ рдХрд╣рд╛рдиреА рдХрд╛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рднрдпрд╛рдирдХ рд╣рд┐рд╕реНрд╕рд╛ рдпрд╣ рд╣реИ рдХрд┐ рдЖрдВрдХрдбрд╝реЛрдВ рдХреЗ рд╕рд╛рде рдСрдмреНрдЬреЗрдХреНрдЯ рдХрд╛ рдЖрдХрд╛рд░ рдмрд╣реБрдд рдЫреЛрдЯрд╛ рд╣реИ рдФрд░ рд╣рдо рдЗрд╕реЗ рдореБрдЦреНрдп рд╕рд░реНрд╡рд░ рдкрд░ рдмрд╣реБрдд рдЖрд╕рд╛рдиреА рд╕реЗ / рддреБрд░рдВрдд рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдЗрддрдирд╛ рдмреБрдирд┐рдпрд╛рджреА рдкрд░рд┐рджреГрд╢реНрдп рдирд╣реАрдВред


рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рд╕рдорд╛рди рдкреНрд░рддрд┐рдХреГрддрд┐рдпреЛрдВ рдХреЗ рдмреАрдЪ рдХрдИ рдПрдЬреА рд╣реИрдВ, рдЬрд╣рд╛рдВ рдПрдХ рдкреНрд░рддрд┐рдХреГрддрд┐ рдПрдХ рдПрдЬреА рдореЗрдВ рдореБрдЦреНрдп рд╣реИ рдФрд░ рджреВрд╕рд░реА рдореЗрдВ рдореБрдЦреНрдп рд╣реИ, рддреЛ рдЖрдк рдкреНрд░рддрд┐рдХреГрддрд┐рдпреЛрдВ рдХреЗ рдмреАрдЪ рдбреЗрдЯрд╛ рд╕реНрдЯреНрд░реАрдо рдореЗрдВ BLOB рдбреЗрдЯрд╛ рд╕рдореНрдорд┐рд▓рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдкреНрд░реЗрд╖рд┐рдд рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рде рдПрдХ рдЫреЛрдЯрд╛ рдбреЗрдЯрд╛рдмреЗрд╕ рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВред



рдЪрд┐рддреНрд░ рдХреЛ рджреЗрдЦреЛред рдпрджрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рджреЛ AGs (AG1 & AG2) рд╣реИрдВ, рдЬреЛ рд╡рд┐рднрд┐рдиреНрди рд╕рд░реНрд╡рд░реЛрдВ рдкрд░ рд╕реНрдерд┐рдд рд╣реИрдВ рдФрд░ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ AG1 рдореЗрдВ Server1 рдкрд░ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рддрд╛рд▓рд┐рдХрд╛ рд╣реИ, рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП рд╣рдо рдЖрдВрдХрдбрд╝реЗ рдЕрдкрдбреЗрдЯ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ Server2 рдкрд░ рд╣рдо рдЗрд╕ рддрд╛рд▓рд┐рдХрд╛ рдХреЛ рдХреЙрдкреА рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ (рдЗрд╕реЗ dbo рдХрд╣рддреЗ рд╣реИрдВред ) tempdb рдореЗрдВ, рдЕрджреНрдпрддрди рдХрд░реЗрдВ, рдФрд░ AG2 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЛ рд╕рд░реНрд╡рд░ 1 рдореЗрдВ рд╡рд╛рдкрд╕ рд╕реНрдЯреНрд░реАрдо рд╕реНрдЯреНрд░реАрдо рдХреЗ рд╕рд╛рде рднреЗрдЬреЗрдВ, рдЬрд╣рд╛рдВ рдЖрдк рдХреЗрд╡рд▓ рдЗрд╕ рд╕реНрдЯреНрд░реАрдо рд╕реЗ рдЖрдВрдХрдбрд╝реЗ рдЖрдпрд╛рдд рдХрд░рддреЗ рд╣реИрдВ рдЬреЛ рд╣рдореЗрдВ рдЖрд╡рд╢реНрдпрдХ рдЖрдВрдХрдбрд╝реЗ рд╣реИрдВред

рд╣рд╛рдВ, рдореБрдЭреЗ рдкрддрд╛ рд╣реИ, рдпрд╣ рднреНрд░рд╛рдордХ рд▓рдЧрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕реЗ рдПрдХ рдлреАрдбрдмреИрдХ рдЪреИрдирд▓ рдХреЗ рд░реВрдк рдореЗрдВ рд╕реЛрдЪреЗрдВ, рдЬрд┐рд╕рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкрд░рд┐рдгрд╛рдо рд╡рд┐рддрд░рд┐рдд рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ, рдмрдЬрд╛рдп рдлрд╛рдЗрд▓ рдмреЙрд▓ рдХреЗред

рд╕рдВрджреЗрд╣ рдХреЗ рд▓рд┐рдП рдЬрдЧрд╣


рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдХреБрдЫ рдЖрдкрддреНрддрд┐рдпрд╛рдБ рд╣реЛ рд╕рдХрддреА рд╣реИрдВ:

  • рдЕрдЧрд░ рдореИрдВ рдЗрд╕реЗ рдореБрдЦреНрдп рд╕рд░реНрд╡рд░ рдкрд░ рд╕реБрд░рдХреНрд╖рд┐рдд рд░реВрдк рд╕реЗ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ рддреЛ рдореБрдЭреЗ рдкреНрд░рддрд┐рдХреГрддрд┐ рдкрд░ рдРрд╕рд╛ рдХреНрдпреЛрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП? (рдареАрдХ рд╣реИ, рд╡рд┐рдЪрд╛рд░ рдореБрдЦреНрдп рд╕рд░реНрд╡рд░ рдХреЛ рдмрдВрдж рдХрд░рдирд╛ рд╣реИ)
  • рд▓реЗрдХрд┐рди рд╣рдо, рд╕рдВрднрд╛рд╡рд┐рдд рд░реВрдк рд╕реЗ, рдкреНрд░рддрд┐рдХреГрддрд┐ рдХреЛ рд▓реЛрдб рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ (рд╣рд╛рдВ, рд▓реЗрдХрд┐рди рдЕрдЧрд░ рдпрд╣ рдирд┐рд╖реНрдХреНрд░рд┐рдп рд╣реИ, рдпрд╣реА рдХрд╛рд░рдг рд╣реИ рдХрд┐ рд╣рдо рдЗрд╕рдХреА рд╢рдХреНрддрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ)
  • рдФрд░ рд╣рдо рдХрд┐рд╕реА рднреА рддрд░рд╣ рдореБрдЦреНрдп рд╕рд░реНрд╡рд░ рдкрд░ рдХрд╛рд░реНрдп рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ? (рдирд╣реАрдВ, рд╣рдо рд╕рд┐рд░реНрдл рдкреНрд░рддрд┐рдХреГрддрд┐ рд╕реЗ рдбреЗрдЯрд╛ рдкрдврд╝рддреЗ рд╣реИрдВ рдФрд░ рдХреБрдЫ рдХрд┐рд▓реЛ рдХрд┐рд▓реЛрдмрд╛рдЗрдЯ рд╡рд╛рдкрд╕ рднреЗрдЬрддреЗ рд╣реИрдВ, рдЬреЛ рд╣рдорд╛рд░реА рд╢рддрд╛рдмреНрджреА рдореЗрдВ рдЧреАрдЧрд╛рдмрд╛рдЗрдЯреНрд╕ рдФрд░ рдЯреЗрд░рд╛рдмрд╛рдЗрдЯреНрд╕ "shtoa?" рдХреА рддрд░рд╣ рд▓рдЧрддрд╛ рд╣реИ) ( рдиреЛрдЯ рдЕрдиреБрд╡рд╛рджрдХ - рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдХреЗрд╡рд▓ рдкреНрд░рддрд┐рдХреГрддрд┐ рдкреНрд░рддрд┐рдХреГрддрд┐ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рд╣рдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ )
  • рдХреНрдпрд╛ рд╣реЛрдЧрд╛ рдЕрдЧрд░ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗ рдмреАрдЪ рдореЗрдВ рдореБрдЦреНрдп рд╕рд░реНрд╡рд░ рдЕрдкрдиреЗ рдЖрдк рд╣реА рдЖрдВрдХрдбрд╝реЛрдВ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░ рджреЗрддрд╛ рд╣реИ? (рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рдпрд╣ рдпрд╛ рддреЛ рджреВрд╕рд░реА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рдмрд╛рдзрд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рдпрд╛ рдЕрдкрдбреЗрдЯ рдХрд┐рдП рдЧрдП рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рде рдкреБрдирд░рд╛рд░рдВрдн рдХрд░ рд╕рдХрддрд╛ рд╣реИ)ред

рдПрдЬреА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдЪреИрдирд▓


рдпрд╣ рдкреНрд░рддрд┐рдХреГрддрд┐ рд╕реЗ рдореБрдЦреНрдп рд╕рд░реНрд╡рд░ рдХреЗ рд╕рд╛рде рдПрдХ рдЪреИрдирд▓ рд╣реИ - рд╣рдордиреЗ рд╕рд┐рдВрдХреНрд░реЛрдирд╕ рдПрдЬреА рдореЗрдВ рд▓реЗрди-рджреЗрди рдХреА рдкреНрд░рддрд┐рдЬреНрдЮрд╛ рдХреЗ рдмрд╛рдж, рдореБрдЦреНрдп рд╕рд░реНрд╡рд░ рдкреНрд░рддрд┐рдХреГрддрд┐ рд╕реЗ рдкреБрд╖реНрдЯрд┐ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░реЗрдЧрд╛ - рдФрд░ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕ рд╕реБрдзрд╛рд░ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕ рдЪреИрдирд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЙрд╕ рддрд╕реНрд╡реАрд░ рдХреЛ рджреЗрдЦреЗрдВ, рдЬрд┐рд╕реЗ рд╕рд╛рдЗрдорди рд╕реБ рджреНрд╡рд╛рд░рд╛ рдкреЛрд╕реНрдЯ рдореЗрдВ рд▓рд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред



рдЬреЛ рдореМрдЬреВрджрд╛ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдЪреИрдирд▓ рдХреЗ рдкреВрд░реЗ рддрдВрддреНрд░ рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рддрд╛ рд╣реИред рд╕реНрдЯреЗрдк 12 рдФрд░ рдмрд╛рдж рдХреЗ рдЪрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП, рдкреНрд░рд╛рдердорд┐рдХ рд╕рд░реНрд╡рд░ рдХреА рдкреБрд╖реНрдЯрд┐ рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдЬрд╛рдирдХрд╛рд░реА рд╕рд╣реЗрдЬ рд▓реА рдЧрдИ рд╣реИред рдПрдХ рдкреНрд░рддрд┐рдХреГрддрд┐ рдкрд░ рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рдПрдХ рдбреЗрдЯрд╛ рдкреНрд░рд╡рд╛рд╣ рдСрдмреНрдЬреЗрдХреНрдЯ рднреЗрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рдЙрд╕реА рдЪреИрдирд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдмреЗрд╢рдХ, рд╣рдореЗрдВ рдЗрд╕ рдЙрджреНрджреЗрд╢реНрдп рдХреЗ рд▓рд┐рдП tempdb рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рд▓реЗрдХрд┐рди рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ рдЕрдВрджрд░ рдПрдХ рдЗрди-рдореЗрдореЛрд░реА рдСрдмреНрдЬреЗрдХреНрдЯ рдмрдирд╛рдПрдВ, рдЬрд┐рд╕реЗ рд╕реНрдерд╛рдпреА рд░реВрдк рд╕реЗ рд╕рдВрдЧреНрд░рд╣рд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП (рдЕрдкрдиреЗ рдЗрди-рдореЗрдореЛрд░реА рдУрдПрд▓рдЯреАрдкреА рд╕реНрдХреАрдорд╛-рдУрдирд▓реА рдЯреЗрдмрд▓ рдХреЛ рджреЗрдЦреЗрдВ, рдпрд╛ рдУрд░реЗрдХрд▓ рдореЗрдВ NOLOGGING рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪреЗрдВ), рдФрд░ рдСрдкрд░реЗрд╢рди рдХреЗ рдЕрдВрдд рдореЗрдВ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП - рдЬреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ред

рд╕рд╛рдорд╛рдиреНрдп рд╡рд┐рдЪрд╛рд░


рдпрд╣ рдЗрд╕ рдмрд╛рдд рдкрд░ рдирд┐рд░реНрднрд░ рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рд╕рдордХрд╛рд▓рд┐рдХ рдкреНрд░рддрд┐рдХреГрддрд┐ рдпрд╛ рдирд╣реАрдВ - рдЕрдзрд┐рдХрд╛рдВрд╢ рд╕рдордп рдЖрдБрдХрдбрд╝реЗ рд╣рд░ рдХреБрдЫ рд╕реЗрдХрдВрдб рдореЗрдВ рдЕрдкрдбреЗрдЯ рдирд╣реАрдВ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ рдФрд░ рдпрд╣ рд╣рдореЗрдВ рд╡рд┐рдЪрд╛рд░ рдХреЗ рджреВрд╕рд░реЗ рднрд╛рдЧ рддрдХ рд▓реЗ рдЬрд╛рддрд╛ рд╣реИ - рдореБрдЦреНрдп рд╕рд░реНрд╡рд░ рдкрд░ рдЖрдБрдХрдбрд╝реЛрдВ рдХреЛ рдЕрджреНрдпрддрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреИрд░рд╛рдореАрдЯрд░ рдХреЗ рд╕рд╛рде, рдЬреИрд╕реЗ рдХрд┐

 UPDATE STATISTICS dbo.MyAwesomeTable(HugeImportantStatOnC17) WITH FULLSCAN, SECONDARY 

рдЬрд╣рд╛рдВ рд╕реБрд░рдХреНрд╖рд╛ рдкреИрд░рд╛рдореАрдЯрд░ рдЗрдВрдЧрд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдСрдкрд░реЗрд╢рди рдХрд╣рд╛рдВ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рд╣реИред
рдФрд░ рдмреИрдХрдЕрдк рдХреЗ рд╕рд╛рде рдХреА рддрд░рд╣, рд╣рдо рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдореЗрдВ рдЕрджреНрдпрддрди рд╕рд╛рдВрдЦреНрдпрд┐рдХреА (рдпрд╛ рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдХрд┐рд╕реА рднреА рдЕрдиреНрдп рдСрдкрд░реЗрд╢рди) рдкреНрд░рджрд░реНрд╢рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд╕рдВрджреАрджрд╛ рдкреНрд░рддрд┐рдХреГрддрд┐ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред

рдореБрдЭреЗ рдпрдХреАрди рд╣реИ рдХрд┐ рдпрд╣ рд╕реБрд╡рд┐рдзрд╛ рдХрдИ рдПрдВрдЯрд░рдкреНрд░рд╛рдЗрдЬрд╝ рд╕рдВрд╕реНрдХрд░рдг рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ SQL рд╕рд░реНрд╡рд░ рдХреЗ рдирдП рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░реЛрддреНрд╕рд╛рд╣рд┐рдд рдХрд░реЗрдЧреА, рдЬреЛ рдкреНрд░рддрд┐рдХреГрддрд┐рдпреЛрдВ рдХреЗ рдмреАрдЪ рднрд╛рд░реА рд╕рдВрдЪрд╛рд▓рди рдХреЛ рд╡рд┐рддрд░рд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдЧрд╛ред

рд╡рд░реНрддрдорд╛рди рд╕реНрдерд┐рддрд┐ рдХреЗ рд░реВрдк рдореЗрдВ - рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рджреЗрдЦрддрд╛ рд╣реВрдВ рдХрд┐ рдЖрдк рдкреЙрд╡рд░реНрд╕рд╢реЗрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЗрд╕ рд╕рдорд╛рдзрд╛рди рдХреЛ рдХреИрд╕реЗ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

Microsoft, рдЕрдм рдЖрдкрдХреА рдмрд╛рд░реА рд╣реИ! ;)

рдпрд╣рд╛рдВ рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рд╕реБрд╡рд┐рдзрд╛ рдХреЗ рд▓рд┐рдП рд╡реЛрдЯ рдХрд░реЗрдВ ред

рдЕрдиреБрд╡рд╛рджрдХ рдХрд╛ рдзреНрдпрд╛рди рджреЗрдВ: рдЕрдиреБрд╡рд╛рдж рдФрд░ рд╕реНрдЯрд╛рдЗрд▓ рдкрд░ рдХрд┐рд╕реА рднреА рд╕реБрдЭрд╛рд╡ рдФрд░ рдЯрд┐рдкреНрдкрдгреА рдХрд╛ рд╕реНрд╡рд╛рдЧрдд рд╣реИ, рд╣рдореЗрд╢рд╛ рдХреА рддрд░рд╣ред

рдореБрдЭреЗ рдЖрдорддреМрд░ рдкрд░ рдЕрдиреБрд╡рд╛рдж рдореЗрдВ рдкреНрд░рд╛рдердорд┐рдХ рдкреНрд░рддрд┐рдХреГрддрд┐ "рдкреНрд░рд╛рдердорд┐рдХ рд╕рд░реНрд╡рд░" рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдорд╛рдзреНрдпрдорд┐рдХ рдкреНрд░рддрд┐рдХреГрддрд┐ - рдмрд╕ рдПрдХ рдкреНрд░рддрд┐рдХреГрддрд┐ред рд╢рд╛рдпрдж рдпрд╣ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рд╣реА рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдореЗрд░рд╛ рдХрд╛рди рдПрдордПрд╕рдбреАрдПрди рдкрд░ "рдкреНрд░рд╛рдердорд┐рдХ" рдФрд░ "рдорд╛рдзреНрдпрдорд┐рдХ" рдкреНрд░рддрд┐рдХреГрддрд┐рдпреЛрдВ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдХрдо рджрд░реНрдж рд╣реЛрддрд╛ рд╣реИред

Source: https://habr.com/ru/post/hi462853/


All Articles