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

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

Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ Ρ€Π°Π·Π±Π΅Ρ€Π΅ΠΌ ΠΏΡ€ΠΈΡ€ΠΎΠ΄Ρƒ индСксов, ΠΈΡ… Ρ‚ΠΈΠΏΡ‹, способы управлСния ΠΈΠΌΠΈ Ρ‡Π΅Ρ€Π΅Π· ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ‚ΠΎΡ€ ΠΈ влияниС Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΎΠ² Π½Π° ΡΡ„Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ Π²Ρ‹Π±ΠΎΡ€ΠΊΠΈ. Π’Ρ‹ ΡƒΠ·Π½Π°Π΅Ρ‚Π΅, ΠΏΠΎΡ‡Π΅ΠΌΡƒ простоС Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Ρ€Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚Π° Π½Π΅ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚ ускорСниС Ρ€Π°Π±ΠΎΡ‚Ρ‹, ΠΈ ΠΊΠ°ΠΊΠΈΠ΅ скрытыС ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° для ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ доступа ΠΊ Π΄Π°Π½Π½Ρ‹ΠΌ.

Π€ΡƒΠ½Π΄Π°ΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΡ‹ Ρ€Π°Π±ΠΎΡ‚Ρ‹ индСксов Π² Π‘Π£Π‘Π”

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

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

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

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

АвтоматичСскиС индСксы ΠΈ систСмныС поля 1Π‘

ΠŸΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° 1Π‘:ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΠ΅ ΠΎΠ±Π»Π°Π΄Π°Π΅Ρ‚ ΠΌΠΎΡ‰Π½Ρ‹ΠΌ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠΎΠΌ автоматичСского индСксирования, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ избавляСт Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° ΠΎΡ‚ Ρ€ΡƒΡ‚ΠΈΠ½Π½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΈ создании Ρ‚ΠΈΠΏΠΎΠ²Ρ‹Ρ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ². ΠŸΡ€ΠΈ создании Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°, справочника ΠΈΠ»ΠΈ рСгистра систСма автоматичСски добавляСт ряд слуТСбных ΠΏΠΎΠ»Π΅ΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡ€ΡƒΡŽΡ‚ΡΡ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ. К Ρ‚Π°ΠΊΠΈΠΌ полям относятся ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ ссылки _IDRRef, Π° Ρ‚Π°ΠΊΠΆΠ΅ поля пСриодичности ΠΈ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ для Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ².

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

  • πŸ” ПолС _Marked (ΠΏΠΎΠΌΠ΅Ρ‚ΠΊΠ° удалСния) всСгда индСксируСтся для быстрого ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹Ρ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΠΈΠ· Π²Ρ‹Π±ΠΎΡ€ΠΎΠΊ.
  • πŸ“… ПолС _Period Π² рСгистрах свСдСний ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ Π²Ρ‹Π±ΠΎΡ€ΠΎΠΊ ΠΏΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌ ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π»Π°ΠΌ.
  • πŸ”— Поля ΠΈΠ·ΠΌΠ΅Ρ€Π΅Π½ΠΈΠΉ Π² рСгистрах накоплСния автоматичСски ΡƒΡ‡Π°ΡΡ‚Π²ΡƒΡŽΡ‚ Π² Π³Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²ΠΊΠ΅ Π΄Π°Π½Π½Ρ‹Ρ… для ΠΎΡ‚Ρ‡Π΅Ρ‚ΠΎΠ².

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

πŸ’‘

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

Π ΡƒΡ‡Π½ΠΎΠ΅ созданиС ΠΈ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ индСксами Π² ΠšΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ‚ΠΎΡ€Π΅

Для ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ спСцифичСских запросов Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ‚ явно ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ создания индСкса для ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ Ρ€Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚Π°. Π’ ΠΎΠΊΠ½Π΅ свойств Ρ€Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ… (справочника, Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°, рСгистра) сущСствуСт Π³Π°Π»ΠΎΡ‡ΠΊΠ° Π˜Π½Π΄Π΅ΠΊΡΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅. Активация этого Ρ„Π»Π°Π³Π° Π΄Π°Π΅Ρ‚ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅ ΡΠ³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ индСкс Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΈ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ.

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


// ΠŸΡ€ΠΈΠΌΠ΅Ρ€ нСэффСктивного использования составного индСкса

ВЫБРАВЬ

Π”ΠΎΠ³ΠΎΠ²ΠΎΡ€Ρ‹.Бсылка

Π˜Π—

Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊ.Π”ΠΎΠ³ΠΎΠ²ΠΎΡ€Ρ‹ КАК Π”ΠΎΠ³ΠΎΠ²ΠΎΡ€Ρ‹

Π“Π”Π•

Π”ΠΎΠ³ΠΎΠ²ΠΎΡ€Ρ‹.Π”Π°Ρ‚Π°Π”ΠΎΠ³ΠΎΠ²ΠΎΡ€Π° = &Π”Π°Ρ‚Π° // ИндСкс (ΠšΠΎΠ½Ρ‚Ρ€Π°Π³Π΅Π½Ρ‚, Π”Π°Ρ‚Π°) Π½Π΅ сработаСт

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

β˜‘οΈ ΠŸΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ° ΠΊ измСнСнию индСксов

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

ВлияниС полнотСкстового поиска ΠΈ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… Ρ‚Π°Π±Π»ΠΈΡ†

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

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

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΠŸΠΎΠ»Π½ΠΎΡ‚Π΅ΠΊΡΡ‚ΠΎΠ²Ρ‹ΠΉ поиск Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ рСгулярной пСрСиндСксации. Если ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ ΠΆΠ°Π»ΡƒΡŽΡ‚ΡΡ, Ρ‡Ρ‚ΠΎ Π½ΠΎΠ²Ρ‹Π΅ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Ρ‹ Π½Π΅ находятся Ρ‡Π΅Ρ€Π΅Π· поиск, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, процСсс Ρ„ΠΎΠ½ΠΎΠ²ΠΎΠΉ индСксации завис ΠΈΠ»ΠΈ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½ Π² настройках кластСра сСрвСров.

БущСствуСт Ρ‚Π°ΠΊΠΆΠ΅ понятиС ΠΏΠΎΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅Π³ΠΎ индСкса. Π­Ρ‚ΠΎ ситуация, ΠΊΠΎΠ³Π΄Π° всС поля, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ для запроса (ΠΈ Ρ‚Π΅, Ρ‡Ρ‚ΠΎ Π² условии WHERE, ΠΈ Ρ‚Π΅, Ρ‡Ρ‚ΠΎ Π² SELECT), содСрТатся Π² самом индСксС. Π’ Ρ‚Π°ΠΊΠΎΠΌ случаС Π‘Π£Π‘Π” Π²ΠΎΠΎΠ±Ρ‰Π΅ Π½Π΅ обращаСтся ΠΊ основной Ρ‚Π°Π±Π»ΠΈΡ†Π΅ Π΄Π°Π½Π½Ρ‹Ρ…, Ρ‡Ρ‚ΠΎ Π΄Π°Π΅Ρ‚ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ прирост скорости. Π“Ρ€Π°ΠΌΠΎΡ‚Π½Ρ‹ΠΉ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ стрСмится ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π²Ρ‹Π±ΠΎΡ€ΠΊΠΈ Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ΠΈ ΠΏΠΎΠΏΠ°Π΄Π°Π»ΠΈ ΠΏΠΎΠ΄ ΠΏΠΎΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠ΅ индСксы.

ΠŸΠΎΡ‡Π΅ΠΌΡƒ полнотСкстовый поиск ΠΌΠ΅Π΄Π»Π΅Π½Π½Π΅Π΅ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠ³ΠΎ?

ΠŸΠΎΠ»Π½ΠΎΡ‚Π΅ΠΊΡΡ‚ΠΎΠ²Ρ‹ΠΉ поиск Π°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ слово Π² тСкстС, Ρ€Π°Π·Π±ΠΈΡ€Π°Π΅Ρ‚ ΠΌΠΎΡ€Ρ„ΠΎΠ»ΠΎΠ³ΠΈΡŽ ΠΈ ΠΈΡ‰Π΅Ρ‚ совпадСния ΠΏΠΎ слоТным Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°ΠΌ, Ρ‚ΠΎΠ³Π΄Π° ΠΊΠ°ΠΊ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΉ индСкс просто сравниваСт Π±Π°ΠΉΡ‚Ρ‹ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΏΠΎ строгому порядку сортировки.

Диагностика ΠΈ Π°Π½Π°Π»ΠΈΠ· ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ запросов

Как ΠΏΠΎΠ½ΡΡ‚ΡŒ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π»ΠΈ индСкс Π² вашСм запросС? ΠŸΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° 1Π‘ прСдоставляСт ΠΌΠΎΡ‰Π½Ρ‹ΠΉ инструмСнт β€” тСхнологичСский ΠΆΡƒΡ€Π½Π°Π» (Π’Π–). Анализируя Π»ΠΎΠ³ΠΈ Π’Π–, ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ ΠΏΠ»Π°Π½ выполнСния запроса, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ‚ΠΎΡ€ Π‘Π£Π‘Π”. Π’ Π»ΠΎΠ³Π°Ρ… Π±ΡƒΠ΄ΡƒΡ‚ ΠΎΡ‚Ρ€Π°ΠΆΠ΅Π½Ρ‹ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Index Seek (поиск ΠΏΠΎ индСксу) ΠΈΠ»ΠΈ Table Scan (ΠΏΠΎΠ»Π½ΠΎΠ΅ сканированиС Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹).

Для Π°Π½Π°Π»ΠΈΠ·Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ встроСнныС срСдства ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ запросов Π² ΠšΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ‚ΠΎΡ€Π΅ ΠΈΠ»ΠΈ Ρ€Π΅ΠΆΠΈΠΌΠ΅ ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΡ. ΠŸΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ запроса систСма ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Π΄Π°Ρ‚ΡŒ ΠΏΡ€Π΅Π΄ΡƒΠΏΡ€Π΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Π²Ρ‹Π±ΠΎΡ€ΠΊΠ° Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ индСксы. Часто ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π° кроСтся Π² использовании Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Π½Π°Π΄ полями Π² условии ΠΎΡ‚Π±ΠΎΡ€Π°.

Π’ΠΈΠΏ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ ОписаниС ВлияниС Π½Π° ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ
Index Seek Π’ΠΎΡ‡Π΅Ρ‡Π½ΠΎΠ΅ ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ ΠΊ индСксу для поиска ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Высокая (ΠΌΠ³Π½ΠΎΠ²Π΅Π½Π½ΠΎ)
Index Scan ΠŸΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ Ρ‡Ρ‚Π΅Π½ΠΈΠ΅ всСго индСкса БрСдняя (зависит ΠΎΡ‚ Ρ€Π°Π·ΠΌΠ΅Ρ€Π°)
Table Scan ΠŸΠΎΠ»Π½Ρ‹ΠΉ ΠΏΠ΅Ρ€Π΅Π±ΠΎΡ€ всСх строк Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π±Π΅Π· использования индСкса Низкая (ΠΎΡ‡Π΅Π½ΡŒ ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎ Π½Π° Π±ΠΎΠ»ΡŒΡˆΠΈΡ… ΠΎΠ±ΡŠΠ΅ΠΌΠ°Ρ…)
Key Lookup Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ ΠΊ Ρ‚Π°Π±Π»ΠΈΡ†Π΅ для получСния Π΄Π°Π½Π½Ρ‹Ρ…, Π½Π΅ Π²ΠΎΡˆΠ΅Π΄ΡˆΠΈΡ… Π² индСкс Π‘Π½ΠΈΠΆΠ°Π΅Ρ‚ ΡΡ„Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ индСкса

Частой ошибкой являСтся использованиС конструкций Π²ΠΈΠ΄Π° Π“ΠΎΠ΄(Π”Π°Ρ‚Π°) = 2023. ΠŸΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΊ полю Π΄Π΅Π»Π°Π΅Ρ‚ Π΅Π³ΠΎ нСсортируСмым для индСкса, ΠΈ Π±Π°Π·Π° Π΄Π°Π½Π½Ρ‹Ρ… Π²Ρ‹Π½ΡƒΠΆΠ΄Π΅Π½Π° ΠΏΡ€ΠΎΡΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ для ΠΊΠ°ΠΆΠ΄ΠΎΠΉ строки Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹. ΠŸΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ β€” ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ Π΄Π°Ρ‚: Π”Π°Ρ‚Π° >= '01.01.2023' И Π”Π°Ρ‚Π° < '01.01.2026'.

πŸ“Š Какой инструмСнт Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ для Π°Π½Π°Π»ΠΈΠ·Π° ΠΌΠ΅Π΄Π»Π΅Π½Π½Ρ‹Ρ… запросов?
ВСхнологичСский ΠΆΡƒΡ€Π½Π°Π» (Π’Π–)
Консоль запросов 1Π‘
БрСдства ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³Π° Π‘Π£Π‘Π” (SQL Profiler)
НС Π°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΡƒΡŽ, просто ΠΆΠ΄Ρƒ

ΠžΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΡ составных индСксов ΠΈ порядок ΠΏΠΎΠ»Π΅ΠΉ

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ составного индСкса β€” это искусство баланса. ΠŸΠΎΡ€ΡΠ΄ΠΎΠΊ ΠΏΠΎΠ»Π΅ΠΉ Π² Ρ‚Π°ΠΊΠΎΠΌ индСксС подчиняСтся ΠΏΡ€Π°Π²ΠΈΠ»Ρƒ Π»Π΅Π²ΠΎΠ³ΠΎ прСфикса. Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ индСкс ΠΏΠΎ полям (A, B, C) ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ использован для поиска ΠΏΠΎ A, ΠΏΠΎ ΠΏΠ°Ρ€Π΅ (A, B) ΠΈΠ»ΠΈ ΠΏΠΎ Ρ‚Ρ€ΠΎΠΉΠΊΠ΅ (A, B, C). Но ΠΎΠ½ Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎ бСсполСзСн для поиска Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎ B ΠΈΠ»ΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎ C.

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

Π’Π°ΠΊΠΆΠ΅ стоит ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ ΠΊΠ°Ρ€Π΄ΠΈΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Ρ…. ИндСкс ΠΏΠΎ полю "Пол" (М/Π–) Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ с ΠΌΠΈΠ»Π»ΠΈΠΎΠ½Π°ΠΌΠΈ сотрудников Π±ΡƒΠ΄Π΅Ρ‚ практичСски бСсполСзСн, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΏΡ€ΠΈ Π²Ρ‹Π±ΠΎΡ€ΠΊΠ΅ "ΠœΡƒΠΆΡ‡ΠΈΠ½Ρ‹" систСма ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ ΠΏΠΎΠ»ΠΎΠ²ΠΈΠ½Ρƒ всСх записСй, ΠΈ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ‚ΠΎΡ€ Ρ€Π΅ΡˆΠΈΡ‚, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΡ‰Π΅ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ Ρ†Π΅Π»ΠΈΠΊΠΎΠΌ, Ρ‡Π΅ΠΌ ΠΏΡ€Ρ‹Π³Π°Ρ‚ΡŒ ΠΏΠΎ индСксу.

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: ИзмСнСниС порядка ΠΏΠΎΠ»Π΅ΠΉ Π² ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΌ составном индСксС Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ Π΅Π³ΠΎ ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ удалСния ΠΈ создания Π·Π°Π½ΠΎΠ²ΠΎ. Π’ Ρ€Π΅ΠΆΠΈΠΌΠ΅ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰Π΅ΠΉ Π±Π°Π·Ρ‹ это ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠΈ ΠΈ остановку Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ Π½Π° врСмя пСрСстройки.

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

МоТно Π»ΠΈ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ индСкс для поля Ρ‚ΠΈΠΏΠ° Π₯ранилищСЗначСния?

НСт, индСксы Π½Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ созданы для ΠΏΠΎΠ»Π΅ΠΉ Ρ‚ΠΈΠΏΠ° Π₯ранилищСЗначСния, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Π²Π½ΡƒΡ‚Ρ€ΠΈ Π½ΠΈΡ… ΠΌΠΎΠ³ΡƒΡ‚ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒΡΡ Π΄Π°Π½Π½Ρ‹Π΅ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎΠΉ структуры, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ отсортиowaΔ‡ Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹ΠΌΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌΠΈ Π‘Π£Π‘Π”. Для поиска Π²Π½ΡƒΡ‚Ρ€ΠΈ Ρ‚Π°ΠΊΠΈΡ… ΠΏΠΎΠ»Π΅ΠΉ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ полнотСкстовый поиск ΠΈΠ»ΠΈ Π²Ρ‹Π³Ρ€ΡƒΠ·ΠΊΠ° Π΄Π°Π½Π½Ρ‹Ρ… Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ рСгистры.

ΠŸΠΎΡ‡Π΅ΠΌΡƒ послС добавлСния индСкса Π±Π°Π·Π° Π΄Π°Π½Π½Ρ‹Ρ… стала Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΠΌΠ΅Π΄Π»Π΅Π½Π½Π΅Π΅?

Π­Ρ‚ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Ссли Π² вашСй систСмС ΠΏΡ€Π΅ΠΎΠ±Π»Π°Π΄Π°ΡŽΡ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ записи (Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ², ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Ρ€Π΅Π³Π»Π°ΠΌΠ΅Π½Ρ‚Π½Ρ‹Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ). ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ Π½ΠΎΠ²Ρ‹ΠΉ индСкс замСдляСт запись, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Π‘Π£Π‘Π” Π΄ΠΎΠ»ΠΆΠ½Π° ΠΎΠ±Π½ΠΎΠ²Π»ΡΡ‚ΡŒ Π΄Π΅Ρ€Π΅Π²ΠΎ индСкса ΠΏΡ€ΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ Π΄Π°Π½Π½Ρ‹Ρ…. НСобходимо ΠΏΡ€ΠΎΠ°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ баланс ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ‡Ρ‚Π΅Π½ΠΈΠ΅ΠΌ ΠΈ записью.

Как ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ Π½Π΅Π½ΡƒΠΆΠ½Ρ‹ΠΉ индСкс Π² 1Π‘?

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

ВлияСт Π»ΠΈ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Π½Ρ‹Ρ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π½Π° ΡΡ„Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ индСксов?

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

πŸ’‘

Π“Π»Π°Π²Π½Ρ‹ΠΉ сСкрСт ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ β€” Π½Π΅ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ индСксы "Π½Π° всякий случай", Π° Π°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠ»Π°Π½Ρ‹ выполнСния запросов ΠΈ Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ структуры Π΄Π°Π½Π½Ρ‹Ρ… Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎΠ΄ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹Π΅ ΠΌΠ΅Π΄Π»Π΅Π½Π½Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ.