Π˜Π·Π΄Π°Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° Π‘Π£Π‘Π” PostgreSQL 17

Π‘Π»Π΅Π΄ Π΅Π΄Π½Π° Π³ΠΎΠ΄ΠΈΠ½Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π΅ ΠΏΡƒΠ±Π»ΠΈΠΊΡƒΠ²Π°Π½Π° Π½ΠΎΠ²Π°Ρ‚Π° стабилна вСрсия Π½Π° Π‘Π£Π‘Π” PostgreSQL 17. АктуализациитС Π·Π° Π½ΠΎΠ²Π°Ρ‚Π° вСрсия Ρ‰Π΅ ΠΈΠ·Π»ΠΈΠ·Π°Ρ‚ ΠΏΡ€Π΅Π· слСдващитС ΠΏΠ΅Ρ‚ Π³ΠΎΠ΄ΠΈΠ½ΠΈ Π΄ΠΎ Π½ΠΎΠ΅ΠΌΠ²Ρ€ΠΈ 2029 Π³ΠΎΠ΄ΠΈΠ½Π°. ΠŸΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ°Ρ‚Π° Π½Π° PostgreSQL 12.x, Π½Π°ΠΉ-старата ΠΎΡ‚ ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ°Π½ΠΈΡ‚Π΅ вСрсии, Ρ‰Π΅ бъдС ΠΏΡ€Π΅ΠΊΡ€Π°Ρ‚Π΅Π½Π° Π½Π° 14 Π½ΠΎΠ΅ΠΌΠ²Ρ€ΠΈ.

Основни нововъвСдСния:

  • ΠŸΡ€ΠΈ ΠΈΠ·ΠΏΡŠΠ»Π½Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° опСрацията VACUUM (ΡΡŠΠ±ΠΈΡ€Π°Π½Π΅ Π½Π° Π±ΠΎΠΊΠ»ΡƒΠΊ, почистванС ΠΈ ΠΎΠΏΠ°ΠΊΠΎΠ²Π°Π½Π΅ Π½Π° дисковото Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅) Π΅ Π²Π½Π΅Π΄Ρ€Π΅Π½Π° Π½ΠΎΠ²Π° структура ΠΎΡ‚ Π΄Π°Π½Π½ΠΈ, която ΠΈΠ·Ρ€Π°Π·Ρ…ΠΎΠ΄Π²Π° Π΄ΠΎ 20 ΠΏΡŠΡ‚ΠΈ ΠΏΠΎ-ΠΌΠ°Π»ΠΊΠΎ ΠΏΠ°ΠΌΠ΅Ρ‚. ΠŸΡ€Π΅ΠΌΠΈΠ½Π°Π²Π°Π½Π΅Ρ‚ΠΎ към Π½ΠΎΠ²Π°Ρ‚Π° структура Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΠ»ΠΎ ускоряванС Π½Π° опСрацията VACUUM ΠΈ намаляванС Π½Π° ΠΏΠΎΡ‚Ρ€Π΅Π±Π»Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° сподСлСни рСсурси.
  • ΠŸΡ€ΠΎΠ΄ΡŠΠ»ΠΆΠ°Π²Π° оптимизацията Π½Π° производитСлността Π½Π° Π²Ρ…ΠΎΠ΄Π½ΠΎ/ΠΈΠ·Ρ…ΠΎΠ΄Π½ΠΈΡ‚Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ. Π‘Π»Π°Π³ΠΎΠ΄Π°Ρ€Π΅Π½ΠΈΠ΅ Π½Π° ΠΏΠΎΠ΄ΠΎΠ±Ρ€Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π² ΠΊΠΎΠ΄Π° Π·Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π½Π° Π»ΠΎΠ³ΠΎΠ²Π΅Ρ‚Π΅ Π½Π° ΠΎΡ‚Π»ΠΎΠΆΠ΅Π½ΠΎΡ‚ΠΎ записванС WAL, успяхмС Π΄Π° ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠΌ Π΄ΠΎ Π΄Π²Π° ΠΏΡŠΡ‚ΠΈ пропускатСлната способност Π½Π° записнитС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π² систСми с голям Π±Ρ€ΠΎΠΉ Π΅Π΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΈ заявки. ΠŸΡ€Π΅Π΄Π»Π°Π³Π° сС Π½ΠΎΠ² интСрфСйс Π·Π° ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² Π²Ρ…ΠΎΠ΄/ΠΈΠ·Ρ…ΠΎΠ΄, ΠΊΠΎΠΉΡ‚ΠΎ Π΅ ΠΏΠΎΠ΄ΠΎΠ±Ρ€ΠΈΠ» скоростта Π½Π° послСдоватСлно сканиранС Π½Π° Π΄Π°Π½Π½ΠΈ Π² Ρ‚Π°Π±Π»ΠΈΡ†ΠΈΡ‚Π΅ ΠΈ Π΅ ускорил обновяванСто Π½Π° статистикитС Π·Π° ΠΏΠ»Π°Π½ΠΈΡ€ΠΎΠ²Ρ‡ΠΈΠΊΠ° Π½Π° заявки слСд ΠΈΠ·ΠΏΡŠΠ»Π½Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° опСрация ANALYZE.
  • ПовишСна Π΅ производитСлността Π½Π° заявкитС с ΠΈΠ·Ρ€Π°Π·Π° β€žINβ€œ, ΠΊΠΎΠ³Π°Ρ‚ΠΎ Π² тях сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ индСкси Π½Π° Π±Π°Π·Π°Ρ‚Π° Π½Π° структурата B-tree. Π Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½Π° Π΅ Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚Ρ‚Π° Π·Π° ΠΏΠ°Ρ€Π°Π»Π΅Π»Π½ΠΎ ΠΈΠ·Π³Ρ€Π°ΠΆΠ΄Π°Π½Π΅ Π½Π° индСкси BRIN (Block Range Index). Π’ ΠΏΠ»Π°Π½ΠΈΡ€ΠΎΠ²Ρ‡ΠΈΠΊΠ° Π½Π° заявки са ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€Π°Π½ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈΡ‚Π΅ Π·Π° β€žNOT NULLβ€œ ΠΈ Π΅ ускорСна ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°Ρ‚Π° Π½Π° ΠΎΠ±Ρ‰ΠΈ Ρ‚Π°Π±Π»ΠΈΡ‡Π½ΠΈ ΠΈΠ·Ρ€Π°Π·ΠΈ (Common Table Expression, CTE), Π΄Π΅Ρ„ΠΈΠ½ΠΈΡ€Π°Π½ΠΈ с SQL ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ β€žWITHβ€œ. ΠžΡΠΈΠ³ΡƒΡ€Π΅Π½ΠΎ Π΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° инструкции Π·Π° Π²Π΅ΠΊΡ‚ΠΎΡ€Π½ΠΈ процСсори (SIMD) Π·Π° ускоряванС Π½Π° ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈ изчислСния, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π·Π° ускоряванС Π½Π° функцията bit_count са ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ΠΈ инструкции AVX-512.
  • Π Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½Π° Π΅ ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π½Π° Π½ΠΎΠ²ΠΈ Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΠΈ Π·Π° Ρ€Π°Π±ΠΎΡ‚Π° с Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° JSON, ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈ Π² стандарта SQL/JSON. Π”ΠΎΠ±Π°Π²Π΅Π½Π° Π΅ функция JSON-TABLE Π·Π° ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΠ²Π°Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ ΠΎΡ‚ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° JSON Π² ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈ Ρ‚Π°Π±Π»ΠΈΡ†ΠΈ Π½Π° PostgreSQL, ΠΊΠ°ΠΊΡ‚ΠΎ ΠΈ Π½ΠΎΠ²ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΈ jsonpath Π·Π° ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΠ²Π°Π½Π΅ Π½Π° JSON Π΄Π°Π½Π½ΠΈ Π² Ρ€ΠΎΠ΄Π½ΠΈ Π½Π° PostgreSQL Ρ‚ΠΈΠΏΠΎΠ²Π΅ Π΄Π°Π½Π½ΠΈ. ΠŸΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈ са Π½ΠΎΠ²ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π·Π° създаванС (JSON, JSON_SCALAR ΠΈ JSON_SERIALIZE) ΠΈ заявка (JSON_EXISTS, JSON_QUERY ΠΈ JSON_VALUE) Π½Π° Π΄Π°Π½Π½ΠΈ Π² JSON Ρ„ΠΎΡ€ΠΌΠ°Ρ‚.
  • Π Π°Π·ΡˆΠΈΡ€Π΅Π½ΠΈ Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΠΈ Π½Π° SQL ΠΊΠΎΠΌΠ°Π½Π΄Π°Ρ‚Π° Β«MERGEΒ», позволяваща създаванС Π½Π° условни SQL ΠΈΠ·Ρ€Π°Π·ΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ обСдиняват Π² Π΅Π΄Π½ΠΎ ΠΈΠ·Ρ€Π΅Ρ‡Π΅Π½ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈΡ‚Π΅ INSERT, UPDATE ΠΈ DELETE. Π”ΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π½Π° ΠΈΠ·Ρ€Π°Π·Π° RETURNING, ΠΊΠΎΠΉΡ‚ΠΎ позволява изчисляванС ΠΈ Π²Ρ€ΡŠΡ‰Π°Π½Π΅ Π½Π° стойности Π½Π° Π±Π°Π·Π°Ρ‚Π° Π½Π° Π΄ΠΎΠ±Π°Π²Π΅Π½ΠΈ, ΠΎΠ±Π½ΠΎΠ²Π΅Π½ΠΈ ΠΈΠ»ΠΈ ΠΈΠ·Ρ‚Ρ€ΠΈΡ‚ΠΈ Ρ€Π΅Π΄ΠΎΠ²Π΅. Π Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½Π° Π΅ ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π·Π° обновяванС Π½Π° ΠΈΠ·Π³Π»Π΅Π΄ΠΈ.
  • Π Π°Π·ΡˆΠΈΡ€Π΅Π½ΠΈ Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΠΈ Π·Π° Π·Π°Ρ€Π΅ΠΆΠ΄Π°Π½Π΅ ΠΈ СкспортиранС Π½Π° Π΄Π°Π½Π½ΠΈ Π² ΠΏΠ°ΠΊΠ΅Ρ‚Π΅Π½ Ρ€Π΅ΠΆΠΈΠΌ. Π’ ΠΊΠΎΠΌΠ°Π½Π΄Π°Ρ‚Π° COPY скоростта Π½Π° СкспортиранС Π½Π° Π³ΠΎΠ»Π΅ΠΌΠΈ Ρ€Π΅Π΄ΠΎΠ²Π΅ Π΅ ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½Π° Π΄ΠΎ Π΄Π²Π° ΠΏΡŠΡ‚ΠΈ, ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€Π°Π½ΠΎ Π΅ ΠΊΠΎΠΏΠΈΡ€Π°Π½Π΅Ρ‚ΠΎ ΠΏΡ€ΠΈ съвпадСниС Π½Π° ΠΈΠ·Ρ…ΠΎΠ΄Π½ΠΈ ΠΈ Ρ†Π΅Π»Π΅Π²ΠΈ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΠΈ, Π΄ΠΎΠ±Π°Π²Π΅Π½Π° Π΅ опция ON_ERROR, позволяваща ΠΏΡ€ΠΎΠ΄ΡŠΠ»ΠΆΠ°Π²Π°Π½Π΅ Π½Π° ΠΈΠΌΠΏΠΎΡ€Ρ‚Π° слСд Π³Ρ€Π΅ΡˆΠΊΠΈ ΠΏΡ€ΠΈ вмъкванС Π½Π° Π΄Π°Π½Π½ΠΈ.
  • Π—Π° сСкциониранитС Ρ‚Π°Π±Π»ΠΈΡ†ΠΈ Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° ΠΊΠΎΠ»ΠΎΠ½ΠΈ с ΡƒΠ½ΠΈΠΊΠ°Π»Π½ΠΈ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΈ ΠΈ ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π½Π° Ρ‚Π΅Ρ…Π½ΠΈΠΊΠ° Π·Π° оптимизация Π½Π° запитвания Β«Constraint exclusionΒ».
  • Π’ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ° Π·Π° ΡΠ²ΡŠΡ€Π·Π²Π°Π½Π΅ Π½Π° външни Ρ‚Π°Π±Π»ΠΈΡ†ΠΈ Foreign Data Wrapper (postgres_fdw) Π΅ Ρ€Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½Π° Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚Ρ‚Π° Π·Π° ΠΏΡ€Π΅Π΄Π°Π²Π°Π½Π΅ Π½Π° външСн ΡΡŠΡ€Π²ΡŠΡ€ подзапитвания Β«EXISTSΒ» ΠΈ Β«IN.
  • Π Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½ Π΅ Π²Π³Ρ€Π°Π΄Π΅Π½ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°-нСзависим ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΡŠΠΌ Π·Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π½Π° свойства Π½Π° Π»ΠΎΠΊΠ°Π»Π° Β«CollationΒ», ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ΠΈ Π·Π° Π·Π°Π΄Π°Π²Π°Π½Π΅ Π½Π° ΠΏΡ€Π°Π²ΠΈΠ»Π° Π·Π° сортиранС ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈ Π½Π° ΡΡŠΠΏΠΎΡΡ‚Π°Π²ΡΠ½Π΅, ΠΎΡ‚Ρ‡ΠΈΡ‚Π°Ρ‰ΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° символитС (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΡ€ΠΈ сортиранС Π½Π° Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΈ стойности сС Π²Π·Π΅ΠΌΠ° ΠΏΡ€Π΅Π΄Π²ΠΈΠ΄ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅Ρ‚ΠΎ Π½Π° минус ΠΈ Ρ‚ΠΎΡ‡ΠΊΠ° ΠΏΡ€Π΅Π΄ числото ΠΈ Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ Π²ΠΈΠ΄ΠΎΠ²Π΅ написванС, Π° ΠΏΡ€ΠΈ сравнСниС Π½Π΅ сС Π²Π·ΠΈΠΌΠ° ΠΏΡ€Π΅Π΄Π²ΠΈΠ΄ Ρ€Π΅Π³ΠΈΡΡ‚ΡŠΡ€Π° Π½Π° символитС ΠΈ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅Ρ‚ΠΎ Π½Π° ΡƒΠ΄Π°Ρ€Π΅Π½ΠΈΠ΅). Новият ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΡŠΠΌ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€Π° Π΅Π΄Π½ΠΎΠΎΠ±Ρ€Π°Π·Π½ΠΎ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΈ сортиранС Π½Π° Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ΠΈΡ‚Π΅ ΠΎΡ‚ запитванията, нСзависимо ΠΎΡ‚ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π°, Π½Π° която сС стартира PostgreSQL.
  • Π’ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ° Π½Π° Π»ΠΎΠ³ΠΈΡ‡Π½Π°Ρ‚Π° рСпликация, позволяваща трансфСр Π½Π° измСнСния към Π΄Ρ€ΡƒΠ³ ΡΡŠΡ€Π²ΡŠΡ€, внасяни Π² Π‘Π” ΠΏΡ€ΠΈ добавянС, ΠΈΠ·Ρ‚Ρ€ΠΈΠ²Π°Π½Π΅ ΠΈΠ»ΠΈ обновяванС Π½Π° записи, ΠΏΡ€ΠΎΡ†Π΅ΡΡŠΡ‚ ΠΏΠΎ обновяванС Π½Π° Π‘Π£Π‘Π” Π΅ опростСн. Ако ΠΏΡ€Π΅Π΄ΠΈ, ΠΏΡ€ΠΈ ΠΏΡ€Π΅ΠΌΠΈΠ½Π°Π²Π°Π½Π΅ Π½Π° Π½ΠΎΠ²ΠΎ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»Π½ΠΎ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅, бСшС Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π΄Π° сС ΠΈΠ·Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ слотовСтС Π½Π° Π»ΠΎΠ³ΠΈΡ‡Π½Π°Ρ‚Π° рСпликация ΠΈ Π΄Π° сС синхронизира ΠΎΡ‚Π½ΠΎΠ²ΠΎ Π΄Π°Π½Π½ΠΈΡ‚Π΅, Ρ‚ΠΎ сСга ΠΌΠΎΠΆΠ΅ Π΄Π° сС ΠΌΠΈΠ½Π΅ Π±Π΅Π· ΠΈΠ·Ρ‚Ρ€ΠΈΠ²Π°Π½Π΅ Π½Π° слотовС. Π—Π° ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ с отказоустойчивост Π΅ Ρ€Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½Π° Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ Π·Π° ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΏΡ€Π΅Π²ΠΊΠ»ΡŽΡ‡Π²Π°Π½Π΅ към запасСн ΡΡŠΡ€Π²ΡŠΡ€ (failover) Π·Π° Π»ΠΎΠ³ΠΈΡ‡Π½Π°Ρ‚Π° рСпликация. Π”ΠΎΠ±Π°Π²Π΅Π½ Π΅ Π½ΠΎΠ² ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Π΅Ρ‚ pg_createsubscriber Π·Π° ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΠ²Π°Π½Π΅ Π½Π° физичСска Ρ€Π΅ΠΏΠ»ΠΈΠΊΠ° Π² Π½ΠΎΠ²Π° Π»ΠΎΠ³ΠΈΡ‡Π½Π° Ρ€Π΅ΠΏΠ»ΠΈΠΊΠ°.
  • Π”ΠΎΠ±Π°Π²Π΅Π½Π° Π½ΠΎΠ²Π° опция Β«sslnegotiationΒ» Π·Π° Π΄ΠΈΡ€Π΅ΠΊΡ‚Π½ΠΎ споразумСниС Π½Π° Π·Π°Ρ‰ΠΈΡ‚Π΅Π½ΠΈ TLS-съСдинСния с ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° TLS-Ρ€Π°Π·ΡˆΠΈΡ€Π΅Π½ΠΈΠ΅Ρ‚ΠΎ ALPN.
  • Π Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½Π° Π΅ ΠΏΡ€Π΅Π΄ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π° роля pg_maintain, прСдоставяща Π½Π° потрСбитСля ΠΏΡ€Π°Π²ΠΎ Π΄Π° ΠΈΠ·Π²ΡŠΡ€ΡˆΠ²Π° ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ, ΡΠ²ΡŠΡ€Π·Π°Π½ΠΈ с ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ°Ρ‚Π° Π½Π° Π‘Π£Π‘Π”.
  • Π’ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Π°Ρ‚Π° pg_basebackup, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π° Π·Π° създаванС Π½Π° Ρ€Π΅Π·Π΅Ρ€Π²Π½ΠΈ копия Π½Π° Π‘Π”, Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π·Π° ΠΈΠ½ΠΊΡ€Π΅ΠΌΠ΅Π½Ρ‚Π°Π»Π½ΠΈ бСкъпи. Π—Π° рСконструиранС Π½Π° пълно бСкъп ΠΎΡ‚ Π½Π°Π±ΠΎΡ€ ΠΈΠ½ΠΊΡ€Π΅ΠΌΠ΅Π½Ρ‚Π°Π»Π½ΠΈ копия Π΅ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π° Π½ΠΎΠ²Π° ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Π° pg_combinebackup. Π’ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Π°Ρ‚Π° pg_dump Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° опция Β«β€”filterΒ» Π·Π° ΠΈΠ·Π±ΠΎΡ€ Π½Π° Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ‚Π΅ Π² Π΄Π°ΠΌΠΏΠ° ΠΎΠ±Π΅ΠΊΡ‚ΠΈ.
  • ΠŸΡ€ΠΈ Π°Π½Π°Π»ΠΈΠ·Π° Π½Π° заявки Ρ‡Ρ€Π΅Π· SQL-ΠΊΠΎΠΌΠ°Π½Π΄Π°Ρ‚Π° Β«EXPLAINΒ» Π΅ Ρ€Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½ ΠΈΠ·Π²ΠΎΠ΄Π° Π½Π° Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ, ΠΏΡ€Π΅ΠΊΠ°Ρ€Π°Π½ΠΎ Π·Π° Ρ‡Π΅Ρ‚Π΅Π½Π΅ ΠΈ запис Π½Π° Π»ΠΎΠΊΠ°Π»Π½ΠΈ Π±Π»ΠΎΠΊΠΎΠ²Π΅ ΠΏΡ€ΠΈ въвСТданС/ΠΈΠ·Π²Π΅ΠΆΠ΄Π°Π½Π΅. Π’ ΠΊΠΎΠΌΠ°Π½Π΄Π°Ρ‚Π° Β«EXPLAINΒ» ΡΡŠΡ‰ΠΎ са Π΄ΠΎΠ±Π°Π²Π΅Π½ΠΈ Π΄Π²Π΅ Π½ΠΎΠ²ΠΈ ΠΎΠΏΡ†ΠΈΠΈ Β«MEMORYΒ» ΠΈ Β«SERIALIZEΒ», Ρ‡Ρ€Π΅Π· ΠΊΠΎΠΈΡ‚ΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° сС ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈ Ρ€Π°Π·ΠΌΠ΅Ρ€ΡŠΡ‚ Π½Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π°Ρ‚Π° ΠΏΠ°ΠΌΠ΅Ρ‚ ΠΈ Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ, ΠΏΡ€Π΅ΠΊΠ°Ρ€Π°Π½ΠΎ Π·Π° ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΠ²Π°Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈΡ‚Π΅ Π·Π° ΠΏΡ€Π΅Π΄Π°Π²Π°Π½Π΅ ΠΏΠΎ ΠΌΡ€Π΅ΠΆΠ°Ρ‚Π°.
  • ΠžΡΠΈΠ³ΡƒΡ€Π΅Π½Π° Π΅ индикация Π½Π° Π½Π°ΠΏΡ€Π΅Π΄ΡŠΠΊΠ° ΠΏΡ€ΠΈ ΠΈΠ·ΠΏΡŠΠ»Π½Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° опСрацията VACUUM с индСкси.
  • Π”ΠΎΠ±Π°Π²Π΅Π½ΠΎ Π΅ систСмно прСдставлСниС pg_wait_events, ΠΊΠΎΠ΅Ρ‚ΠΎ Π² комбинация с прСдставлСниСто pg_stat_activity позволява ΠΏΠΎ-ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ ΠΈΠ·ΡƒΡ‡Π°Π²Π°Π½Π΅ Π½Π° ΠΏΡ€ΠΈΡ‡ΠΈΠ½ΠΈΡ‚Π΅ Π·Π° оставащитС Π°ΠΊΡ‚ΠΈΠ²Π½ΠΈ сСсии Π² ΡΡŠΡΡ‚ΠΎΡΠ½ΠΈΠ΅ Π½Π° ΠΈΠ·Ρ‡Π°ΠΊΠ²Π°Π½Π΅.

Π˜Π·Ρ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru

ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС със Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS ΠΈ VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ πŸ”₯ ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС със Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS ΠΈ VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ | ProHoster