Π‘ΡΠΎΡΠΌΠΈΡΠ°Π½ΠΎ Π΅ ΠΊΠΎΡΠΈΠ³ΠΈΡΠ°ΡΠΎ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅ Π½Π° Π‘Π£ΠΠ PostgreSQL 14.4, Π² ΠΊΠΎΠ΅ΡΠΎ Π΅ ΠΎΡΡΡΡΠ°Π½Π΅Π½ ΡΠ΅ΡΠΈΠΎΠ·Π΅Π½ ΠΏΡΠΎΠ±Π»Π΅ΠΌ, ΠΏΡΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈ ΠΎΠ±ΡΡΠΎΡΡΠ΅Π»ΡΡΠ²Π° Π²ΠΎΠ΄Π΅Ρ Π΄ΠΎ Π½Π΅Π·Π°Π±Π΅Π»Π΅ΠΆΠΈΠΌΠΎ ΠΏΠΎΠ²ΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ Π½Π° Π΄Π°Π½Π½ΠΈ Π² ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠ΅ ΠΏΡΠΈ ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄ΠΈΡΠ΅ Β«CREATE INDEX CONCURRENTLYΒ» ΠΈ Β«REINDEX CONCURRENTLYΒ». Π ΡΡΠ·Π΄Π°Π΄Π΅Π½ΠΈΡΠ΅ Ρ ΠΏΠΎΡΠΎΡΠ΅Π½ΠΈΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠΈ ΠΌΠΎΠΆΠ΅ Π΄Π° Π½Π΅ ΡΠ° ΠΎΡΡΠ΅ΡΠ΅Π½ΠΈ Π½ΡΠΊΠΎΠΈ Π·Π°ΠΏΠΈΡΠΈ, ΠΊΠΎΠ΅ΡΠΎ ΡΠ΅ Π΄ΠΎΠ²Π΅Π΄Π΅ Π΄ΠΎ ΠΏΡΠΎΠΏΡΡΠΊΠ°Π½Π΅ Π½Π° ΠΎΡΠ΄Π΅Π»Π½ΠΈ ΡΠ΅Π΄ΠΎΠ²Π΅ ΠΏΡΠΈ ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ Π½Π° SELECT Π·Π°ΠΏΠΈΡΠ²Π°Π½ΠΈΡ, ΡΠ²ΡΡΠ·Π°Π½ΠΈ Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ½ΠΈΡΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠΈ.
ΠΠ° Π΄Π° ΡΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈ ΡΠ°ΠΊΡΡΡ Π·Π° ΠΏΠΎΠ²ΡΠ΅ΠΆΠ΄Π°Π½Π΅ Π½Π° B-tree ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠ΅, ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°ΡΠ° Β«pg_amcheck βheapallindexed ΠΈΠΌΠ΅_ΠΠΒ». Π ΡΠ»ΡΡΠ°ΠΉ Π½Π° ΡΡΡΠ°Π½ΠΎΠ²ΡΠ²Π°Π½Π΅ Π½Π° Π³ΡΠ΅ΡΠΊΠΈ ΠΈΠ»ΠΈ ΠΏΡΠΈΠ»Π°Π³Π°Π½Π΅ Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄ΠΈΡΠ΅ Β«CREATE INDEX CONCURRENTLYΒ» ΠΈ Β«REINDEX CONCURRENTLYΒ» Π² ΠΏΠΎ-ΡΠ°Π½Π½ΠΈ Π²Π΅ΡΡΠΈΠΈ Ρ Π΄ΡΡΠ³ΠΈ ΡΠΈΠΏΠΎΠ²Π΅ ΠΈΠ½Π΄Π΅ΠΊΡΠΈ (GiST, GIN ΠΈ Ρ.Π½.) ΡΠ»Π΅Π΄ Π°ΠΊΡΡΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½Π΅ Π΄ΠΎ Π²Π΅ΡΡΠΈΡ 14.4, ΡΠ΅ ΠΏΡΠ΅ΠΏΠΎΡΡΡΠ²Π° Π΄Π° ΡΠ΅ ΠΈΠ·Π²ΡΡΡΠΈ ΠΏΠΎΠ²ΡΠΎΡΠ½Π° ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠ°ΡΠΈΡ Ρ ΠΏΠΎΠΌΠΎΡΡΠ° Π½Π° ΡΡΠΈΠ»ΠΈΡΠ°ΡΠ° Β«reindexdb βallΒ» ΠΈΠ»ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π° Β«REINDEX CONCURRENTLY ΠΈΠΌΠ΅_ΠΈΠ½Π΄Π΅ΠΊΡΠ°Β».
ΠΡΠΎΠ±Π»Π΅ΠΌΡΡ Π·Π°ΡΡΠ³Π° ΡΠ°ΠΌΠΎ ΠΊΠ»ΠΎΠ½ 14.x, Π² ΠΊΠΎΠΉΡΠΎ ΡΠ° Π±ΠΈΠ»ΠΈ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ, ΠΈΠ·ΠΊΠ»ΡΡΠ²Π°ΡΠΈ Π½ΡΠΊΠΎΠΈ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ, ΡΠ²ΡΡΠ·Π°Π½ΠΈ Ρ ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ΡΠΎ Π½Π° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡΡΠ° VACUUM ΠΏΡΠΈ ΠΈΠ·Π²ΡΡΡΠ²Π°Π½Π΅ Π½Π° Β«CREATE INDEX CONCURRENTLYΒ» ΠΈ Β«REINDEX CONCURRENTLYΒ». Π ΡΠ΅Π·ΡΠ»ΡΠ°Ρ Π½Π° ΠΏΡΠΈΠ»Π°Π³Π°Π½Π΅ΡΠΎ Π½Π° ΡΠ΅Π·ΠΈ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ Π² ΡΡΠ·Π΄Π°Π΄Π΅Π½ΠΈΡΠ΅ Π² ΡΠ΅ΠΆΠΈΠΌ Β«CONCURRENTLYΒ» ΠΈΠ½Π΄Π΅ΠΊΡΠΈ Π½Π΅ ΡΠ° ΠΏΠΎΠΏΠ°Π΄Π½Π°Π»ΠΈ Π½ΡΠΊΠΎΠΈ ΠΊΠΎΡΡΠ΅ΠΆΠΈ, Π½Π°ΠΌΠΈΡΠ°ΡΠΈ ΡΠ΅ Π² heap ΠΏΠ°ΠΌΠ΅ΡΡΠ°, ΠΊΠΎΠΈΡΠΎ ΡΠ° Π±ΠΈΠ»ΠΈ Π°ΠΊΡΡΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΈ ΠΈΠ»ΠΈ ΠΏΡΠ΅ΠΌΠ°Ρ
Π½Π°ΡΠΈ ΠΏΠΎ Π²ΡΠ΅ΠΌΠ΅ Π½Π° ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ΡΠΎ Π½Π° ΠΈΠ½Π΄Π΅ΠΊΡΠ°.
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: opennet.ru
