пСрСстроСниС индСкса ΠΈΠ»ΠΈ рСорганизация

План обслуТивания Β«Π½Π° ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ дСнь» – Π§Π°ΡΡ‚ΡŒ 1: АвтоматичСская дСфрагмСнтация индСксов

пСрСстроСниС индСкса ΠΈΠ»ΠΈ рСорганизация. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ пСрСстроСниС индСкса ΠΈΠ»ΠΈ рСорганизация. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ пСрСстроСниС индСкса ΠΈΠ»ΠΈ рСорганизация. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ пСрСстроСниС индСкса ΠΈΠ»ΠΈ рСорганизация. Π€ΠΎΡ‚ΠΎ пСрСстроСниС индСкса ΠΈΠ»ΠΈ рСорганизация

ΠžΡˆΠΈΠ±ΠΎΡ‡Π½ΠΎ Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒ Π±Π°Π·Ρƒ Π΄Π°Π½Π½Ρ‹Ρ… ΠΊΠ°ΠΊ Π½Π΅ΠΊΡƒΡŽ ΡΡ‚Π°Π»ΠΎΠ½Π½ΡƒΡŽ Π΅Π΄ΠΈΠ½ΠΈΡ†Ρƒ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ, с Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ΠΌ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€ΠΎΡΠ²Π»ΡΡ‚ΡŒΡΡ Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΎΠ³ΠΎ Ρ€ΠΎΠ΄Π° Π½Π΅ΠΆΠ΅Π»Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ситуации β€” дСградация ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, сбои Π² Ρ€Π°Π±ΠΎΡ‚Π΅ ΠΈ ΠΏΡ€ΠΎΡ‡Π΅Π΅.

Для ΠΌΠΈΠ½ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ вСроятности возникновСния Ρ‚Π°ΠΊΠΈΡ… ситуаций ΡΠΎΠ·Π΄Π°ΡŽΡ‚ ΠΏΠ»Π°Π½Ρ‹ обслуТивания ΠΈΠ· Π·Π°Π΄Π°Ρ‡, Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΡƒΡŽΡ‰ΠΈΡ… ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½ΡƒΡŽ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ….

Π‘Ρ€Π΅Π΄ΠΈ ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Ρ… Π·Π°Π΄Π°Ρ‡ ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹Π΄Π΅Π»ΠΈΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅:

Рассмотрим ΠΏΠΎ порядку Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΡŽ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΈΠ· этих Π·Π°Π΄Π°Ρ‡.

UPDATE 2019-06-03:
Но спСрва хочСтся Ρ‡ΡƒΡ‚ΠΎΠΊ ΠΏΠΎΡ€Π΅ΠΊΠ»Π°ΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ опСнсорс ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ я сдСлал спустя 5 Π»Π΅Ρ‚ послС написания этого поста. Π’Π°ΠΊ ΡƒΠΆ историчСски слоТилось, Ρ‡Ρ‚ΠΎ Π΄ΠΎΠ»Π³ΠΎΠ΅ врСмя участвовал Π² Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ систСмных Ρ‚ΡƒΠ»ΠΎΠ² для обслуТивания SQL Server. Π—Π° это врСмя накопилось ΠΌΠ½ΠΎΠ³ΠΎ ΠΈΠ΄Π΅ΠΉ ΠΈ Π½Π° ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΌ этапС Π·Π°Ρ…ΠΎΡ‚Π΅Π»ΠΎΡΡŒ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ своС.

Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΎΡΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ позволяСт ΠΎΠ±ΡΠ»ΡƒΠΆΠΈΠ²Π°Ρ‚ΡŒ индСксы Ρ‡Π΅Ρ€Π΅Π· ΡƒΠ΄ΠΎΠ±Π½Ρ‹ΠΉ UI. Π—Π° основных ΠΊΠΎΠ½ΠΊΡƒΡ€Π΅Π½Ρ‚ΠΎΠ² Π±Ρ€Π°Π»ΠΈΡΡŒ ΠΏΠ»Π°Ρ‚Π½Ρ‹Π΅ Π°Π½Π°Π»ΠΎΠ³ΠΈ ΠΎΡ‚ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΉ RedGate ΠΈ Devart.

пСрСстроСниС индСкса ΠΈΠ»ΠΈ рСорганизация. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ пСрСстроСниС индСкса ΠΈΠ»ΠΈ рСорганизация. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ пСрСстроСниС индСкса ΠΈΠ»ΠΈ рСорганизация. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ пСрСстроСниС индСкса ΠΈΠ»ΠΈ рСорганизация. Π€ΠΎΡ‚ΠΎ пСрСстроСниС индСкса ΠΈΠ»ΠΈ рСорганизация

пСрСстроСниС индСкса ΠΈΠ»ΠΈ рСорганизация. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ пСрСстроСниС индСкса ΠΈΠ»ΠΈ рСорганизация. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ пСрСстроСниС индСкса ΠΈΠ»ΠΈ рСорганизация. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ пСрСстроСниС индСкса ΠΈΠ»ΠΈ рСорганизация. Π€ΠΎΡ‚ΠΎ пСрСстроСниС индСкса ΠΈΠ»ΠΈ рСорганизация

Но вСрнСмся Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΊ ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠΌΡƒ посту. Π˜Ρ‚Π°ΠΊ, ΠΏΡƒΠ½ΠΊΡ‚ пСрвый…

Помимо Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмы ΠΈ Π»ΠΎΠ³-Ρ„Π°ΠΉΠ»Π°, ΠΎΡ‰ΡƒΡ‚ΠΈΠΌΠΎΠ΅ влияниС Π½Π° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… ΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ фрагмСнтация Π²Π½ΡƒΡ‚Ρ€ΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ…:

1. ЀрагмСнтация Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… страниц индСкса

ПослС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ вставки, обновлСния ΠΈ удалСния записСй Π½Π΅ΠΈΠ·Π±Π΅ΠΆΠ½ΠΎ Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‚ пустыС пространства Π½Π° страницах. НичСго ΡΡ‚Ρ€Π°ΡˆΠ½ΠΎΠ³ΠΎ Π² этом Π½Π΅Ρ‚, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ данная ситуация Π²ΠΏΠΎΠ»Π½Π΅ Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½Π°Ρ, Ссли Π±Ρ‹ Π½Π΅ ΠΎΠ΄Π½ΠΎ но…

ΠžΡ‡Π΅Π½ΡŒ Π²Π°ΠΆΠ½ΡƒΡŽ Ρ€ΠΎΠ»ΡŒ ΠΈΠ³Ρ€Π°Π΅Ρ‚ Π΄Π»ΠΈΠ½Π° строки. НапримСр, Ссли строка ΠΈΠΌΠ΅Π΅Ρ‚ Ρ€Π°Π·ΠΌΠ΅Ρ€, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ»ΠΎΠ²ΠΈΠ½Ρ‹ страницы, свободная ΠΏΠΎΠ»ΠΎΠ²ΠΈΠ½Π° этой страницы Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ. Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ ΠΏΡ€ΠΈ ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½ΠΈΠΈ числа строк Π±ΡƒΠ΄Π΅Ρ‚ Π½Π°Π±Π»ΡŽΠ΄Π°Ρ‚ΡŒΡΡ рост Π½Π΅ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠ³ΠΎ мСста Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ….

Π‘ΠΎΡ€ΠΎΡ‚ΡŒΡΡ с Π΄Π°Π½Π½Ρ‹ΠΌ Π²ΠΈΠ΄ΠΎΠΌ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ стоит Π½Π° этапС ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ схСмы, Ρ‚. Π΅. Π²Ρ‹Π±ΠΈΡ€Π°Ρ‚ΡŒ Ρ‚Π°ΠΊΠΈΠ΅ Ρ‚ΠΈΠΏΡ‹ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±Ρ‹ ΠΊΠΎΠΌΠΏΠ°ΠΊΡ‚Π½ΠΎ ΡƒΠΌΠ΅Ρ‰Π°Π»ΠΈΡΡŒ Π½Π° страницах.

2. ЀрагмСнтация Π²Π½ΡƒΡ‚Ρ€ΠΈ структур индСкса

Основная ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π° возникновСния этого Π²ΠΈΠ΄Π° Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ β€” ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ разбиСния страницы. НапримСр, согласно структурС ΠΏΠ΅Ρ€Π²ΠΈΡ‡Π½ΠΎΠ³ΠΎ ΠΊΠ»ΡŽΡ‡Π°, Π½ΠΎΠ²ΡƒΡŽ строку Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π½Π° ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΡƒΡŽ страницу индСкса, Π½ΠΎ этой Π½Π° страницС нСдостаточно мСста, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ€Π°Π·ΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ вставляСмыС Π΄Π°Π½Π½Ρ‹Π΅.

Π’ Ρ‚Π°ΠΊΠΎΠΌ случаС, создаСтся новая страница, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒΡΡ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ ΠΏΠΎΠ»ΠΎΠ²ΠΈΠ½Π° записСй со старой страницы. Новая страница, Π·Π°Ρ‡Π°ΡΡ‚ΡƒΡŽ Π½Π΅ являСтся физичСски смСТной со старой ΠΈ, ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, помСчаСтся систСмой ΠΊΠ°ΠΊ фрагмСнтированная.

Π’ любом случаС, фрагмСнтация Π²Π΅Π΄Π΅Ρ‚ ΠΊ росту числа страниц для хранСния Ρ‚ΠΎΠ³ΠΎ ΠΆΠ΅ объСма ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ. Π­Ρ‚ΠΎ автоматичСски ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½ΠΈΡŽ Ρ€Π°Π·ΠΌΠ΅Ρ€Π° Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ росту Π½Π΅ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠ³ΠΎ мСста.

ΠŸΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ запросов, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΈΠ΄Π΅Ρ‚ ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ ΠΊ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹ΠΌ индСксам, трСбуСтся большС IO ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, фрагмСнтация Π½Π°ΠΊΠ»Π°Π΄Ρ‹Π²Π°Π΅Ρ‚ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ расходы Π½Π° ΠΏΠ°ΠΌΡΡ‚ΡŒ самого сСрвСра, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ приходится Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Π² кэшС лишниС страницы.

Для Π±ΠΎΡ€ΡŒΠ±Ρ‹ с Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠ΅ΠΉ индСксов Π² арсСналС SQL Server прСдусмотрСны ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹: ALTER INDEX REBUILD / REORGANIZE.

ΠŸΠ΅Ρ€Π΅ΡΡ‚Ρ€ΠΎΠΉΠΊΠ° индСкса ΠΏΠΎΠ΄Ρ€Π°Π·ΡƒΠΌΠ΅Π²Π°Π΅Ρ‚ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ старого ΠΈ созданиС Π½ΠΎΠ²ΠΎΠ³ΠΎ экзСмпляра индСкса. Π­Ρ‚Π° опСрация устраняСт Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΡŽ, восстанавливаСт дисковоС пространство ΠΏΡƒΡ‚Π΅ΠΌ уплотнСния страницы, рСзСрвируя ΠΏΡ€ΠΈ этом свободноС мСсто Π½Π° страницС, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π΄Π°Ρ‚ΡŒ ΠΎΠΏΡ†ΠΈΠ΅ΠΉ FILLFACTOR. Π’Π°ΠΆΠ½ΠΎ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ опСрация ΠΏΠΎ пСрСстройкС индСкса вСсьма Π·Π°Ρ‚Ρ€Π°Ρ‚Π½Π°.

ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ, Π² случаС, ΠΊΠΎΠ³Π΄Π° фрагмСнтация Π½Π΅Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Π°, ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡Ρ‚ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Ρ€Π΅ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Ρ‹Π²Π°Ρ‚ΡŒ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ индСкс. Данная опСрация Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ ΠΌΠ΅Π½ΡŒΡˆΠΈΡ… систСмных рСсурсов, Ρ‡Π΅ΠΌ пСрСсозданиС индСкса ΠΈ Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Ρ€Π΅ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ leaf-level страниц. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ рСорганизация ΠΏΡ€ΠΈ возмоТности сТимаСт страницы индСксов.

Π‘Ρ‚Π΅ΠΏΠ΅Π½ΡŒ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ Ρ‚ΠΎΠ³ΠΎ ΠΈΠ»ΠΈ ΠΈΠ½ΠΎΠ³ΠΎ индСкса ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠ·Π½Π°Ρ‚ΡŒ ΠΈΠ· динамичСского систСмного прСдставлСния sys.dm_db_index_physical_stats:

Π’ Π΄Π°Π½Π½ΠΎΠΌ запросС, послСдний ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ Π·Π°Π΄Π°Π΅Ρ‚ Ρ€Π΅ΠΆΠΈΠΌ, ΠΎΡ‚ значСния ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ быстроС, Π½ΠΎ Π½Π΅ совсСм Ρ‚ΠΎΡ‡Π½ΠΎΠ΅ опрСдСлСния уровня Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ индСкса (Ρ€Π΅ΠΆΠΈΠΌΡ‹ LIMITED/NULL). ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ рСкомСндуСтся Π·Π°Π΄Π°Π²Π°Ρ‚ΡŒ Ρ€Π΅ΠΆΠΈΠΌΡ‹ SAMPLED/DETAILED.

ΠœΡ‹ Π·Π½Π°Π΅ΠΌ ΠΎΡ‚ΠΊΡƒΠ΄Π° ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ список Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… индСксов. Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΈΠ· Π½ΠΈΡ… ΡΠ³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΡƒΡŽ ALTER INDEX ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ. Π’Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½ΠΎ для этого ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ курсор:

Π§Ρ‚ΠΎΠ±Ρ‹ ΡƒΡΠΊΠΎΡ€ΠΈΡ‚ΡŒ процСсс пСрСсоздания индСкса рСкомСндуСтся Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ ΠΎΠΏΡ†ΠΈΡŽ SORT_IN_TEMPDB. Π•Ρ‰Π΅ Π½ΡƒΠΆΠ½ΠΎ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ ΡƒΠΏΠΎΠΌΡΠ½ΡƒΡ‚ΡŒ ΠΏΡ€ΠΎ ΠΎΠΏΡ†ΠΈΡŽ ONLINE β€” ΠΎΠ½Π° замСдляСт пСрСсозданиС индСкса. Но ΠΈΠ½ΠΎΠ³Π΄Π° Π±Ρ‹Π²Π°Π΅Ρ‚ ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ. НапримСр, Ρ‡Ρ‚Π΅Π½ΠΈΠ΅ ΠΈΠ· кластСрного индСкса ΠΎΡ‡Π΅Π½ΡŒ Π΄ΠΎΡ€ΠΎΠ³ΠΎΠ΅. ΠœΡ‹ создали ΠΏΠΎΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉ индСкс ΠΈ Ρ€Π΅ΡˆΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ с ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒΡŽ. Π”Π°Π»Π΅Π΅ ΠΌΡ‹ Π΄Π΅Π»Π°Π΅ΠΌ REBUILD нСкластСрного индСкса. Π’ этот ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π½Π°ΠΌ придСтся снова ΠΎΠ±Ρ€Π°Ρ‰Π°Ρ‚ΡŒΡΡ ΠΊ кластСрному индСксу β€” Ρ‡Ρ‚ΠΎ сниТаСт пСрфоманс.

SORT_IN_TEMPDB позволяСт ΠΏΠ΅Ρ€Π΅ΡΡ‚Ρ€Π°ΠΈΠ²Π°Ρ‚ΡŒ индСксы Π² Π±Π°Π·Π΅ tempdb, Ρ‡Ρ‚ΠΎ Π±Ρ‹Π²Π°Π΅Ρ‚ особСнно ΠΏΠΎΠ»Π΅Π·Π½ΠΎ для Π±ΠΎΠ»ΡŒΡˆΠΈΡ… индСксов Π² случаС Π½Π΅Ρ…Π²Π°Ρ‚ΠΊΠΈ памяти ΠΈ ΠΈΠ½ΠΎΠΌ случаС β€” опция игнорируСтся. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Ссли Π±Π°Π·Π° tempdb располоТСна Π½Π° Π΄Ρ€ΡƒΠ³ΠΎΠΌ дискС β€” это сущСствСнно сократит врСмя создания индСкса. ONLINE позволяСт ΠΏΠ΅Ρ€Π΅ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ индСкс Π½Π΅ блокируя ΠΏΡ€ΠΈ этом запросы ΠΊ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρƒ для ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ этот индСкс создаСтся.

Как ΠΏΠΎΠΊΠ°Π·Π°Π»Π° ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ°, Π΄Π΅Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ индСксов с Π½ΠΈΠ·ΠΊΠΎΠΉ ΡΡ‚Π΅ΠΏΠ΅Π½ΡŒΡŽ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ Π»ΠΈΠ±ΠΎ с нСбольшим количСством страниц Π½Π΅ приносит ΠΊΠ°ΠΊΠΈΡ…-Π»ΠΈΠ±ΠΎ Π·Π°ΠΌΠ΅Ρ‚Π½Ρ‹Ρ… ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΠΉ, ΡΠΏΠΎΡΠΎΠ±ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½ΠΈΡŽ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с Π½ΠΈΠΌΠΈ.

Π’ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ, ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½Ρ‹ΠΉ Π²Ρ‹ΡˆΠ΅ запрос ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅ΠΏΠΈΡΠ°Ρ‚ΡŒ Π±Π΅Π· примСнСния курсора:

Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ ΠΎΠ±Π° запроса ΠΏΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ Π±ΡƒΠ΄ΡƒΡ‚ Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ запросы ΠΏΠΎ Π΄Π΅Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ½Ρ‹Ρ… индСксов:

БобствСнно, Π½Π° этом пСрвая Ρ‡Π°ΡΡ‚ΡŒ ΠΏΠΎ созданию ΠΏΠ»Π°Π½Π° обслуТивания для Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Π°. Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ части ΠΌΡ‹ займСмся написаниСм запроса для автоматичСского обновлСния статистики.

UPDATE 2016-04-22: Π΄ΠΎΠ±Π°Π²ΠΈΠ» Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π΄Π΅Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… сСкций ΠΈ исправил Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±Π°Π³ΠΈ

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

РСорганизация индСкса ΠΈ ΠŸΠ΅Ρ€Π΅ΡΡ‚Ρ€ΠΎΠ΅Π½ΠΈΠ΅ индСкса Π² ΠΏΠ»Π°Π½Π΅ обслуТивания Sql Server

Π² ΠΏΡ€Π°Π²ΠΈΠ»Π°Ρ… SSW для ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΡ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… SQL Server ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ ΠΏΠ»Π°Π½Π° обслуТивания Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…:SSW. Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΎΠ½ΠΈ Π·Π°ΠΏΡƒΡΠΊΠ°ΡŽΡ‚ ΠΊΠ°ΠΊ индСкс Ρ€Π΅ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ, Ρ‚Π°ΠΊ ΠΈ индСкс пСрСстройки, Π° Π·Π°Ρ‚Π΅ΠΌ ΠΎΠ±Π½ΠΎΠ²Π»ΡΡŽΡ‚ статистику. Какой Π² этом смысл? Π― Π΄ΡƒΠΌΠ°Π», Ρ‡Ρ‚ΠΎ рСорганизация индСкса Π±Ρ‹Π»Π° быстрой, Π½ΠΎ ΠΌΠ΅Π½Π΅Π΅ эффСктивной вСрсиСй индСкса пСрСстройки? ΠΈ Ρ‡Ρ‚ΠΎ пСрСстроСниС индСкса Ρ‚Π°ΠΊΠΆΠ΅ автоматичСски ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ статистику (ΠΏΠΎ ΠΊΡ€Π°ΠΉΠ½Π΅ΠΉ ΠΌΠ΅Ρ€Π΅, ΠΏΠΎ кластСризованному индСксу).

9 ΠΎΡ‚Π²Π΅Ρ‚ΠΎΠ²

Ρ…ΡƒΠΆΠ΅ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ Π² схСмС ΠΏΠ»Π°Π½Π° обслуТивания ΠΎΡ‚ SSW ΠΎΠ½ выполняСт SHRINK Π²ΠΎ-ΠΏΠ΅Ρ€Π²Ρ‹Ρ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚ индСксы ΠΊΠ°ΠΊ ΠΏΠΎΠ±ΠΎΡ‡Π½Ρ‹ΠΉ эффСкт Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΎΠ½ освобоТдаСт пространство. Π’ΠΎΠ³Π΄Π° REBUILD снова выдСляСт большС мСста для Ρ„Π°ΠΉΠ»ΠΎΠ² Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… Π² качСствС Ρ€Π°Π±ΠΎΡ‡Π΅Π³ΠΎ пространства Π²ΠΎ врСмя REBUILD опСрация.

ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ рСорганизация ΠΈ пСрСстройка индСксов для получСния Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ.

Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ SHRINK Π·Π° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ TRUNCATEONLY опция, ΠΈ Π΄Π°ΠΆΠ΅ Ρ‚ΠΎΠ³Π΄Π°, Ссли Ρ„Π°ΠΉΠ» Π±ΡƒΠ΄Π΅Ρ‚ расти снова, Ρ‚ΠΎ Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π΄ΡƒΠΌΠ°Ρ‚ΡŒ ΠΎ Ρ‚ΠΎΠΌ, Π½ΡƒΠΆΠ½ΠΎ Π»ΠΈ это:

рСорганизация ΠΈ пСрСстройка-это Ρ€Π°Π·Π½Ρ‹Π΅ Π²Π΅Ρ‰ΠΈ.

Reorganize: это дСфрагмСнтация для индСксов. ΠŸΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ индСкс(индСксы) ΠΈ Π΄Π΅Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ страницы. Однако, Ссли страницы Π½Π΅ находятся Π² Π½Π΅ΠΏΡ€Π΅Ρ€Ρ‹Π²Π½ΠΎΠΌ порядкС, ΠΎΠ½ΠΈ ΠΎΡΡ‚Π°ΡŽΡ‚ΡΡ Ρ‚Π°ΠΊΠΈΠΌΠΈ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ Ρ€Π°Π½ΡŒΡˆΠ΅. ΠœΠ΅Π½ΡΠ΅Ρ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ содСрТаниС страниц.

Rebuild: Π½Π° самом Π΄Π΅Π»Π΅ ΠΎΠ½ отбрасываСт индСкс ΠΈ пСрСстраиваСт Π΅Π³ΠΎ с нуля. Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Π²Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½ΠΎ Π½ΠΎΠ²Ρ‹ΠΉ индСкс с Π΄Π΅Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌ ΠΈ смСТным страницы.

ΠΊΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ rebuild Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ сСкционированиС ΠΈΠ»ΠΈ Π³Ρ€ΡƒΠΏΠΏΡ‹ Ρ„Π°ΠΉΠ»ΠΎΠ², Π½ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ reorganize Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π΅Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ вСсь индСкс, Π½ΠΎ ΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π·Π΄Π΅Π» индСкса.

статистика ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΉ являСтся автоматичСской для кластСризованных индСксов, Π½ΠΎ Π½Π΅ для нСкластСризованных.

ΠΏΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒ содСрТаниС индСксов, Π²Π°ΠΆΠ½ΠΎ ΠΎΡ‚Π²Π΅Ρ‚ΠΈΡ‚ΡŒ Π½Π° Π΄Π²Π° основных вопроса:

ΠΊΠ°ΠΊ описано Π² этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ http://solutioncenter.apexsql.com/why-when-and-how-to-rebuild-and-reorganize-sql-server-indexes/, ΠΈ Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠΌΠΎΡ‡ΡŒ Π²Π°ΠΌ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ, слСдуСт Π»ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ пСрСстройку индСкса ΠΈΠ»ΠΈ Ρ€Π΅ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΡŽ индСкса, поТалуйста ΠΏΠΎΠΉΠΌΠΈΡ‚Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅:

рСорганизация индСкса-это процСсс, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ SQL Server ΠΏΡ€ΠΎΡ…ΠΎΠ΄ΠΈΡ‚ Ρ‡Π΅Ρ€Π΅Π· ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ индСкс ΠΈ ΠΎΡ‡ΠΈΡ‰Π°Π΅Ρ‚ Π΅Π³ΠΎ. Index rebuild-это слоТный процСсс, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ индСкс удаляСтся, Π° Π·Π°Ρ‚Π΅ΠΌ воссоздаСтся с нуля с ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½ΠΎ Π½ΠΎΠ²ΠΎΠΉ структурой, свободной ΠΎΡ‚ всСх Π½Π°ΠΊΠΎΠΏΠ»Π΅Π½Π½Ρ‹Ρ… Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ΠΎΠ² ΠΈ пустых страниц.

Π² Ρ‚ΠΎ врСмя ΠΊΠ°ΠΊ рСорганизация индСкса-это чистая опСрация очистки, которая оставляСт состояниС систСмы Π±Π΅Π· Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠΈ Π·Π°Ρ‚Ρ€ΠΎΠ½ΡƒΡ‚Ρ‹Ρ… Ρ‚Π°Π±Π»ΠΈΡ† ΠΈ прСдставлСния, Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠΈ процСсса пСрСстроСния повлияли Π½Π° Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ Π½Π° вСсь ΠΏΠ΅Ρ€ΠΈΠΎΠ΄ пСрСстроСния, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ Π΄Π»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΌΡƒ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ простоя, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΡ€ΠΈΠ΅ΠΌΠ»Π΅ΠΌΡ‹ΠΌ Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… срСдах. ИмСя это Π² Π²ΠΈΠ΄Ρƒ, ясно, Ρ‡Ρ‚ΠΎ пСрСстроСниС индСкса – это процСсс с «Π±ΠΎΠ»Π΅Π΅ ΡΠΈΠ»ΡŒΠ½Ρ‹ΠΌ» Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ΠΌ, Π½ΠΎ ΠΎΠ½ поставляСтся с Ρ†Π΅Π½ΠΎΠΉ-Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹ΠΌΠΈ Π΄Π»ΠΈΠ½Π½Ρ‹ΠΌΠΈ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ°ΠΌΠΈ Π½Π° Π·Π°Ρ‚Ρ€ΠΎΠ½ΡƒΡ‚Ρ‹Ρ… индСксированных Ρ‚Π°Π±Π»ΠΈΡ†Π°Ρ….

Π² Π²Ρ‹ΡˆΠ΅ΡƒΠΏΠΎΠΌΡΠ½ΡƒΡ‚ΠΎΠΉ ΡΡ‚Π°Ρ‚ΡŒΠ΅ Ρ‚Π°ΠΊΠΆΠ΅ ΠΎΠ±ΡŠΡΡΠ½ΡΠ΅Ρ‚ΡΡ, ΠΊΠ°ΠΊ Ρ€Π΅ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ ΠΏΠ΅Ρ€Π΅ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ индСксы с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ SSMS, T-SQL (для Ρ€Π΅ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ/пСрСстроСния индСксов Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅) ΠΈ стороннСго инструмСнта ApexSQL Backup.

ΠΏΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ Ρ€Π΅ΠΎΡ€Π³Π° индСкса, Ссли индСкс распрСдСлСн ΠΏΠΎ Π΄Π²ΡƒΠΌ ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ физичСским Ρ„Π°ΠΉΠ»Π°ΠΌ, Π΄Π°Π½Π½Ρ‹Π΅ Π±ΡƒΠ΄ΡƒΡ‚ Π΄Π΅Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Ρ„Π°ΠΉΠ»Π΅ Π΄Π°Π½Π½Ρ‹Ρ…. Π‘Ρ‚Ρ€Π°Π½ΠΈΡ† Π½Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°ΡŽΡ‚ΡΡ ΠΈΠ· ΠΎΠ΄Π½ΠΎΠ³ΠΎ Ρ„Π°ΠΉΠ»Π° Π² Π΄Ρ€ΡƒΠ³ΠΎΠΉ.

ΠΊΠΎΠ³Π΄Π° индСкс находится Π² ΠΎΠ΄Π½ΠΎΠΌ Ρ„Π°ΠΉΠ»Π΅, reorg ΠΈ reindex Π±ΡƒΠ΄ΡƒΡ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ ΠΎΠ΄ΠΈΠ½ ΠΈ Ρ‚ΠΎΡ‚ ΠΆΠ΅ ΠΊΠΎΠ½Π΅Ρ‡Π½Ρ‹ΠΉ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚.

нСсколько Ρ€Π°Π· Ρ€Π΅ΠΎΡ€Π³ Π±ΡƒΠ΄Π΅Ρ‚ быстрСС, Π° нСсколько Ρ€Π°Π· рСиндСкс Π±ΡƒΠ΄Π΅Ρ‚ быстрСС Π² зависимости ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, насколько Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ индСкс. Π§Π΅ΠΌ ΠΌΠ΅Π½Π΅Π΅ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ индСкс, Ρ‚Π΅ΠΌ Ρ€Π΅ΠΎΡ€Π³ Π±ΡƒΠ΄Π΅Ρ‚ Ρ‡Π΅ΠΌ быстрСС, Ρ‚Π΅ΠΌ Π±ΠΎΠ»Π΅Π΅ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌ Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π΅ΠΎΡ€Π³, Π½ΠΎ Ρ‚Π΅ΠΌ быстрСС Π±ΡƒΠ΄Π΅Ρ‚ рСиндСкс.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

РСорганизация ΠΈ пСрСстроСниС индСксов SQL 2012

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅

РСорганизация ΠΈ пСрСстроСниС индСксов [ ]

SQL Server 2012

ΠšΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ ΠšΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ SQL Server Database Engine автоматичСски ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ состояниС индСксов ΠΏΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ вставки, обновлСния ΠΈΠ»ΠΈ удалСния Π² ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠΈ Π±Π°Π·ΠΎΠ²Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…. Π‘ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ эти измСнСния ΠΌΠΎΠ³ΡƒΡ‚ привСсти ΠΊ Ρ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ Π΄Π°Π½Π½Ρ‹Π΅ Π² индСксС окаТутся разбросанными ΠΏΠΎ Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ… (Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌΠΈ). ЀрагмСнтация ΠΈΠΌΠ΅Π΅Ρ‚ мСсто Π² Ρ‚Π΅Ρ… случаях, ΠΊΠΎΠ³Π΄Π° Π² индСксах содСрТатся страницы, для ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… логичСский порядок, основанный Π½Π° Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΈ ΠΊΠ»ΡŽΡ‡Π°, Π½Π΅ совпадаСт с физичСским порядком Π² Ρ„Π°ΠΉΠ»Π΅ Π΄Π°Π½Π½Ρ‹Ρ…. Π—Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ индСксы ΠΌΠΎΠ³ΡƒΡ‚ ΡΠ΅Ρ€ΡŒΠ΅Π·Π½ΠΎ ΡΠ½ΠΈΠΆΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ запросов ΠΈ ΡΠ»ΡƒΠΆΠΈΡ‚ΡŒ ΠΏΡ€ΠΈΡ‡ΠΈΠ½ΠΎΠΉ замСдлСния ΠΎΡ‚ΠΊΠ»ΠΈΠΊΠΎΠ² прилоТСния.

Для сСкционированных индСксов, построСнных Π½Π° основС схСмы сСкционирования, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ любой ΠΈΠ· этих ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² для всСго индСкса ΠΈΠ»ΠΈ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠΉ Π΅Π³ΠΎ сСкции. ΠŸΡ€ΠΈ пСрСстроСнии старый индСкс удаляСтся, ΠΈ создаСтся Π½ΠΎΠ²Ρ‹ΠΉ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, устраняСтся фрагмСнтация, восстанавливаСтся мСсто Π½Π° дискС ΠΏΡƒΡ‚Π΅ΠΌ сТатия страниц с ΡƒΡ‡Π΅Ρ‚ΠΎΠΌ ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ³ΠΎ ΠΈΠ»ΠΈ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ коэффициСнта заполнСния, ΠΏΠ΅Ρ€Π΅ΡƒΠΏΠΎΡ€ΡΠ΄ΠΎΡ‡ΠΈΠ²Π°ΡŽΡ‚ΡΡ индСксныС строки Π² ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… страницах. Если указываСтся ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ΅ слово ALL, Ρ‚ΠΎ всС индСксы для Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ ΡƒΠ΄Π°Π»ΡΡŽΡ‚ΡΡ ΠΈ ΠΏΠ΅Ρ€Π΅ΡΡ‚Ρ€Π°ΠΈΠ²Π°ΡŽΡ‚ΡΡ Π² ΠΎΠ΄Π½ΠΎΠΉ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ. Для Ρ€Π΅ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ индСкса трСбуСтся ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ объСм систСмных рСсурсов. ΠŸΡ€ΠΈ Ρ€Π΅ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΊΠΎΠ½Ρ†Π΅Π²ΠΎΠΉ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ кластСризованных ΠΈ нСкластСризованных индСксов Π½Π° Ρ‚Π°Π±Π»ΠΈΡ†Π°Ρ… ΠΈ прСдставлСниях дСфрагмСнтируСтся ΠΏΡƒΡ‚Π΅ΠΌ физичСской Ρ€Π΅ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ страниц ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠ³ΠΎ уровня, Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ Ρ‡Π΅Π³ΠΎ ΠΎΠ½ΠΈ Π²Ρ‹ΡΡ‚Ρ€Π°ΠΈΠ²Π°ΡŽΡ‚ΡΡ Π² соотвСтствии с логичСским порядком ΠΊΠΎΠ½Π΅Ρ‡Π½Ρ‹Ρ… ΡƒΠ·Π»ΠΎΠ² (слСва Π½Π°ΠΏΡ€Π°Π²ΠΎ). ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, рСорганизация сТимаСт страницы индСкса. Π˜Ρ… сТатиС производится Π² соотвСтствии с Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΌ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ коэффициСнта заполнСния.

Π‘Ρ€Π΅Π΄Π° SQL Server Management Studio

Π‘Ρ€Π΅Π΄Π° SQL Server Management Studio

ΠŸΠ΅Ρ€Π΅Π΄ Π½Π°Ρ‡Π°Π»ΠΎΠΌ Ρ€Π°Π±ΠΎΡ‚Ρ‹ [ ]

ВыявлСниС Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ [ ]

БистСмная функция sys.dm_db_index_physical_stats позволяСт Π²Ρ‹ΡΠ²ΠΈΡ‚ΡŒ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΡŽ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ индСкса, всСх индСксов Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ ΠΈΠ»ΠΈ индСксированном прСдставлСнии, всСх индСксов Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ»ΠΈ всСх индСксов Π²ΠΎ всСх Π±Π°Π·Π°Ρ… Π΄Π°Π½Π½Ρ‹Ρ…. Для сСкционированных индСксов sys.dm_db_index_physical_stats Ρ‚Π°ΠΊΠΆΠ΅ прСдоставляСт свСдСния ΠΎ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ сСкции.

Π Π΅Π·ΡƒΠ»ΡŒΡ‚ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠΉ Π½Π°Π±ΠΎΡ€, Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΡ‹ΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ sys.dm_db_index_physical_stats, Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ столбцы:

avg_fragmentation_in_percentΠŸΡ€ΠΎΡ†Π΅Π½Ρ‚Π½Π°Ρ доля логичСской Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ (нСупорядочСнныС страницы Π² индСксС).fragment_countЧисло Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ΠΎΠ² (физичСски ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΊΠΎΠ½Π΅Ρ‡Π½Ρ‹Π΅ страницы) Π² индСксС.avg_fragment_size_in_pagesΠ‘Ρ€Π΅Π΄Π½Π΅Π΅ число страниц Π² ΠΎΠ΄Π½ΠΎΠΌ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π΅ индСкса.

Выяснив ΡΡ‚Π΅ΠΏΠ΅Π½ΡŒ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Π½ΠΈΠΆΠ΅ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ для опрСдСлСния Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ подходящСго ΠΌΠ΅Ρ‚ΠΎΠ΄Π° устранСния Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ.

> 5 % ΠΈ 30%ALTER INDEX REBUILD WITH (ONLINE = ON)*

РСорганизация индСкса всСгда выполняСтся Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ Π² сСти. Π§Ρ‚ΠΎΠ±Ρ‹ Π΄ΠΎΠ±ΠΈΡ‚ΡŒΡΡ доступности, ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρƒ с Ρ€Π΅ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ, слСдуСт ΠΏΠ΅Ρ€Π΅ΡΡ‚Ρ€Π°ΠΈΠ²Π°Ρ‚ΡŒ индСксы Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ Π² сСти.

Однако фактичСскиС значСния ΠΌΠΎΠ³ΡƒΡ‚ Ρ€Π°Π·Π»ΠΈΡ‡Π°Ρ‚ΡŒΡΡ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΌ случаС. Π’Π°ΠΆΠ½ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ Π½Π°ΠΈΠ»ΡƒΡ‡ΡˆΠ΅Π΅ ΠΏΠΎΡ€ΠΎΠ³ΠΎΠ²ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ для ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠΉ срСды ΡΠΊΡΠΏΠ΅Ρ€ΠΈΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΌ ΠΏΡƒΡ‚Π΅ΠΌ.ΠŸΡ€ΠΈ ΠΎΡ‡Π΅Π½ΡŒ Π½ΠΈΠ·ΠΊΠΈΡ… уровнях Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ (ΠΌΠ΅Π½Π΅Π΅ 5 %) эти ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Π²Ρ‹Π³ΠΎΠ΄Π° ΠΎΡ‚ Π΄Π΅Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ ΡΡ‚ΠΎΠ»ΡŒ Π½ΠΈΠ·ΠΊΠΎΠ³ΠΎ уровня ΠΏΠΎΡ‡Ρ‚ΠΈ всСгда Π² достаточной стСпСни компСнсируСтся Π·Π° счСт Ρ€Π΅ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΈΠ»ΠΈ пСрСстроСния индСкса.

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅
Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Ρ‹ индСксов ΠΌΠ°Π»ΠΎΠ³ΠΎ Ρ€Π°Π·ΠΌΠ΅Ρ€Π° хранятся Π² ΡΠΌΠ΅ΡˆΠ°Π½Π½Ρ‹Ρ… экстСнтах. Π‘ΠΌΠ΅ΡˆΠ°Π½Π½Ρ‹Π΅ экстСнты ΠΌΠΎΠ³ΡƒΡ‚ совмСстно ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ восСмью ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ, поэтому фрагмСнтация Π² нСбольшом индСксС ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π΅ ΡΠΎΠΊΡ€Π°Ρ‚ΠΈΡ‚ΡŒΡΡ послС Ρ€Π΅ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΈΠ»ΠΈ пСрСстроСния индСкса.

ΠžΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΡ [ ]

Π‘Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ [ ]

Π Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ [ ]

ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ Ρ‡Π»Π΅Π½ΠΎΠΌ ΠΏΡ€Π΅Π΄ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ Ρ€ΠΎΠ»ΠΈ сСрвСра sysadmin ΠΈΠ»ΠΈ ΠΏΡ€Π΅Π΄ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… Ρ€ΠΎΠ»Π΅ΠΉ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… db_ddladmin ΠΈ db_owner.

ИспользованиС срСды SQL Server Management Studio [ ]

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ индСкса [ ]

На страницС ЀрагмСнтация доступны ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ свСдСния.

ИспользованиС Transact-SQL [ ]

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ индСкса [ ]

Π­Ρ‚Π° инструкция Π΄ΠΎΠ»ΠΆΠ½Π° Π²ΠΎΠ·Π²Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠΉ Π½Π°Π±ΠΎΡ€, ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹ΠΉ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌΡƒ Π½ΠΈΠΆΠ΅.

Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ свСдСния см. Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ sys.dm_db_index_physical_stats (Transact-SQL).

ИспользованиС срСды SQL Server Management Studio [ ]

РСорганизация ΠΈΠ»ΠΈ пСрСстроСниС индСкса [ ]

РСорганизация всСх индСксов Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ [ ]

ΠŸΠ΅Ρ€Π΅ΡΡ‚Ρ€ΠΎΠ΅Π½ΠΈΠ΅ индСкса [ ]

ИспользованиС Transact-SQL [ ]

РСорганизация Π΄Π΅Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ индСкса [ ]

РСорганизация всСх индСксов Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ [ ]

ΠŸΠ΅Ρ€Π΅ΡΡ‚Ρ€ΠΎΠ΅Π½ΠΈΠ΅ Π΄Π΅Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ индСкса [ ]

ΠŸΠ΅Ρ€Π΅ΡΡ‚Ρ€ΠΎΠ΅Π½ΠΈΠ΅ всСх индСксов Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ [ ]

Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ свСдСния см. Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ ALTER INDEX (Transact-SQL).

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π—Π°Π΄Π°Ρ‡Π° Β«ΠŸΠ΅Ρ€Π΅ΡΡ‚Ρ€ΠΎΠ΅Π½ΠΈΠ΅ индСкса» (ΠΏΠ»Π°Π½ обслуТивания)

Π”ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ Π—Π°Π΄Π°Ρ‡Π° «ΠŸΠ΅Ρ€Π΅ΡΡ‚Ρ€ΠΎΠ΅Π½ΠΈΠ΅ индСкса» ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для пСрСсоздания индСксов Π½Π° Ρ‚Π°Π±Π»ΠΈΡ†Π°Ρ… Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ… с Π½ΠΎΠ²Ρ‹ΠΌ коэффициСнтом заполнСния. ΠšΠΎΡΡ„Ρ„ΠΈΡ†ΠΈΠ΅Π½Ρ‚ заполнСния опрСдСляСт количСство пустого пространства Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΉ страницС индСкса для обСспСчСния роста Π² Π±ΡƒΠ΄ΡƒΡ‰Π΅ΠΌ. По ΠΌΠ΅Ρ€Π΅ Ρ‚ΠΎΠ³ΠΎ ΠΊΠ°ΠΊ ΠΊ Ρ‚Π°Π±Π»ΠΈΡ†Π΅ Π΄ΠΎΠ±Π°Π²Π»ΡΡŽΡ‚ΡΡ Π΄Π°Π½Π½Ρ‹Π΅, свободноС пространство заполняСтся, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ коэффициСнт заполнСния Π½Π΅ сохраняСтся. Π’ΠΎΡΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ свободноС пространство ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡƒΡ‚Π΅ΠΌ Ρ€Π΅ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ страниц индСкса.

Π—Π°Π΄Π°Ρ‡Π° «ΠŸΠ΅Ρ€Π΅ΡΡ‚Ρ€ΠΎΠ΅Π½ΠΈΠ΅ индСкса» ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΠΈΠ½ΡΡ‚Ρ€ΡƒΠΊΡ†ΠΈΡŽ ALTER INDEX. Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ свСдСния ΠΎ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°Ρ…, описанных Π½Π° этой страницС, см. Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ ALTER INDEX (Transact-SQL).

ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹

Π‘ΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅
Π’Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ соСдинСниС с сСрвСром, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для выполнСния этой Π·Π°Π΄Π°Ρ‡ΠΈ.

Π‘ΠΎΠ·Π΄Π°Ρ‚ΡŒ
Π‘ΠΎΠ·Π΄Π°Ρ‚ΡŒ Π½ΠΎΠ²ΠΎΠ΅ соСдинСниС с сСрвСром для Π΅Π³ΠΎ использования ΠΏΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ этой Π·Π°Π΄Π°Ρ‡ΠΈ. Π”ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ соСдинСния описано Π½ΠΈΠΆΠ΅.

Π‘Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…
Π£ΠΊΠ°ΠΆΠΈΡ‚Π΅ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…, для ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π΄ΠΎΠ»ΠΆΠ½Π° Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ эта Π·Π°Π΄Π°Ρ‡Π°.

ВсС Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…

ВсС систСмныС Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…

ВсС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠ΅ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…

БоздаСтся ΠΏΠ»Π°Π½ обслуТивания, ΠΏΠΎ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ Π·Π°Π΄Π°Ρ‡ΠΈ обслуТивания Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ для всСх Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ…, созданных ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ. Для систСмных Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ… SQL Server Π·Π°Π΄Π°Ρ‡ΠΈ обслуТивания Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ Π½Π΅ Π±ΡƒΠ΄ΡƒΡ‚.

ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…

БоздаСтся ΠΏΠ»Π°Π½ обслуТивания, ΠΏΠΎ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ Π·Π°Π΄Π°Ρ‡ΠΈ обслуТивания Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Ρ… Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ…. Если Π²Ρ‹Π±Ρ€Π°Π½ этот ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ Π² спискС хотя Π±Ρ‹ ΠΎΠ΄Π½Ρƒ Π±Π°Π·Ρƒ Π΄Π°Π½Π½Ρ‹Ρ….

ΠŸΠ»Π°Π½Ρ‹ обслуТивания Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ…, ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ совмСстимости ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… 80 ΠΈΠ»ΠΈ Π²Ρ‹ΡˆΠ΅. Π‘Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… с ΡƒΡ€ΠΎΠ²Π½Π΅ΠΌ совмСстимости 70 ΠΈΠ»ΠΈ Π½ΠΈΠΆΠ΅ Π½Π΅ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‚ΡΡ.

ΠžΠ±ΡŠΠ΅ΠΊΡ‚
ΠžΠ³Ρ€Π°Π½ΠΈΡ‡ΡŒΡ‚Π΅ сСтку Π’Ρ‹Π±ΠΎΡ€ для отобраТСния Ρ‚Π°Π±Π»ΠΈΡ†, прСдставлСний ΠΈΠ»ΠΈ ΠΎΠ±ΠΎΠΈΡ… элСмСнтов.

Π‘Π²ΠΎΠ±ΠΎΠ΄Π½ΠΎΠ΅ пространство ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π½Π° страницС
Π£Π΄Π°Π»ΠΈΡ‚Π΅ индСксы Ρ‚Π°Π±Π»ΠΈΡ† Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ создайтС ΠΈΡ… ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎ с коэффициСнтом заполнСния, ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΌ ΠΏΡ€ΠΈ создании индСксов.

Π˜Π·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ долю свободного мСста Π½Π° страницС
Π£Π΄Π°Π»ΠΈΡ‚Π΅ индСксы Ρ‚Π°Π±Π»ΠΈΡ† Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ создайтС ΠΈΡ… ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎ с Π½ΠΎΠ²Ρ‹ΠΌ, автоматичСски вычисляСмым коэффициСнтом заполнСния, Ρ€Π΅Π·Π΅Ρ€Π²ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠΌ ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΉ объСм свободного пространства Π½Π° страницах индСкса. Π§Π΅ΠΌ Π²Ρ‹ΡˆΠ΅ ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚Π½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, Ρ‚Π΅ΠΌ большС свободного мСста рСзСрвируСтся Π½Π° страницах индСкса ΠΈ Ρ‚Π΅ΠΌ большС Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π·ΠΌΠ΅Ρ€ индСкса. ДопустимыС значСния: ΠΎΡ‚ 0 Π΄ΠΎ 100.

ΠžΡ‚ΡΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ… tempdb
ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ SORT_IN_TEMPDB ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для опрСдСлСния мСста Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ сохранСния ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΡ‡Π½Ρ‹Ρ… Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² сортировки, Ρ„ΠΎΡ€ΠΌΠΈΡ€ΡƒΠ΅ΠΌΡ‹Ρ… Π²ΠΎ врСмя создания индСкса. Если опСрация сортировки Π½Π΅ трСбуСтся ΠΈΠ»ΠΈ сортировка ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Π° Π² памяти, ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ SORT_IN_TEMPDB Π½Π΅ учитываСтся.

Ρ€Π°Π·Ρ€Π΅Π΄ΠΈΡ‚ΡŒ индСкс
Π£ΠΊΠ°ΠΆΠΈΡ‚Π΅ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ индСкса.

Π‘ΠΎΡ…Ρ€Π°Π½ΡΡ‚ΡŒ индСкс Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ «Π² сСти»
ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ ONLINE Π΄Π°Π΅Ρ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒ доступ ΠΊ Π±Π°Π·ΠΎΠ²ΠΎΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Π΅ ΠΈΠ»ΠΈ Π΄Π°Π½Π½Ρ‹ΠΌ кластСризованного индСкса, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΊ Π»ΡŽΠ±Ρ‹ΠΌ связанным с Π½ΠΈΠΌΠΈ нСкластСризованным индСксам ΠΏΡ€ΠΈ опСрациях с индСксами.

ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ с индСксами Π² сСти доступны Π½Π΅ Π²ΠΎ всСх выпусках MicrosoftSQL Server. БвСдСния ΠΎ функциях, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹Ρ… Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ выпусками SQL Server, см. Π² ΡΡ‚Π°Ρ‚ΡŒΠ΅ ВозмоТности, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹Π΅ выпусками SQL Server 2016.

НС ΠΏΠ΅Ρ€Π΅ΡΡ‚Ρ€Π°ΠΈΠ²Π°Ρ‚ΡŒ индСксы | ΠŸΠ΅Ρ€Π΅ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ индСксы Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ «Π²Π½Π΅ сСти»
Π£ΠΊΠ°ΠΆΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ для Ρ‚ΠΈΠΏΠΎΠ² индСксов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ, ΠΏΠΎΠΊΠ° ΠΎΠ½ΠΈ находятся Π² сСти.

MAXDOP
Π£ΠΊΠ°ΠΆΠΈΡ‚Π΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ для ограничСния числа процСссоров, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… ΠΏΡ€ΠΈ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎΠΌ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΏΠ»Π°Π½ΠΎΠ².

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π½ΠΈΠ·ΠΊΠΈΠΉ ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚
Π’Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ этот ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ для оТидания Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΎΠΊ с Π½ΠΈΠ·ΠΊΠΈΠΌ ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚ΠΎΠΌ.

Максимальная Π΄Π»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ
Π£ΠΊΠ°ΠΆΠΈΡ‚Π΅ Π΄Π»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ оТидания Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΎΠΊ с Π½ΠΈΠ·ΠΊΠΈΠΌ ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚ΠΎΠΌ.

Если количСство Π·Π°Ρ‚Ρ€ΠΎΠ½ΡƒΡ‚Ρ‹Ρ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π²Π΅Π»ΠΈΠΊΠΎ, построСниС этого отобраТСния ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°Π½ΡΡ‚ΡŒ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ врСмя.

ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ статистики индСксов

Π’ Π±ΠΎΠ»Π΅Π΅ Ρ€Π°Π½Π½ΠΈΡ… вСрсиях Microsoft SQL Server ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Ρ€Π΅ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΈΠ»ΠΈ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎΠ³ΠΎ создания Π±ΠΎΠ»ΡŒΡˆΠΈΡ… индСксов ΠΌΠΎΠ³Π»ΠΈ ΡΠ½ΠΈΠΆΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ систСмы. Π’ SQL Server 2016 Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ ряд ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΠΉ для сущСствСнного ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½ΠΈΡ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Ρ‚Π°ΠΊΠΈΡ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ.

ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Π² Π±ΠΎΠ»Π΅Π΅ Ρ€Π°Π½Π½ΠΈΡ… вСрсиях Π±Ρ‹Π»ΠΎ доступно мСньшС возмоТностСй управлСния. Из-Π·Π° этого ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Ρ€Π΅ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΈΠ»ΠΈ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎΠ³ΠΎ создания Π²Ρ‹ΠΏΠΎΠ»Π½ΡΠ»ΠΈΡΡŒ Π΄Π°ΠΆΠ΅ для индСксов с Π½ΠΈΠ·ΠΊΠΎΠΉ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠ΅ΠΉ, Ρ‡Ρ‚ΠΎ Π±Ρ‹Π»ΠΎ слишком Π·Π°Ρ‚Ρ€Π°Ρ‚Π½ΠΎ. НовыС элСмСнты управлСния Π² ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠΌ интСрфСйсС для ΠΏΠ»Π°Π½Π° обслуТивания ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΠΈΡΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ индСксы, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ ΠΎΠ±Π½ΠΎΠ²Π»ΡΡ‚ΡŒ, Ρ€ΡƒΠΊΠΎΠ²ΠΎΠ΄ΡΡ‚Π²ΡƒΡΡΡŒ критСриями статистики индСксов. ΠŸΡ€ΠΈ этом для Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΡ… Ρ†Π΅Π»Π΅ΠΉ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ динамичСскиС административныС прСдставлСния (DMV) Transact-SQL:

Π’ΠΈΠΏ просмотра
БистСма Π΄ΠΎΠ»ΠΆΠ½Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ рСсурсы для сбора статистики индСксов. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ объСм ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… рСсурсов, исходя ΠΈΠ· Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊΠΎΠΉ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ точности, ΠΏΠΎ Π²Π°ΡˆΠ΅ΠΌΡƒ мнСнию, трСбуСтся для статистики индСксов. Π’ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠΌ интСрфСйсС доступны ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΡƒΡ€ΠΎΠ²Π½ΠΈ точности:

ΠžΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΡ индСкса Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… случаях
Π’ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠΌ интСрфСйсС доступны ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ настраиваСмыС Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Ρ‹, благодаря ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ обновлСния индСксов, для ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… это Π½Π΅ трСбуСтся:

Π”ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ Β«Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ соСдинСния»

Имя соСдинСния
Π’Π²Π΅Π΄ΠΈΡ‚Π΅ имя Π½ΠΎΠ²ΠΎΠ³ΠΎ соСдинСния.

Π’Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ ΠΈΠ»ΠΈ Π²Π²Π΅Π΄ΠΈΡ‚Π΅ имя сСрвСра
Π’Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ сСрвСр для ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΏΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ этой Π·Π°Π΄Π°Ρ‡ΠΈ.

ΠžΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒ
ΠžΠ±Π½ΠΎΠ²ΠΈΡ‚Π΅ список доступных сСрвСров.

Π’Π²Π΅Π΄ΠΈΡ‚Π΅ Π΄Π°Π½Π½Ρ‹Π΅ для Π²Ρ…ΠΎΠ΄Π° Π½Π° сСрвСр
Π£ΠΊΠ°ΠΆΠΈΡ‚Π΅ способ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ подлинности Π½Π° сСрвСрС.

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π²ΡΡ‚Ρ€ΠΎΠ΅Π½Π½ΡƒΡŽ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ Windows
ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒΡΡ ΠΊ экзСмпляру ΠšΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ SQL Server Database Engine с использованиСм ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ подлинности Windows.

ΠŸΠ°Ρ€ΠΎΠ»ΡŒ
Π£ΠΊΠ°ΠΆΠΈΡ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΉ ΠΏΡ€ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ΅ подлинности ΠΏΠ°Ρ€ΠΎΠ»ΡŒ. Π­Ρ‚ΠΎΡ‚ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ нСдоступСн.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

ΠžΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΡ обслуТивания индСксов позволяСт ΠΏΠΎΠ²Ρ‹ΡΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ запросов ΠΈ ΡΠ½ΠΈΠ·ΠΈΡ‚ΡŒ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ потрСблСния рСсурсов

Π­Ρ‚Π° ΡΡ‚Π°Ρ‚ΡŒΡ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Π²Π°ΠΌ ΠΏΠΎΠ½ΡΡ‚ΡŒ, ΠΊΠΎΠ³Π΄Π° ΠΈ ΠΊΠ°ΠΊ Π»ΡƒΡ‡ΡˆΠ΅ всСго Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ обслуТиваниС индСксов. Π—Π΄Π΅ΡΡŒ Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°ΡŽΡ‚ΡΡ Ρ‚Π°ΠΊΠΈΠ΅ понятия, ΠΊΠ°ΠΊ фрагмСнтация индСксов ΠΈ ΠΏΠ»ΠΎΡ‚Π½ΠΎΡΡ‚ΡŒ страниц, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΡ… влияниС Π½Π° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ запросов ΠΈ ΠΏΠΎΡ‚Ρ€Π΅Π±Π»Π΅Π½ΠΈΠ΅ рСсурсов. Π’Π°ΠΊΠΆΠ΅ ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ΡΡ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ обслуТивания индСксов, Π² частности рСорганизация индСкса ΠΈ пСрСстроСниС индСкса, ΠΈ прСдлагаСтся стратСгия обслуТивания индСксов с ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΌ балансом ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½ΠΈΠ΅ΠΌ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΈ сниТСниСм уровня потрСблСния рСсурсов, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Ρ… для обслуТивания.

БвСдСния Π² этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ Π½Π΅ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ ΠΊ Π²Ρ‹Π΄Π΅Π»Π΅Π½Π½ΠΎΠΌΡƒ ΠΏΡƒΠ»Ρƒ SQL Π² Azure Synapse Analytics. БвСдСния ΠΎΠ± обслуТивании индСкса для Π²Ρ‹Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΠΏΡƒΠ»Π° SQL Π² Azure Synapse Analytics см. Π² ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΎΠ± индСксации Ρ‚Π°Π±Π»ΠΈΡ† Π²Ρ‹Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΠΏΡƒΠ»Π° SQL Π² Azure Synapse Analytics.

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ понятия: фрагмСнтация индСкса ΠΈ ΠΏΠ»ΠΎΡ‚Π½ΠΎΡΡ‚ΡŒ страниц

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ фрагмСнтация индСкса ΠΈ ΠΊΠ°ΠΊ ΠΎΠ½Π° влияСт Π½Π° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ?

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΏΠ»ΠΎΡ‚Π½ΠΎΡΡ‚ΡŒ страниц (ΠΈΠ»ΠΈ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½Π½ΠΎΡΡ‚ΡŒ страниц) ΠΈ ΠΊΠ°ΠΊ ΠΎΠ½Π° влияСт Π½Π° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ?

Для ΠΌΠ½ΠΎΠ³ΠΈΡ… Ρ€Π°Π±ΠΎΡ‡ΠΈΡ… Π½Π°Π³Ρ€ΡƒΠ·ΠΎΠΊ ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½ΠΈΠ΅ плотности страниц позволяСт большС ΠΏΠΎΠ²Ρ‹ΡΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ, Ρ‡Π΅ΠΌ сниТСниС Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ.

Π§Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ Π΄ΠΎΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ излишнСго сниТСния плотности страниц, корпорация ΠœΠ°ΠΉΠΊΡ€ΠΎΡΠΎΡ„Ρ‚ Π½Π΅ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΠ΅Ρ‚ Π·Π°Π΄Π°Π²Π°Ρ‚ΡŒ коэффициСнт заполнСния, ΠΎΡ‚Π»ΠΈΡ‡Π½Ρ‹ΠΉ ΠΎΡ‚ значСния 100 (ΠΈΠ»ΠΈ 0), Π·Π° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ Ρ‚Π΅Ρ… сцСнариСв, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… индСксы часто ΠΏΠΎΠ΄Π²Π΅Ρ€Π³Π°ΡŽΡ‚ΡΡ Ρ€Π°Π·Π±ΠΈΠ΅Π½ΠΈΡŽ страниц, ΠΊΠ°ΠΊ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, часто измСняСмыС индСксы с Π²Π΅Π΄ΡƒΡ‰ΠΈΠΌΠΈ столбцами, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ содСрТат Π½Π΅ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ значСния GUID.

Π˜Π·ΠΌΠ΅Ρ€Π΅Π½ΠΈΠ΅ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ индСкса ΠΈ плотности страниц

Как Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΡŽ, Ρ‚Π°ΠΊ ΠΈ ΠΏΠ»ΠΎΡ‚Π½ΠΎΡΡ‚ΡŒ страниц Π²Π°ΠΆΠ½ΠΎ ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈ принятии Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ обслуТивания индСкса ΠΈ ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡Ρ‚ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΌ ΠΌΠ΅Ρ‚ΠΎΠ΄Π΅ обслуТивания.

ЀрагмСнтация для индСксов rowstore ΠΈ columnstore опрСдСляСтся ΠΏΠΎ-Ρ€Π°Π·Π½ΠΎΠΌΡƒ. Для индСксов rowstore функция sys.dm_db_index_physical_stats позволяСт ΡƒΠ·Π½Π°Ρ‚ΡŒ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΡŽ ΠΈ ΠΏΠ»ΠΎΡ‚Π½ΠΎΡΡ‚ΡŒ страниц для ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ индСкса, для всСх индСксов Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ ΠΈΠ»ΠΈ индСксированном прСдставлСнии, для всСх индСксов Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ»ΠΈ для всСх индСксов Π²ΠΎ всСх Π±Π°Π·Π°Ρ… Π΄Π°Π½Π½Ρ‹Ρ…. Для сСкционированных индСксов sys.dm_db_index_physical_stats() Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ для ΠΊΠ°ΠΆΠ΄ΠΎΠΉ сСкции.

Π‘Ρ‚ΠΎΠ»Π±Π΅Ρ†ΠžΠΏΠΈΡΠ°Π½ΠΈΠ΅
avg_fragmentation_in_percentЛогичСская фрагмСнтация (нСупорядочСнныС страницы Π² индСксС).
avg_page_space_used_in_percentБрСдняя ΠΏΠ»ΠΎΡ‚Π½ΠΎΡΡ‚ΡŒ страниц.

Для сТатых Π³Ρ€ΡƒΠΏΠΏ строк Π² индСксах columnstore фрагмСнтация опрСдСляСтся ΠΊΠ°ΠΊ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ числа ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹Ρ… строк ΠΊ ΠΎΠ±Ρ‰Π΅ΠΌΡƒ числу строк, Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½Π½ΠΎΠ΅ Π² ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚Π°Ρ…. Ѐункция sys.dm_db_column_store_row_group_physical_stats позволяСт ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ ΠΎΠ±Ρ‰Π΅Π΅ число строк ΠΈ число ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹Ρ… строк ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ для ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π³Ρ€ΡƒΠΏΠΏΡ‹ строк Π² ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΌ индСксС, Π²ΠΎ всСх индСксах Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ ΠΈΠ»ΠΈ Π²ΠΎ всСх индСксах Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ….

Π‘Ρ‚ΠΎΠ»Π±Π΅Ρ†ΠžΠΏΠΈΡΠ°Π½ΠΈΠ΅
total_rowsΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ строк, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ физичСски хранятся Π² Π³Ρ€ΡƒΠΏΠΏΠ΅ строк. Для сТатых Π³Ρ€ΡƒΠΏΠΏ строк ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°ΡŽΡ‚ΡΡ строки, ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Π½Ρ‹Π΅ ΠΊΠ°ΠΊ ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹Π΅.
deleted_rowsΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ строк, физичСски хранящихся Π² сТатой Π³Ρ€ΡƒΠΏΠΏΠ΅ строк ΠΈ ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Π½Ρ‹Ρ… для удалСния. Для Π³Ρ€ΡƒΠΏΠΏ строк Π² разностном Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ это Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ€Π°Π²Π½ΠΎ 0.

ЀрагмСнтация сТатых Π³Ρ€ΡƒΠΏΠΏ строк Π² индСксС columnstore ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ Ρ„ΠΎΡ€ΠΌΡƒΠ»Ρ‹:

Как для rowstore, Ρ‚Π°ΠΊ ΠΈ для columnstore особСнно Π²Π°ΠΆΠ½ΠΎ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΡŽ ΠΈ ΠΏΠ»ΠΎΡ‚Π½ΠΎΡΡ‚ΡŒ страниц для индСкса ΠΈΠ»ΠΈ ΠΊΡƒΡ‡ΠΈ послС удалСния ΠΈΠ»ΠΈ обновлСния большого количСства строк. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, ΠΏΡ€ΠΈ большой частотС обновлСния для ΠΊΡƒΡ‡, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, потрСбуСтся рСгулярно ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΡŽ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ большого числа записСй пСрСадрСсации. Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ свСдСния ΠΎ ΠΊΡƒΡ‡Π°Ρ… см. Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ ΠšΡƒΡ‡ΠΈ (Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π±Π΅Π· кластСризованных индСксов).

ΠžΠ·Π½Π°ΠΊΠΎΠΌΡŒΡ‚Π΅ΡΡŒ с ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°ΠΌΠΈ запросов для опрСдСлСния Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ ΠΈ плотности страниц.

ΠœΠ΅Ρ‚ΠΎΠ΄Ρ‹ обслуТивания индСкса: рСорганизация ΠΈ пСрСстроСниС

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΠΌΠ΅Π½ΡŒΡˆΠΈΡ‚ΡŒ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΡŽ индСкса ΠΈ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΡ‚ΡŒ ΠΏΠ»ΠΎΡ‚Π½ΠΎΡΡ‚ΡŒ страниц с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ любого ΠΈΠ· ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ²:

Для сСкционированных индСксов ΠΎΠ±Π° эти ΠΌΠ΅Ρ‚ΠΎΠ΄Π° ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΊΠΎ всСм сСкциям ΠΈΠ»ΠΈ ΠΊ ΠΎΠ΄Π½ΠΎΠΉ сСкции индСкса.

РСорганизация индСкса

Если опСрация Ρ€Π΅ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ отмСняСтся ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ ΠΈΠ»ΠΈ прСрываСтся ΠΈΠ½Ρ‹ΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, всС ΡƒΠΆΠ΅ достигнутыС ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΡ ΡΠΎΡ…Ρ€Π°Π½ΡΡŽΡ‚ΡΡ Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ…. Для Ρ€Π΅ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ Π±ΠΎΠ»ΡŒΡˆΠΈΡ… индСксов ΠΌΠΎΠΆΠ½ΠΎ ΠΌΠ½ΠΎΠ³ΠΎΠΊΡ€Π°Ρ‚Π½ΠΎ Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ ΠΈ ΠΎΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ, ΠΏΠΎΠΊΠ° Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½Π° вся Ρ€Π°Π±ΠΎΡ‚Π°.

ΠŸΠ΅Ρ€Π΅ΡΡ‚Ρ€ΠΎΠ΅Π½ΠΈΠ΅ индСкса

ΠŸΡ€ΠΈ пСрСстроСнии старый индСкс удаляСтся, ΠΈ создаСтся Π½ΠΎΠ²Ρ‹ΠΉ. ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΡ пСрСстроСния ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ с сохранСниСм ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΈΠ»ΠΈ Π° Π°Π²Ρ‚ΠΎΠ½ΠΎΠΌΠ½ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅ Π² зависимости ΠΎΡ‚ Ρ‚ΠΈΠΏΠ° индСкса ΠΈ вСрсии ΠšΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Database Engine. ΠŸΠ΅Ρ€Π΅ΡΡ‚Ρ€ΠΎΠ΅Π½ΠΈΠ΅ индСкса Π² Π°Π²Ρ‚ΠΎΠ½ΠΎΠΌΠ½ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ мСньшС Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, Ρ‡Π΅ΠΌ с сохранСниСм ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ, Π½ΠΎ ΠΏΡ€ΠΈ этом ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠΈ Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π½Π° вСсь ΠΏΠ΅Ρ€ΠΈΠΎΠ΄ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ пСрСстроСния, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ΅ доступа запросов ΠΊ Ρ‚Π°Π±Π»ΠΈΡ†Π΅ ΠΈΠ»ΠΈ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»Π΅Π½ΠΈΡŽ.

ΠŸΠ΅Ρ€Π΅ΡΡ‚Ρ€ΠΎΠ΅Π½ΠΈΠ΅ индСкса с сохранСниСм ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π½Π΅ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΎΠΊ Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π΄ΠΎ окончания ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ, Ссли Π΅ΡΡ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΡƒ Π½Π° ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΈΠΉ ΠΏΠ΅Ρ€ΠΈΠΎΠ΄ для выполнСния пСрСстроСния. Π’ зависимости ΠΎΡ‚ вСрсии ΠšΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Database Engine пСрСстроСниС индСкса с сохранСниСм ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒΡΡ ΠΊΠ°ΠΊ возобновляСмая опСрация. ВозобновляСмоС пСрСстроСниС индСкса ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΈΠΎΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ, сохраняя Ρ…ΠΎΠ΄ выполнСния Π΄ΠΎ Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ ΠΌΠΎΠΌΠ΅Π½Ρ‚Π°. ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ возобновляСмого пСрСстроСния ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΠ·ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒ послС приостановки ΠΈΠ»ΠΈ Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ прСрывания. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Π΅Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡ‚ΠΌΠ΅Π½ΠΈΡ‚ΡŒ, Ссли Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠ΅ пСрСстроСния большС Π½Π΅ трСбуСтся.

Бинтаксис Transact-SQL см. Π² ΡΡ‚Π°Ρ‚ΡŒΠ΅ ALTER INDEX REBUILD. Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ свСдСния ΠΎΠ± опСрациях с индСксами с сохранСниСм ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ см. Π² ΡΡ‚Π°Ρ‚ΡŒΠ΅ Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ с индСксами Π² сСти.

Если пСрСстроСниС индСкса выполняСтся с сохранСниСм ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ, ΠΏΡ€ΠΈ любом ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ Π΄Π°Π½Π½Ρ‹Ρ… Π² индСксируСмых столбцах Π΄ΠΎΠ»ΠΆΠ½Π° ΠΎΠ±Π½ΠΎΠ²Π»ΡΡ‚ΡŒΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ копия индСкса. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ Π½Π΅Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΌΡƒ сниТСнию ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ для инструкций измСнСния Π΄Π°Π½Π½Ρ‹Ρ… Π²ΠΎ врСмя пСрСстроСния с сохранСниСм ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ.

ΠŸΡ€ΠΈ приостановкС опСрация возобновляСмого пСрСстроСния индСкса с сохранСниСм ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ Π²Ρ‹ΡˆΠ΅ влияниС Π½Π° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ сохраняСтся Π΄ΠΎ Ρ‚Π΅Ρ… ΠΏΠΎΡ€, ΠΏΠΎΠΊΠ° возобновляСмая опСрация Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½Π° ΠΈΠ»ΠΈ ΠΎΡ‚ΠΌΠ΅Π½Π΅Π½Π°. Если Π²Ρ‹ Π½Π΅ ΠΏΠ»Π°Π½ΠΈΡ€ΡƒΠ΅Ρ‚Π΅ Π·Π°Π²Π΅Ρ€ΡˆΠ°Ρ‚ΡŒ Π²ΠΎΠ·ΠΎΠ±Π½ΠΎΠ²Π»ΡΠ΅ΠΌΡƒΡŽ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ с индСксами, Π»ΡƒΡ‡ΡˆΠ΅ сразу ΠΎΡ‚ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π΅Π΅, Π° Π½Π΅ ΠΏΡ€ΠΈΠΎΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒ

Π’ зависимости ΠΎΡ‚ наличия рСсурсов ΠΈ шаблонов Ρ€Π°Π±ΠΎΡ‡Π΅ΠΉ Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ ΠΏΡ€ΠΈ использовании значСния Π²Ρ‹ΡˆΠ΅ стандартного MAXDOP Π² инструкции ALTER INDEX REBUILD ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠΊΡ€Π°Ρ‚ΠΈΡ‚ΡŒΡΡ Π΄Π»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ пСрСстроСния Π·Π° счСт Π±ΠΎΠ»Π΅Π΅ интСнсивной Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ ЦП.

Для индСксов columnstore пСрСстроСниС позволяСт ΡƒΡΡ‚Ρ€Π°Π½ΠΈΡ‚ΡŒ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΡŽ, ΠΏΠ΅Ρ€Π΅ΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ всС строки разностного Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π° Π² columnstore ΠΈ физичСски ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ строки, ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Π½Ρ‹Π΅ для удалСния. ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ синтаксиса см. Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹: пСрСстроСниС индСксов columnstore.

Начиная с вСрсии SQL Server 2016 (13.x);, ΠΏΠ΅Ρ€Π΅ΡΡ‚Ρ€Π°ΠΈΠ²Π°Ρ‚ΡŒ индСкс columnstore ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π½Π΅ трСбуСтся, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ инструкция REORGANIZE выполняСт Ρ‚Π΅ ΠΆΠ΅ основныС дСйствия с сохранСниСм ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ.

ИспользованиС пСрСстроСния индСкса для восстановлСния послС поврСТдСния Π΄Π°Π½Π½Ρ‹Ρ…

Π’ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΡ… вСрсиях SQL Server пСрСстроСниС нСкластСризованного индСкса rowstore ΠΈΠ½ΠΎΠ³Π΄Π° ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΠ»ΠΎΡΡŒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ нСсоотвСтствия, связанныС с ΠΏΠΎΠ²Ρ€Π΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ΠΌ Π΄Π°Π½Π½Ρ‹Ρ….

Начиная с SQL Server 2008, Ρ‚Π°ΠΊΠΈΠ΅ нСсоотвСтствия Π² нСкластСризованном индСксС ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎ-ΠΏΡ€Π΅ΠΆΠ½Π΅ΠΌΡƒ ΡƒΡΡ‚Ρ€Π°Π½ΡΡ‚ΡŒ, пСрСстраивая нСкластСризованный индСкс Π² Π°Π²Ρ‚ΠΎΠ½ΠΎΠΌΠ½ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅. Но Π²Ρ‹ Π½Π΅ смоТСтС ΡƒΡΡ‚Ρ€Π°Π½ΠΈΡ‚ΡŒ нСсоотвСтствия Π² нСкластСризованном индСксС, пСрСстроив индСкс с сохранСниСм ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ этот ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ пСрСстроСния ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ нСкластСризованный индСкс Π² качСствС основы для пСрСстроСния, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ всС эти нСсоотвСтствия сохранятся. ΠŸΠ΅Ρ€Π΅ΡΡ‚Ρ€ΠΎΠ΅Π½ΠΈΠ΅ индСкса Π² Π°Π²Ρ‚ΠΎΠ½ΠΎΠΌΠ½ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅ ΠΈΠ½ΠΎΠ³Π΄Π° ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ½ΡƒΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΡƒΡŽ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ кластСризованного индСкса (ΠΈΠ»ΠΈ ΠΊΡƒΡ‡ΠΈ), ΠΏΡ€ΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π΄Π°Π½Π½Ρ‹Π΅ с нСсоотвСтствиями Π² нСкластСризованном индСксС Π±ΡƒΠ΄ΡƒΡ‚ Π·Π°ΠΌΠ΅Π½Π΅Π½Ρ‹ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹ΠΌΠΈ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΈΠ· кластСризованного индСкса ΠΈΠ»ΠΈ ΠΊΡƒΡ‡ΠΈ.

Π§Ρ‚ΠΎΠ±Ρ‹ Π² качСствС источника Π΄Π°Π½Π½Ρ‹Ρ… примСнялся ΠΈΠΌΠ΅Π½Π½ΠΎ кластСризованный индСкс ΠΈΠ»ΠΈ ΠΊΡƒΡ‡Π°, вмСсто пСрСстроСния нСкластСризованного индСкса ΡƒΠ΄Π°Π»ΠΈΡ‚Π΅ Π΅Π³ΠΎ ΠΈ создайтС Π·Π°Π½ΠΎΠ²ΠΎ. Как ΠΈ Π² ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΡ… вСрсиях, для устранСния нСсоотвСтствий ΠΌΡ‹ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΠ΅ΠΌ Π²ΠΎΡΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒ Π·Π°Ρ‚Ρ€ΠΎΠ½ΡƒΡ‚Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ· Ρ€Π΅Π·Π΅Ρ€Π²Π½ΠΎΠΉ ΠΊΠΎΠΏΠΈΠΈ, Π½ΠΎ ΠΈΠ½ΠΎΠ³Π΄Π° нСсоотвСтствия Π² нСкластСризованном индСксС удаСтся ΠΈΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ, пСрСстроив нСкластСризованный индСкс Π² Π°Π²Ρ‚ΠΎΠ½ΠΎΠΌΠ½ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅ ΠΈΠ»ΠΈ создав Π΅Π³ΠΎ Π·Π°Π½ΠΎΠ²ΠΎ. Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ свСдСния см. Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ DBCC CHECKDB (Transact-SQL).

АвтоматичСскоС ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ индСксами ΠΈ статистикой

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Ρ‚Π°ΠΊΠΈΠ΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ, ΠΊΠ°ΠΊ срСдство Π°Π΄Π°ΠΏΡ‚ΠΈΠ²Π½ΠΎΠΉ Π΄Π΅Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ индСксов, Ρ‡Ρ‚ΠΎΠ±Ρ‹ автоматичСски ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ Π΄Π΅Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠ΅ΠΉ индСксов ΠΈ обновлСниями статистики для ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ…. Π­Ρ‚Π° ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° автоматичСски Π²Ρ‹Π±ΠΈΡ€Π°Π΅Ρ‚, слСдуСт Π»ΠΈ ΠΏΠ΅Ρ€Π΅ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ ΠΈΠ»ΠΈ Ρ€Π΅ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ индСкс, ΡΠ²Π΅Ρ€ΡΡΡΡŒ с ΡƒΡ€ΠΎΠ²Π½Π΅ΠΌ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈ, ΠΈ обновляСт статистику Π½Π° основС Π»ΠΈΠ½Π΅ΠΉΠ½Ρ‹Ρ… ΠΏΠΎΡ€ΠΎΠ³ΠΎΠ²Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ.

Вопросы, связанныС с пСрСстроСниСм ΠΈ Ρ€Π΅ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ индСксов columnstore

АвтоматичСскоС пСрСстроСниС всСх нСкластСризованных индСксов rowstore Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ происходит Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… случаях:

Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… ситуациях автоматичСского пСрСстроСния всСх нСкластСризованных индСксов rowstore Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ Π½Π΅ происходит:

ИндСкс нСльзя Ρ€Π΅ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΠ»ΠΈ ΠΏΠ΅Ρ€Π΅ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ, Ссли файловая Π³Ρ€ΡƒΠΏΠΏΠ°, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΎΠ½ находится, Π½Π΅ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½Π° ΠΊ сСти ΠΈΠ»ΠΈ доступна Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для чтСния. Если ΡƒΠΊΠ°Π·Π°Π½ΠΎ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ΅ слово ALL, Π° ΠΎΠ΄ΠΈΠ½ ΠΈΠ»ΠΈ нСсколько индСксов Ρ€Π°Π·ΠΌΠ΅Ρ‰Π΅Π½Ρ‹ Π² Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ Π³Ρ€ΡƒΠΏΠΏΠ΅, которая находится Π² Π°Π²Ρ‚ΠΎΠ½ΠΎΠΌΠ½ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅ ΠΈΠ»ΠΈ доступна Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для чтСния, эта инструкция Π·Π°Π²Π΅Ρ€ΡˆΠ°Π΅Ρ‚ΡΡ ошибкой.

ΠŸΡ€ΠΈ пСрСстроСнии индСкса Π½Π° физичСском носитСлС Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ достаточно мСста для хранСния Π΄Π²ΡƒΡ… ΠΊΠΎΠΏΠΈΠΉ индСкса. По Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠΈ пСрСстроСния ΠšΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Database Engine удаляСт исходный индСкс.

ΠŸΠ΅Ρ€Π΅ΡΡ‚Ρ€ΠΎΠ΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ рСорганизация ΠΌΠ°Π»Ρ‹Ρ… индСксов rowstore Π½Π΅ всСгда позволяСт ΡΠ½ΠΈΠ·ΠΈΡ‚ΡŒ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ. Π”ΠΎ вСрсии SQL Server 2014 (12.x) Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠšΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ SQL Server Database Engine выдСляСт пространство с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΡΠΌΠ΅ΡˆΠ°Π½Π½Ρ‹Ρ… экстСнтов. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ страницы Π½Π΅Π±ΠΎΠ»ΡŒΡˆΠΈΡ… индСксов ΠΈΠ½ΠΎΠ³Π΄Π° хранятся Π² Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… экстСнтах, Ρ‡Ρ‚ΠΎ нСявным ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ Π΄Π΅Π»Π°Π΅Ρ‚ Ρ‚Π°ΠΊΠΈΠ΅ индСксы Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌΠΈ. Π‘ΠΌΠ΅ΡˆΠ°Π½Π½Ρ‹Π΅ экстСнты ΠΌΠΎΠ³ΡƒΡ‚ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ Π² ΠΎΠ±Ρ‰Π΅ΠΌ пользовании Ρƒ восьми ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², поэтому Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΡŽ Π² ΠΌΠ°Π»ΠΎΠΌ индСксС нСльзя ΡƒΠΌΠ΅Π½ΡŒΡˆΠΈΡ‚ΡŒ ΠΏΡƒΡ‚Π΅ΠΌ Π΅Π³ΠΎ Ρ€Π΅ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΈΠ»ΠΈ пСрСстроСния.

Вопросы, связанныС с пСрСстроСниСм индСкса columnstore

ΠŸΡ€ΠΈ пСрСстроСнии индСкса columnstore ΠšΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Database Engine считываСт всС Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ· исходного индСкса columnstore, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ разностноС Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅. Π”Π°Π½Π½Ρ‹Π΅ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΡŽΡ‚ΡΡ Π² Π½ΠΎΠ²Ρ‹Π΅ Π³Ρ€ΡƒΠΏΠΏΡ‹ строк, Π° Π³Ρ€ΡƒΠΏΠΏΡ‹ строк ΡΠΆΠΈΠΌΠ°ΡŽΡ‚ΡΡ Π² columnstore. ΠšΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Database Engine Π΄Π΅Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ columnstore, физичСски удаляя строки, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Ρ‹ ΠΊΠ°ΠΊ ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹Π΅.

Начиная с SQL Server 2019 (15.x), Π·Π°Π΄Π°Ρ‡Π° пСрСноса ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΉ дополняСтся Π·Π°Π΄Π°Ρ‡Π΅ΠΉ Ρ„ΠΎΠ½ΠΎΠ²ΠΎΠ³ΠΎ объСдинСния, которая автоматичСски сТимаСт нСбольшиС ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹Π΅ разностныС Π³Ρ€ΡƒΠΏΠΏΡ‹ строк, ΡΡƒΡ‰Π΅ΡΡ‚Π²ΠΎΠ²Π°Π²ΡˆΠΈΠ΅ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ врСмя Π² соотвСтствии с Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΌ ΠΏΠΎΡ€ΠΎΠ³ΠΎΠΌ, ΠΈΠ»ΠΈ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΠ΅Ρ‚ сТатыС Π³Ρ€ΡƒΠΏΠΏΡ‹ строк, ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π±Ρ‹Π»ΠΎ ΡƒΠ΄Π°Π»Π΅Π½ΠΎ большоС количСство строк. Π‘ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ это ΠΏΠΎΠ²Ρ‹ΡˆΠ°Π΅Ρ‚ качСство индСкса columnstore. Π‘ΠΌ. свСдСния Π² ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠžΠ±Ρ‰ΠΈΠ΅ свСдСния ΠΎΠ± индСксах columnstore.

ΠŸΠ΅Ρ€Π΅ΡΡ‚Ρ€Π°ΠΈΠ²Π°ΠΉΡ‚Π΅ ΡΠ΅ΠΊΡ†ΠΈΡŽ, Π° Π½Π΅ всю Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ

Если индСкс Π²Π΅Π»ΠΈΠΊ, Ρ‚ΠΎ пСрСстроСниС всСй Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ ΠΌΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΈ Π½Π° дискС Π΄ΠΎΠ»ΠΆΠ½ΠΎ Ρ…Π²Π°Ρ‚Π°Ρ‚ΡŒ мСста для сохранСния ΠΏΠΎΠ»Π½ΠΎΠΉ ΠΊΠΎΠΏΠΈΠΈ индСкса Π½Π° врСмя пСрСстроСния.

ΠŸΠ΅Ρ€Π΅ΡΡ‚Ρ€ΠΎΠ΅Π½ΠΈΠ΅ сСкции послС Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ ΠΈΠ»ΠΈ измСнСния Π΄Π°Π½Π½Ρ‹Ρ… Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚, Ρ‡Ρ‚ΠΎ всС Π΄Π°Π½Π½Ρ‹Π΅ Π² columnstore хранятся Π² сТатых Π³Ρ€ΡƒΠΏΠΏΠ°Ρ… строк. Когда Π² процСссС Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ Π΄Π°Π½Π½Ρ‹Π΅ Π²ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ΡΡ Π² ΡΠ΅ΠΊΡ†ΠΈΡŽ ΠΏΠ°ΠΊΠ΅Ρ‚Π°ΠΌΠΈ, Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π½Π΅ ΠΏΡ€Π΅Π²Ρ‹ΡˆΠ°Π΅Ρ‚ 102 400 строк, такая сСкция ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ Π² разностном Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ нСсколько ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹Ρ… Π³Ρ€ΡƒΠΏΠΏ строк. ΠŸΠ΅Ρ€Π΅ΡΡ‚Ρ€ΠΎΠ΅Π½ΠΈΠ΅ позволяСт ΠΏΠ΅Ρ€Π΅ΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ всС строки разностного Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π° Π² сТатыС Π³Ρ€ΡƒΠΏΠΏΡ‹ строк Π² columnstore.

Вопросы, связанныС с Ρ€Π΅ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ индСкса columnstore

ΠŸΡ€ΠΈ Ρ€Π΅ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ индСкса columnstore ΠšΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Database Engine сТимаСт ΠΊΠ°ΠΆΠ΄ΡƒΡŽ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΡƒΡŽ Π³Ρ€ΡƒΠΏΠΏΡƒ строк Π² разностном Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ Π² ΡΠΆΠ°Ρ‚ΡƒΡŽ Π³Ρ€ΡƒΠΏΠΏΡƒ строк Π² columnstore. Начиная с SQL Server 2016 (13.x); ΠΈ Π² Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΈ Π‘Π°Π·Π° Π΄Π°Π½Π½Ρ‹Ρ… SQL Azure с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ REORGANIZE Π² ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ дСйствия ΠΏΠΎ Π΄Π΅Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ:

Π§Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ ΠΎΡ†Π΅Π½ΠΈΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π΄ Π½Π°Ρ‡Π°Π»ΠΎΠΌ обслуТивания индСкса

ΠžΠ±ΡΠ»ΡƒΠΆΠΈΠ²Π°Π½ΠΈΠ΅ индСкса, для ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ примСняСтся ΠΌΠ΅Ρ‚ΠΎΠ΄ Ρ€Π΅ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΈΠ»ΠΈ пСрСстроСния, Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ ΠΌΠ½ΠΎΠ³ΠΎ рСсурсов. Π­Ρ‚ΠΎ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΌΡƒ ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½ΠΈΡŽ Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ Π½Π° ЦП, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠΉ памяти ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ Π²Π²ΠΎΠ΄Π°-Π²Ρ‹Π²ΠΎΠ΄Π° Π² Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅. ΠŸΡ€ΠΈ этом Π² зависимости ΠΎΡ‚ Ρ€Π°Π±ΠΎΡ‡Π΅ΠΉ Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΎΠ² прСдоставляСмыС обслуТиваниСм прСимущСства ΠΌΠΎΠ³ΡƒΡ‚ Π²Π°Ρ€ΡŒΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΡ‚ ΠΆΠΈΠ·Π½Π΅Π½Π½ΠΎ Π²Π°ΠΆΠ½Ρ‹Ρ… Π΄ΠΎ нСсущСствСнных.

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ Π½Π΅Π½ΡƒΠΆΠ½ΠΎΠ³ΠΎ использования рСсурсов, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π΅Π³Π°Ρ‚ΠΈΠ²Π½ΠΎ Π²Π»ΠΈΡΡ‚ΡŒ Π½Π° Ρ€Π°Π±ΠΎΡ‡ΠΈΠ΅ Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ запросов, корпорация ΠœΠ°ΠΉΠΊΡ€ΠΎΡΠΎΡ„Ρ‚ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΠ΅Ρ‚ Π½Π΅ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ обслуТиваниС индСкса Π±Π΅Π· ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΎΡ†Π΅Π½ΠΊΠΈ. Π‘Π»Π΅Π΄ΡƒΠ΅Ρ‚ ΠΎΠΏΡ‹Ρ‚Π½Ρ‹ΠΌ ΠΏΡƒΡ‚Π΅ΠΌ ΠΎΡ†Π΅Π½ΠΈΡ‚ΡŒ ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΎΡ‚ обслуТивания индСксов для ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‡Π΅ΠΉ Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΠ΅ΠΌΡƒΡŽ ΡΡ‚Ρ€Π°Ρ‚Π΅Π³ΠΈΡŽ, ΠΈ ΡΠΎΠΏΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π΅Π³ΠΎ с Π·Π°Ρ‚Ρ€Π°Ρ‚Π°ΠΌΠΈ рСсурсов ΠΈ влияниСм Π½Π° Ρ€Π°Π±ΠΎΡ‡ΡƒΡŽ Π½Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΡ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ΡΡ для достиТСния этих прСимущСств.

Π’Π΅Ρ€ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ Π·Π°ΠΌΠ΅Ρ‚Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½ΠΈΡ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΎΡ‚ Ρ€Π΅ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΈΠ»ΠΈ пСрСстроСния индСкса Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹ΡˆΠ΅, Ссли этот индСкс сильно Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ ΠΈΠ»ΠΈ ΠΈΠΌΠ΅Π΅Ρ‚ Π½ΠΈΠ·ΠΊΡƒΡŽ ΠΏΠ»ΠΎΡ‚Π½ΠΎΡΡ‚ΡŒ страниц. Но это Π½Π΅ СдинствСнныС Ρ„Π°ΠΊΡ‚ΠΎΡ€Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½ΡƒΠΆΠ½ΠΎ ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ. Π’Π°ΠΆΠ½ΡƒΡŽ Ρ€ΠΎΠ»ΡŒ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΠ³Ρ€Π°Ρ‚ΡŒ ΡˆΠ°Π±Π»ΠΎΠ½Ρ‹ запросов (ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΉ ΠΈΠ»ΠΈ Π°Π½Π°Π»ΠΈΡ‚ΠΈΠΊΠ° ΠΈ ΠΎΡ‚Ρ‡Π΅Ρ‚Π½ΠΎΡΡ‚ΡŒ), ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ подсистСмы хранСния, доступный объСм памяти ΠΈ постСпСнноС Ρ€Π°Π·Π²ΠΈΡ‚ΠΈΠ΅ ядра Π‘Π£Π‘Π”.

РСшСния ΠΏΠΎ ΠΎΠ±ΡΠ»ΡƒΠΆΠΈΠ²Π°Π½ΠΈΡŽ индСкса слСдуСт ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ послС ΠΎΡ†Π΅Π½ΠΊΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΎΠ² Π² контСкстС ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‡Π΅ΠΉ Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ, Π² Ρ‚ΠΎΠΌ числС Π·Π°Ρ‚Ρ€Π°Ρ‚ рСсурсов Π½Π° обслуТиваниС. НСльзя ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°Ρ‚ΡŒ ΠΊΡ€ΠΈΡ‚Π΅Ρ€ΠΈΠΈ Π²Ρ‹Π±ΠΎΡ€Π° фиксированными Ρ†Π΅Π»Π΅Π²Ρ‹ΠΌΠΈ значСниями Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ ΠΈΠ»ΠΈ плотности страниц.

ΠŸΠΎΠ»ΠΎΠΆΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠΎΠ±ΠΎΡ‡Π½Ρ‹ΠΉ эффСкт ΠΎΡ‚ пСрСстроСния индСкса

ΠšΠ»ΠΈΠ΅Π½Ρ‚Ρ‹ часто Π½Π°Π±Π»ΡŽΠ΄Π°ΡŽΡ‚ ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΡ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ послС пСрСстроСния индСксов. Но Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ… случаях эти ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΡ Π½Π΅ связаны со сниТСниСм Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ ΠΈΠ»ΠΈ ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½ΠΈΠ΅ΠΌ плотности страниц.

ΠšΠ»ΠΈΠ΅Π½Ρ‚Ρ‹ часто Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ ΠΏΠΎΠ»Π°Π³Π°ΡŽΡ‚, Ρ‡Ρ‚ΠΎ это ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΠ΅ связано с пСрСстроСниСм индСкса, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ снизило Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΡŽ ΠΈ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ»ΠΎ ΠΏΠ»ΠΎΡ‚Π½ΠΎΡΡ‚ΡŒ страниц. Но Π½Π° ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅ Ρ‚Π°ΠΊΠΈΠ΅ ΠΆΠ΅ прСимущСства часто Π΄ΠΎΡΡ‚ΠΈΠ³Π°ΡŽΡ‚ΡΡ ΠΈ ΠΌΠ΅Π½Π΅Π΅ Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΊ рСсурсам ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠ΅ΠΉ обновлСния статистики вмСсто пСрСстроСния индСксов.

Π—Π°Ρ‚Ρ€Π°Ρ‚Ρ‹ рСсурсов Π½Π° ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ статистики Π½Π΅Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с Π·Π°Ρ‚Ρ€Π°Ρ‚Π°ΠΌΠΈ Π½Π° пСрСстроСниС индСкса. Π­Ρ‚Π° опСрация часто Π·Π°Π²Π΅Ρ€ΡˆΠ°Π΅Ρ‚ΡΡ Π·Π° нСсколько ΠΌΠΈΠ½ΡƒΡ‚, Ρ‚ΠΎΠ³Π΄Π° ΠΊΠ°ΠΊ для пСрСстроСния индСкса ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Ρ‚ΡŒΡΡ нСсколько часов.

БтратСгия обслуТивания индСкса

ΠšΠΎΡ€ΠΏΠΎΡ€Π°Ρ†ΠΈΡ ΠœΠ°ΠΉΠΊΡ€ΠΎΡΠΎΡ„Ρ‚ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΠ΅Ρ‚ всСм ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°ΠΌ ΠΈΠ·ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ ΡΡ‚Ρ€Π°Ρ‚Π΅Π³ΠΈΡŽ обслуТивания индСксов:

ΠžΠ±ΡΠ»ΡƒΠΆΠΈΠ²Π°Π½ΠΈΠ΅ индСксов Π² Π‘Π°Π·Π° Π΄Π°Π½Π½Ρ‹Ρ… SQL Azure ΠΈ УправляСмый экзСмпляр SQL Azure

Помимо описанных Π²Ρ‹ΡˆΠ΅ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°Ρ†ΠΈΠΉ ΠΈ стратСгий, Π² Π‘Π°Π·Π° Π΄Π°Π½Π½Ρ‹Ρ… SQL Azure ΠΈ УправляСмый экзСмпляр SQL Azure особСнно Π²Π°ΠΆΠ½ΠΎ ΡΡ€Π°Π²Π½ΠΈΡ‚ΡŒ Π·Π°Ρ‚Ρ€Π°Ρ‚Ρ‹ ΠΈ прСимущСства обслуТивания индСкса. ΠšΠ»ΠΈΠ΅Π½Ρ‚Π°ΠΌ слСдуСт Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Π΅Π³ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Ρ‚ΠΎΠΌ случаС, Ссли такая ΠΏΠΎΡ‚Ρ€Π΅Π±Π½ΠΎΡΡ‚ΡŒ подтвСрТдаСтся Ρ„Π°ΠΊΡ‚Π°ΠΌΠΈ, ΠΈ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ с ΡƒΡ‡Π΅Ρ‚ΠΎΠΌ ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Ρ… Π½ΠΈΠΆΠ΅ Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΎΠ².

Π•ΡΡ‚ΡŒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ (хотя ΠΈ довольно Ρ€Π΅Π΄ΠΊΠΈΠ΅) сцСнарии, ΠΊΠΎΠ³Π΄Π° Π² Π‘Π°Π·Π° Π΄Π°Π½Π½Ρ‹Ρ… SQL Azure ΠΈ УправляСмый экзСмпляр SQL Azure Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ трСбуСтся ΠΎΠ΄Π½ΠΎΠΊΡ€Π°Ρ‚Π½ΠΎΠ΅ ΠΈΠ»ΠΈ пСриодичСскоС обслуТиваниС индСкса.

Если Π²Ρ‹ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΠ»ΠΈ, Ρ‡Ρ‚ΠΎ для ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹Ρ… Ρ€Π°Π±ΠΎΡ‡ΠΈΡ… Π½Π°Π³Ρ€ΡƒΠ·ΠΎΠΊ Π‘Π°Π·Π° Π΄Π°Π½Π½Ρ‹Ρ… SQL Azure ΠΈ УправляСмый экзСмпляр SQL Azure трСбуСтся обслуТиваниС индСксов, ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚Π΅ Ρ€Π΅ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΡŽ индСксов ΠΈΠ»ΠΈ пСрСстроСниС индСкса с сохранСниСм ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ. Π­Ρ‚ΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ запросам Ρ€Π°Π±ΠΎΡ‡Π΅ΠΉ Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π²ΠΎ врСмя пСрСстроСния индСксов.

ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π² возобновляСмом Ρ€Π΅ΠΆΠΈΠΌΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ Π½Π΅ Π½Π°Ρ‡ΠΈΠ½Π°Ρ‚ΡŒ всю Ρ€Π°Π±ΠΎΡ‚Ρƒ Π·Π°Π½ΠΎΠ²ΠΎ, Ссли ΠΎΠ½Π° Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€Π΅Ρ€Π²Π°Π½Π° ΠΏΠ»Π°Π½ΠΎΠ²ΠΎΠΉ ΠΈΠ»ΠΈ Π°Π²Π°Ρ€ΠΈΠΉΠ½ΠΎΠΉ ΠΎΡ‚Ρ€Π°Π±ΠΎΡ‚ΠΊΠΎΠΉ ΠΎΡ‚ΠΊΠ°Π·Π° Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…. ИспользованиС возобновляСмых ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ с индСксами особСнно Π²Π°ΠΆΠ½ΠΎ, Ссли индСксы большиС.

ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ с индСксами Π² Π°Π²Ρ‚ΠΎΠ½ΠΎΠΌΠ½ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ быстрСС, Ρ‡Π΅ΠΌ с сохранСниСм ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ. Π˜Ρ… слСдуСт ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ, Ссли Π² ΠΏΠ΅Ρ€ΠΈΠΎΠ΄ выполнСния ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π½Π΅ потрСбуСтся Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ запросы ΠΊ Ρ‚Π°Π±Π»ΠΈΡ†Π°ΠΌ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ послС Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ… Π² ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΡ‡Π½Ρ‹Π΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π² Ρ€Π°ΠΌΠΊΠ°Ρ… ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ процСсса извлСчСния, прСобразования ΠΈ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ.

ΠžΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΡ

ΠŸΠ΅Ρ€Π΅ΡΡ‚Ρ€ΠΎΠ΅Π½ΠΈΠ΅ индСксов rowstore с Π±ΠΎΠ»Π΅Π΅ Ρ‡Π΅ΠΌ 128 экстСнтами осущСствляСтся Π² Π΄Π²Π° этапа β€” это логичСскоС ΠΈ физичСскоС пСрСстроСниС. На этапС логичСского пСрСстроСния ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ Π΅Π΄ΠΈΠ½ΠΈΡ†Ρ‹ распрСдСлСния, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ индСксом, ΠΏΠΎΠΌΠ΅Ρ‡Π°ΡŽΡ‚ΡΡ для освобоТдСния, строки Π΄Π°Π½Π½Ρ‹Ρ… ΠΊΠΎΠΏΠΈΡ€ΡƒΡŽΡ‚ΡΡ ΠΈ ΡΠΎΡ€Ρ‚ΠΈΡ€ΡƒΡŽΡ‚ΡΡ, Π° Π·Π°Ρ‚Π΅ΠΌ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°ΡŽΡ‚ΡΡ Π² Π½ΠΎΠ²Ρ‹Π΅ Π΅Π΄ΠΈΠ½ΠΈΡ†Ρ‹ распрСдСлСния, созданныС для хранСния пСрСстроСнного индСкса. На этапС физичСского пСрСстроСния Π΅Π΄ΠΈΠ½ΠΈΡ†Ρ‹ распрСдСлСния, Ρ€Π°Π½Π΅Π΅ ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Π½Ρ‹Π΅ для освобоТдСния, физичСски ΡƒΠ΄Π°Π»ΡΡŽΡ‚ΡΡ посрСдством выполняСмых Π² Ρ„ΠΎΠ½ΠΎΠ²ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅ ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΈΡ… Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΉ, ΠΈ многочислСнныС Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠΈ для этого Π½Π΅ Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ΡΡ. Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ свСдСния ΠΎΠ± Π΅Π΄ΠΈΠ½ΠΈΡ†Π°Ρ… размСщСния см. Π² ΡΡ‚Π°Ρ‚ΡŒΠ΅ Руководство ΠΏΠΎ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π΅ страниц ΠΈ экстСнтов.

ИндСкс нСльзя Ρ€Π΅ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ, Ссли для ALLOW_PAGE_LOCKS Π·Π°Π΄Π°Π½ΠΎ состояниС OFF.

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΈ пСрСстройка Π½Π΅Π²Ρ‹Ρ€ΠΎΠ²Π½Π΅Π½Π½Ρ‹Ρ… индСксов для Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹, количСство сСкций Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΏΡ€Π΅Π²Ρ‹ΡˆΠ°Π΅Ρ‚ 1000, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹, Π½ΠΎ Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ сниТСнию ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΈΠ»ΠΈ Ρ‡Ρ€Π΅Π·ΠΌΠ΅Ρ€Π½ΠΎΠΌΡƒ ΠΏΠΎΡ‚Ρ€Π΅Π±Π»Π΅Π½ΠΈΡŽ памяти Π²ΠΎ врСмя Ρ‚Π°ΠΊΠΈΡ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ. Если количСство сСкций ΠΏΡ€Π΅Π²Ρ‹ΡˆΠ°Π΅Ρ‚ 1000, рСкомСндуСтся ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²Ρ‹Ρ€ΠΎΠ²Π½Π΅Π½Π½Ρ‹Π΅ индСксы.

ΠžΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΡ статистики

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ ΠΈ плотности страниц для индСкса rowstore с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Transact-SQL

ΠŸΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π°Ρ инструкция Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠΉ Π½Π°Π±ΠΎΡ€, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½ΠΈΠΆΠ΅.

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ индСкса columnstore с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Transact-SQL

Π’ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌ Π½ΠΈΠΆΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ опрСдСляСтся срСдняя фрагмСнтация для всСх индСксов columnstore со сТатыми Π³Ρ€ΡƒΠΏΠΏΠ°ΠΌΠΈ строк Π² Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ….

ΠŸΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π°Ρ инструкция Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠΉ Π½Π°Π±ΠΎΡ€, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½ΠΈΠΆΠ΅.

ΠžΠ±ΡΠ»ΡƒΠΆΠΈΠ²Π°Π½ΠΈΠ΅ индСксов с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ SQL Server Management Studio

РСорганизация ΠΈΠ»ΠΈ пСрСстроСниС индСкса

РСорганизация всСх индСксов Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅

ΠžΠ±ΡΠ»ΡƒΠΆΠΈΠ²Π°Π½ΠΈΠ΅ индСксов с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Transact-SQL

Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ использования Transact-SQL для пСрСстроСния ΠΈΠ»ΠΈ Ρ€Π΅ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ индСксов см. Π² Ρ€Π°Π·Π΄Π΅Π»Π°Ρ… ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹: индСксы rowstore ΠΈ ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹: индСксы columnstore.

РСорганизация индСкса

РСорганизация всСх индСксов Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅

ΠŸΠ΅Ρ€Π΅ΡΡ‚Ρ€ΠΎΠ΅Π½ΠΈΠ΅ индСкса

ΠŸΠ΅Ρ€Π΅ΡΡ‚Ρ€ΠΎΠ΅Π½ΠΈΠ΅ всСх индСксов Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅

ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Ρ‹Π΅ свСдСния см. Π² ΡΡ‚Π°Ρ‚ΡŒΠ΅ ALTER INDEX (Transact-SQL).

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π’Π°Ρˆ адрСс email Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½. ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ поля ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Ρ‹ *