Π›ΡŽΠ±Π°Ρ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰Π°Ρ Π±Π°Π·Π° Π΄Π°Π½Π½Ρ‹Ρ… Ρ€Π°Π½ΠΎ ΠΈΠ»ΠΈ ΠΏΠΎΠ·Π΄Π½ΠΎ сталкиваСтся с Π·Π°ΠΌΠ΅Π΄Π»Π΅Π½ΠΈΠ΅ΠΌ выполнСния запросов, ΠΈ систСма управлСния Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½Ρ‹Ρ… (Π‘Π£Π‘Π”) 1Π‘:ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΠ΅ Π½Π΅ являСтся ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ. Когда объСм Ρ‚Π°Π±Π»ΠΈΡ† достигаСт сотСн тысяч ΠΈΠ»ΠΈ ΠΌΠΈΠ»Π»ΠΈΠΎΠ½ΠΎΠ² записСй, ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΉ ΠΏΠ΅Ρ€Π΅Π±ΠΎΡ€ строк становится критичСски Π΄ΠΎΠ»Π³ΠΈΠΌ, блокируя Ρ€Π°Π±ΠΎΡ‚Ρƒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ. ИмСнно Π² этот ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π½Π° ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ ΠΏΠ»Π°Π½ Π²Ρ‹Ρ…ΠΎΠ΄ΠΈΡ‚ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ индСксации, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ становится Ρ„ΡƒΠ½Π΄Π°ΠΌΠ΅Π½Ρ‚ΠΎΠΌ для быстрого поиска ΠΈ Π²Ρ‹Π±ΠΎΡ€ΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ….

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

Основная Ρ†Π΅Π»ΡŒ ускорСния Π²Ρ‹Π±ΠΎΡ€ΠΎΠΊ Π΄Π°Π½Π½Ρ‹Ρ…

Главная Π·Π°Π΄Π°Ρ‡Π° индСксации Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² ΠΊΠ°Ρ€Π΄ΠΈΠ½Π°Π»ΡŒΠ½ΠΎΠΌ сокращСнии Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ выполнСния SQL-запросов, Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌΡ‹Ρ… ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠΎΠΉ. Когда ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅Ρ‚ слоТный ΠΎΡ‚Ρ‡Π΅Ρ‚ ΠΈΠ»ΠΈ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ со списком Ρ‚ΠΎΠ²Π°Ρ€ΠΎΠ², ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° Ρ„ΠΎΡ€ΠΌΠΈΡ€ΡƒΠ΅Ρ‚ запрос ΠΊ Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ…. Если ΠΏΠΎ полям, ΡƒΡ‡Π°ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΌ Π² условиях ΠΎΡ‚Π±ΠΎΡ€Π° (WHERE) ΠΈΠ»ΠΈ соСдинСниях (JOIN), Π½Π΅Ρ‚ индСксов, сСрвСр Π²Ρ‹Π½ΡƒΠΆΠ΄Π΅Π½ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Ρ‚Π°ΠΊ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΠΎΠ΅ ΠΏΠΎΠ»Π½ΠΎΠ΅ сканированиС Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ (Table Scan).

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

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

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Π˜Π½Π΄Π΅ΠΊΡΠ°Ρ†ΠΈΡ Π½Π΅ являСтся ΠΏΠ°Π½Π°Ρ†Π΅Π΅ΠΉ ΠΎΡ‚ всСх ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ с ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒΡŽ. Π˜Π·Π±Ρ‹Ρ‚ΠΎΡ‡Π½ΠΎΠ΅ количСство индСксов ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°ΠΌΠ΅Π΄Π»ΠΈΡ‚ΡŒ запись Π΄Π°Π½Π½Ρ‹Ρ…, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Π‘Π£Π‘Π” придСтся ΠΎΠ±Π½ΠΎΠ²Π»ΡΡ‚ΡŒ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ саму Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ, Π½ΠΎ ΠΈ всС связанныС с Π½Π΅ΠΉ индСксы ΠΏΡ€ΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ.

πŸ’‘

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ "ΠœΠΎΠ½ΠΈΡ‚ΠΎΡ€ запросов" Π² консоли администратора 1Π‘, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Ρ‹ΡΠ²ΠΈΡ‚ΡŒ самыС тяТСлыС запросы, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ дольшС всСго. ИмСнно ΠΏΠΎΠ΄ Π½ΠΈΡ… Π² ΠΏΠ΅Ρ€Π²ΡƒΡŽ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ Π½ΡƒΠΆΠ½ΠΎ ΠΏΠΎΠ΄Π±ΠΈΡ€Π°Ρ‚ΡŒ индСксы.

Различия ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΏΠΎΠ»Π½Ρ‹ΠΌΠΈ ΠΈ быстрыми индСксами

Π’ экосистСмС 1Π‘:ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΠ΅ 8 Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΈΠΌΠ΅ΡŽΡ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ Ρ‚ΠΈΠΏΠΎΠΌ создаваСмых индСксов нСпосрСдствСнно Π² ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ‚ΠΎΡ€Π΅. ΠŸΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅Ρ‚ Π΄Π²Π° основных Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π°: ΠΏΠΎΠ»Π½Ρ‹Π΅ индСксы ΠΈ быстрыС индСксы. Π’Ρ‹Π±ΠΎΡ€ ΠΌΠ΅ΠΆΠ΄Ρƒ Π½ΠΈΠΌΠΈ зависит ΠΎΡ‚ спСцифики Ρ…Ρ€Π°Π½ΠΈΠΌΡ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠΉ ΠΊ цСлостности ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ.

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

БыстрыС индСксы Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ ΠΈΠ½Π°Ρ‡Π΅. Они Π½Π΅ хранят сами значСния ΠΏΠΎΠ»Π΅ΠΉ, Π° лишь хранят ссылки Π½Π° записи Π² основной Ρ‚Π°Π±Π»ΠΈΡ†Π΅, упорядочСнныС ΠΏΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ поля. Π­Ρ‚ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚ ΠΈΡ… Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΊΠΎΠΌΠΏΠ°ΠΊΡ‚Π½Π΅Π΅ ΠΈ быстрСС ΠΏΡ€ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΈ. Однако Ρƒ Π½ΠΈΡ… Π΅ΡΡ‚ΡŒ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅: ΠΎΠ½ΠΈ эффСктивны Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для поиска ΠΏΠΎ ΠΏΠΎΠ»Π½ΠΎΠΌΡƒ совпадСнию значСния ΠΈΠ»ΠΈ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π°, Π½ΠΎ Π½Π΅ подходят для Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ² тСкстового поиска.

Π₯арактСристика ΠŸΠΎΠ»Π½Ρ‹ΠΉ индСкс Быстрый индСкс
Π₯Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Ρ… ЗначСния ΠΏΠΎΠ»Π΅ΠΉ + ссылки Волько ссылки Π½Π° записи
Π‘ΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ записи НиТС (тяТСлСС ΠΎΠ±Π½ΠΎΠ²Π»ΡΡ‚ΡŒ) Π’Ρ‹ΡˆΠ΅ (Π»Π΅Π³Ρ‡Π΅ ΠΎΠ±Π½ΠΎΠ²Π»ΡΡ‚ΡŒ)
Π—Π°Π½ΠΈΠΌΠ°Π΅ΠΌΠΎΠ΅ мСсто Π‘ΠΎΠ»ΡŒΡˆΠ΅ МСньшС
ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Π”Π° НСт (ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹)
πŸ“Š Какой Ρ‚ΠΈΠΏ индСксов Π²Ρ‹ Ρ‡Π°Ρ‰Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ Π² своих конфигурациях?
Волько ΠΏΠΎΠ»Π½Ρ‹Π΅ индСксы
Волько быстрыС индСксы
ΠšΠΎΠΌΠ±ΠΈΠ½ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄
НС знаю, стоит ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ

ВлияниС индСксации Π½Π° ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ записи ΠΈ обновлСния

МногиС Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΠ΅ администраторы Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ… Π·Π°Π±Ρ‹Π²Π°ΡŽΡ‚ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ускорСниС чтСния ΠΈΠΌΠ΅Π΅Ρ‚ свою Ρ†Π΅Π½Ρƒ. КаТдоС Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅, ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ записи Π² основной Ρ‚Π°Π±Π»ΠΈΡ†Π΅ Π²Π»Π΅Ρ‡Π΅Ρ‚ Π·Π° собой Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ Π°ΠΊΡ‚ΡƒΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ всСх связанных индСксов. Если Ρƒ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π΅ΡΡ‚ΡŒ 10 индСксов, Ρ‚ΠΎ ΠΏΡ€ΠΈ Π²Π²ΠΎΠ΄Π΅ ΠΎΠ΄Π½ΠΎΠΉ строки Π‘Π£Π‘Π” фактичСски выполняСт 11 ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ записи.

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

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

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

АвтоматичСскоС созданиС индСксов ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠΎΠΉ 1Π‘

Π‘ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ вСрсии ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ 1Π‘:ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΠ΅ 8.3 ΠΎΠ±Π»Π°Π΄Π°ΡŽΡ‚ ΠΈΠ½Ρ‚Π΅Π»Π»Π΅ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ°ΠΌΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ‹Ρ‚Π°ΡŽΡ‚ΡΡ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ с Π΄Π°Π½Π½Ρ‹ΠΌΠΈ. ΠŸΡ€ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΈ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ ΠΈΠ»ΠΈ Π² Ρ„ΠΎΠ½ΠΎΠ²ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅ систСма ΠΌΠΎΠΆΠ΅Ρ‚ Π°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ статистику использования запросов ΠΈ ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Ρ‚ΡŒ созданиС Π½Π΅Π΄ΠΎΡΡ‚Π°ΡŽΡ‰ΠΈΡ… индСксов.

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

Для Ρ‚Π°Π±Π»ΠΈΡ† ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… рСгистров ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° автоматичСски создаСт индСксы ΠΏΠΎ всСм измСрСниям, входящим Π² состав ΠΏΠ΅Ρ€Π²ΠΈΡ‡Π½ΠΎΠ³ΠΎ ΠΊΠ»ΡŽΡ‡Π°. Но Ссли Π²Ρ‹ часто Π΄Π΅Π»Π°Π΅Ρ‚Π΅ Π²Ρ‹Π±ΠΎΡ€ΠΊΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΌΡƒ ΠΈΠ»ΠΈ Ρ‚Ρ€Π΅Ρ‚ΡŒΠ΅ΠΌΡƒ ΠΈΠ·ΠΌΠ΅Ρ€Π΅Π½ΠΈΡŽ, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π½Π΅ являСтся Π²Π΅Π΄ΡƒΡ‰ΠΈΠΌ, стандартного индСкса ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ нСдостаточно для эффСктивной Ρ€Π°Π±ΠΎΡ‚Ρ‹.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ кластСризация индСкса?

ΠšΠ»Π°ΡΡ‚Π΅Ρ€ΠΈΠ·ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ индСкс опрСдСляСт физичСский порядок хранСния Π΄Π°Π½Π½Ρ‹Ρ… Π½Π° дискС. Π’ Ρ‚Π°Π±Π»ΠΈΡ†Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½ Ρ‚Π°ΠΊΠΎΠΉ индСкс. ΠžΠ±Ρ‹Ρ‡Π½ΠΎ ΠΎΠ½ создаСтся автоматичСски ΠΏΠΎ ΠΏΠ΅Ρ€Π²ΠΈΡ‡Π½ΠΎΠΌΡƒ ΠΊΠ»ΡŽΡ‡Ρƒ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹.

Диагностика ΠΈ Π°Π½Π°Π»ΠΈΠ· использования индСксов

Как ΠΏΠΎΠ½ΡΡ‚ΡŒ, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ Π»ΠΈ ваши индСксы ΠΈΠ»ΠΈ ΠΎΠ½ΠΈ просто Π·Π°Π½ΠΈΠΌΠ°ΡŽΡ‚ мСсто? Для этого ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ инструмСнты Π°Π½Π°Π»ΠΈΠ·Π° ΠΏΠ»Π°Π½ΠΎΠ² выполнСния запросов. Π’ консоли управлСния Π±Π°Π·ΠΎΠΉ Π΄Π°Π½Π½Ρ‹Ρ… (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, SQL Server Management Studio для MS SQL ΠΈΠ»ΠΈ pgAdmin для PostgreSQL) ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ, ΠΊΠ°ΠΊΠΎΠΉ ΠΏΠ»Π°Π½ Π²Ρ‹Π±Ρ€Π°Π» ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ‚ΠΎΡ€.

Если Π² ΠΏΠ»Π°Π½Π΅ выполнСния Π²Ρ‹ Π²ΠΈΠ΄ΠΈΡ‚Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ Index Scan ΠΈΠ»ΠΈ Index Seek, Π·Π½Π°Ρ‡ΠΈΡ‚, индСкс ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ. Если ΠΆΠ΅ Π²Ρ‹ Π²ΠΈΠ΄ΠΈΡ‚Π΅ Table Scan ΠΈΠ»ΠΈ Clustered Index Scan Π½Π° большой Ρ‚Π°Π±Π»ΠΈΡ†Π΅ ΠΏΡ€ΠΈ Π²Ρ‹Π±ΠΎΡ€ΠΊΠ΅ ΠΌΠ°Π»ΠΎΠ³ΠΎ количСства Π΄Π°Π½Π½Ρ‹Ρ…, это сигнал ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ индСкс отсутствуСт ΠΈΠ»ΠΈ Π½Π΅ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ ΠΏΠΎΠ΄ условия запроса.

Π’Π°ΠΊΠΆΠ΅ стоит ΠΎΠ±Ρ€Π°Ρ‰Π°Ρ‚ΡŒ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΡŽ индСксов. Π‘ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ, ΠΏΡ€ΠΈ Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠΌ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠΈ ΠΈ вставкС Π΄Π°Π½Π½Ρ‹Ρ…, структура B-Π΄Π΅Ρ€Π΅Π²Π° Ρ€Π°Π·Ρ€ΡƒΡˆΠ°Π΅Ρ‚ΡΡ, страницы Π·Π°ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ Π½Π΅ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ, ΠΈ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ чтСния ΠΏΠ°Π΄Π°Π΅Ρ‚. РСгулярная ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° пСрСстроСния (Rebuild) ΠΈΠ»ΠΈ Ρ€Π΅ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ (Reorganize) индСксов Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠ° для поддСрТания высокой ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ.

  • πŸ“Š РСгулярно провСряйтС статистику использования индСксов Ρ‡Π΅Ρ€Π΅Π· динамичСскиС прСдставлСния Π‘Π£Π‘Π”.
  • πŸ—‘οΈ УдаляйтС Π΄ΡƒΠ±Π»ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠ΅ΡΡ индСксы, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠΊΡ€Ρ‹Π²Π°ΡŽΡ‚ ΠΎΠ΄Π½ΠΈ ΠΈ Ρ‚Π΅ ΠΆΠ΅ поля Π² ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎΠΌ порядкС.
  • βš™οΈ НастраивайтС обслуТиваниС индСксов Π² Π½ΠΎΡ‡Π½ΠΎΠ΅ врСмя, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ ΠΌΠ΅ΡˆΠ°Ρ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Π΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ.
πŸ’‘

Π­Ρ„Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ индСкса опрСдСляСтся Π½Π΅ Ρ„Π°ΠΊΡ‚ΠΎΠΌ Π΅Π³ΠΎ наличия, Π° Ρ‚Π΅ΠΌ, насколько часто ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ‚ΠΎΡ€ запросов Π²Ρ‹Π±ΠΈΡ€Π°Π΅Ρ‚ Π΅Π³ΠΎ для выполнСния ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ Π²Ρ‹Π±ΠΎΡ€ΠΊΠΈ.

ΠžΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΠΈ индСксации Π² Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΌ ΠΈ ΠΊΠ»ΠΈΠ΅Π½Ρ‚-сСрвСрном Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π΅

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

Π’ ΠΊΠ»ΠΈΠ΅Π½Ρ‚-сСрвСрном Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π΅ (MS SQL, PostgreSQL, Oracle) 1Π‘ выступаСт лишь ΠΊΠ°ΠΊ ΠΊΠ»ΠΈΠ΅Π½Ρ‚, ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡŽΡ‰ΠΈΠΉ запросы. Π—Π΄Π΅ΡΡŒ вся ΠΌΠΎΡ‰ΡŒ индСксации зависит ΠΎΡ‚ настроСк ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ сСрвСра Π‘Π”. Администратор Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠΌΠ΅Π΅Ρ‚ Π³ΠΎΡ€Π°Π·Π΄ΠΎ большС Ρ€Ρ‹Ρ‡Π°Π³ΠΎΠ² влияния: ΠΌΠΎΠΆΠ΅Ρ‚ ΠΌΠ΅Π½ΡΡ‚ΡŒ ΡΡ‚Π΅ΠΏΠ΅Π½ΡŒ заполнСния страниц, ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ сТатия Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ ΠΊΡΡˆΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ.

ΠŸΡ€ΠΈ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π΅ с Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ вСрсии Π½Π° SQL-сСрвСр часто Π½Π°Π±Π»ΡŽΠ΄Π°Π΅Ρ‚ΡΡ Ρ€Π΅Π·ΠΊΠΈΠΉ прирост ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΈΠΌΠ΅Π½Π½ΠΎ Π·Π° счСт Π±ΠΎΠ»Π΅Π΅ ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½Ρ‹Ρ… Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² Ρ€Π°Π±ΠΎΡ‚Ρ‹ с индСксами Π² ΠΏΡ€ΠΎΠΌΡ‹ΡˆΠ»Π΅Π½Π½Ρ‹Ρ… Π‘Π£Π‘Π”. Однако это Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ Π³Ρ€Π°ΠΌΠΎΡ‚Π½ΠΎΠΉ ΠΏΠ΅Ρ€Π²ΠΎΠ½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠΉ настройки ΠΈ выдСлСния достаточного объСма ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΎΠΉ памяти ΠΏΠΎΠ΄ кэш Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ….

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡΡ‹ ΠΈ настройки сСрвСров Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ… (MS SQL, PostgreSQL) ΠΌΠΎΠ³ΡƒΡ‚ ΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ с Π²Ρ‹Ρ…ΠΎΠ΄ΠΎΠΌ Π½ΠΎΠ²Ρ‹Ρ… вСрсий. ВсСгда свСряйтС Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ обслуТивания индСксов Π² ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ производитСля Π‘Π£Π‘Π” ΠΏΠ΅Ρ€Π΅Π΄ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ скриптов ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ.

β˜‘οΈ Аудит индСксации Π±Π°Π·Ρ‹

Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΎ: 0 / 4

Часто Π·Π°Π΄Π°Π²Π°Π΅ΠΌΡ‹Π΅ вопросы (FAQ)

МоТно Π»ΠΈ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ индСкс прямо Π² Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰Π΅ΠΉ Π±Π°Π·Π΅ 1Π‘ Π±Π΅Π· остановки?

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

ВлияСт Π»ΠΈ индСксация Π½Π° ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ формирования ΠΎΡ‚Ρ‡Π΅Ρ‚ΠΎΠ²?

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

НуТно Π»ΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ всС поля справочников?

НСт, это ΠΈΠ·Π±Ρ‹Ρ‚ΠΎΡ‡Π½ΠΎ. Π˜Π½Π΄Π΅ΠΊΡΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ стоит Ρ‚Π΅ поля, ΠΏΠΎ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ часто производится поиск (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Артикул, Π¨Ρ‚Ρ€ΠΈΡ…ΠΊΠΎΠ΄) ΠΈΠ»ΠΈ соСдинСниС. Поля с ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ значСниями (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, GUID) ΡƒΠΆΠ΅ проиндСксированы ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΊΠ°ΠΊ ΠΏΠ΅Ρ€Π²ΠΈΡ‡Π½Ρ‹ΠΉ ΠΊΠ»ΡŽΡ‡.

Π§Ρ‚ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ, Ссли послС создания индСкса запрос стал Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΠΌΠ΅Π΄Π»Π΅Π½Π½Π΅Π΅?

Π’Π°ΠΊΠΎΠ΅ случаСтся, Ссли ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ‚ΠΎΡ€ Π‘Π£Π‘Π” Π²Ρ‹Π±Ρ€Π°Π» Π½Π΅Π²Π΅Ρ€Π½Ρ‹ΠΉ ΠΏΠ»Π°Π½ выполнСния ΠΈΠ·-Π·Π° ΡƒΡΡ‚Π°Ρ€Π΅Π²ΡˆΠ΅ΠΉ статистики. Π’ этом случаС ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ статистики распрСдСлСния Π΄Π°Π½Π½Ρ‹Ρ… Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ ΠΈΠ»ΠΈ ΠΏΡ€ΠΈΠ½ΡƒΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ ΡƒΠΊΠ°Π·Π°Π½ΠΈΠ΅ подсказок (hints) Π² тСкстС запроса, хотя послСднСС считаСтся ΠΊΡ€Π°ΠΉΠ½Π΅ΠΉ ΠΌΠ΅Ρ€ΠΎΠΉ.

Как часто Π½ΡƒΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅ΡΡ‚Ρ€Π°ΠΈΠ²Π°Ρ‚ΡŒ индСксы?

Частота зависит ΠΎΡ‚ интСнсивности измСнСния Π΄Π°Π½Π½Ρ‹Ρ…. Для высоконагруТСнных систСм рСкомСндуСтся СТСнСдСльная рСорганизация ΠΈ СТСмСсячноС ΠΏΠΎΠ»Π½ΠΎΠ΅ пСрСстроСниС. ΠšΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎ ΡƒΡ€ΠΎΠ²Π½ΡŽ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ: Ссли ΠΎΠ½ ΠΏΡ€Π΅Π²Ρ‹ΡˆΠ°Π΅Ρ‚ 30%, ΠΏΠΎΡ€Π° Π΄Π΅ΠΉΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ.