Основи Π½Π° Π½Π°Π±Π»ΡŽΠ΄Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° PostgreSQL. АлСксСй ЛСсовски

ΠŸΡ€Π΅Π΄Π»Π°Π³Π°ΠΌ Π²ΠΈ Π΄Π° сС Π·Π°ΠΏΠΎΠ·Π½Π°Π΅Ρ‚Π΅ с прСписа Π½Π° Π΄ΠΎΠΊΠ»Π°Π΄Π° Π½Π° АлСксСй ЛСсовски ΠΎΡ‚ Data Egret β€žΠžΡΠ½ΠΎΠ²ΠΈ Π½Π° ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³Π° Π½Π° PostgreSQLβ€œ

Π’ Ρ‚ΠΎΠ·ΠΈ Π΄ΠΎΠΊΠ»Π°Π΄ АлСксСй ЛСсовски Ρ‰Π΅ Π³ΠΎΠ²ΠΎΡ€ΠΈ Π·Π° ΠΊΠ»ΡŽΡ‡ΠΎΠ²ΠΈΡ‚Π΅ Ρ‚ΠΎΡ‡ΠΊΠΈ Π½Π° postgres статистикитС, ΠΊΠ°ΠΊΠ²ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π²Π°Ρ‚ Ρ‚Π΅ ΠΈ Π·Π°Ρ‰ΠΎ трябва Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈ Π² ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³Π°; Π·Π° Ρ‚ΠΎΠ²Π° ΠΊΠ°ΠΊΠ²ΠΈ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΈ трябва Π΄Π° ΠΈΠΌΠ° Π² ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³Π°, ΠΊΠ°ΠΊ Π΄Π° Π³ΠΈ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚Π΅ ΠΈ ΠΊΠ°ΠΊ Π΄Π° ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚ΠΈΡ€Π°Ρ‚Π΅. Π”ΠΎΠΊΠ»Π°Π΄ΡŠΡ‚ Ρ‰Π΅ бъдС ΠΏΠΎΠ»Π΅Π·Π΅Π½ Π·Π° администратори Π½Π° Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ, систСмни администратори ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ сС интСрСсуват ΠΎΡ‚ отстраняванС Π½Π° нСизправности Π² Postgres.

Основи Π½Π° Π½Π°Π±Π»ΡŽΠ΄Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° PostgreSQL. АлСксСй ЛСсовски

Казвам сС АлСксСй ЛСсовски, прСдставлявам Data Egret.

Няколко Π΄ΡƒΠΌΠΈ Π·Π° сСбС си. Π—Π°ΠΏΠΎΡ‡Π½Π°Ρ… ΠΎΡ‚Π΄Π°Π²Π½Π° ΠΊΠ°Ρ‚ΠΎ систСмСн администратор.

Администрирах Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ Π²ΠΈΠ΄ΠΎΠ²Π΅ Linux, ΠΏΡ€Π°Π²Π΅Ρ… Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ Π½Π΅Ρ‰Π°, ΡΠ²ΡŠΡ€Π·Π°Π½ΠΈ с Linux, Ρ‚.Π΅. виртуализация, ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³, Ρ€Π°Π±ΠΎΡ‚Π΅Ρ… с проксита ΠΈ Ρ‚.Π½. Но Π² Π΅Π΄ΠΈΠ½ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π·Π°ΠΏΠΎΡ‡Π½Π°Ρ… Π΄Π° сС Π·Π°Π½ΠΈΠΌΠ°Π²Π°ΠΌ ΠΏΠΎΠ²Π΅Ρ‡Π΅ с Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ, PostgreSQL. Много Π³ΠΎ харСсах. И Π² Π΅Π΄ΠΈΠ½ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π·Π°ΠΏΠΎΡ‡Π½Π°Ρ… Π΄Π° сС Π·Π°Π½ΠΈΠΌΠ°Π²Π°ΠΌ с PostgreSQL ΠΏΠΎ-голямата част ΠΎΡ‚ Ρ€Π°Π±ΠΎΡ‚Π½ΠΎΡ‚ΠΎ си Π²Ρ€Π΅ΠΌΠ΅. И Ρ‚Π°ΠΊΠ° постСпСнно станах PostgreSQL DBA.

И ΠΏΡ€Π΅Π· цялата си ΠΊΠ°Ρ€ΠΈΠ΅Ρ€Π° Π²ΠΈΠ½Π°Π³ΠΈ съм сС интСрСсувал ΠΎΡ‚ Ρ‚Π΅ΠΌΠΈΡ‚Π΅ Π·Π° статистика, ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³, тСлСмСтрия. И ΠΊΠΎΠ³Π°Ρ‚ΠΎ бях систСмСн администратор, Ρ€Π°Π±ΠΎΡ‚ΠΈΡ… ΠΌΠ½ΠΎΠ³ΠΎ усилСно Π²ΡŠΡ€Ρ…Ρƒ Zabbix. И написа малък Π½Π°Π±ΠΎΡ€ ΠΎΡ‚ скриптовС ΠΊΠ°Ρ‚ΠΎ zabbix-Ρ€Π°Π·ΡˆΠΈΡ€Π΅Π½ΠΈΡ. Π’ΠΎΠΉ бСшС доста популярСн ΠΏΠΎ своСто Π²Ρ€Π΅ΠΌΠ΅. И Ρ‚Π°ΠΌ бСшС възмоТно Π΄Π° сС Π½Π°Π±Π»ΡŽΠ΄Π°Π²Π°Ρ‚ ΠΌΠ½ΠΎΠ³ΠΎ Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ Π²Π°ΠΆΠ½ΠΈ Π½Π΅Ρ‰Π°, Π½Π΅ само Linux, Π½ΠΎ ΠΈ Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΈ.

Π‘Π΅Π³Π° Π²Π΅Ρ‡Π΅ правя PostgreSQL. Π’Π΅Ρ‡Π΅ пиша Π΄Ρ€ΡƒΠ³ΠΎ Π½Π΅Ρ‰ΠΎ, ΠΊΠΎΠ΅Ρ‚ΠΎ Π²ΠΈ позволява Π΄Π° Ρ€Π°Π±ΠΎΡ‚ΠΈΡ‚Π΅ със статистики Π½Π° PostgreSQL. Нарича сС pgCenter (статия Π½Π° Π₯Π°Π±Ρ€Π΅ - Postgres stat Π±Π΅Π· Π½Π΅Ρ€Π²ΠΈ ΠΈ Π½Π°ΠΏΡ€Π΅ΠΆΠ΅Π½ΠΈΠ΅).

Основи Π½Π° Π½Π°Π±Π»ΡŽΠ΄Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° PostgreSQL. АлСксСй ЛСсовски

Малко въвСдСниС. Какви са ситуациитС с Π½Π°ΡˆΠΈΡ‚Π΅ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΈ, с Π½Π°ΡˆΠΈΡ‚Π΅ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΈ? Има някакъв ΠΈΠ½Ρ†ΠΈΠ΄Π΅Π½Ρ‚, ΡΠ²ΡŠΡ€Π·Π°Π½ с Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ. И ΠΊΠΎΠ³Π°Ρ‚ΠΎ Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ Π²Π΅Ρ‡Π΅ Π΅ Π²ΡŠΠ·ΡΡ‚Π°Π½ΠΎΠ²Π΅Π½Π°, ΠΈΠ΄Π²Π° Π½Π°Ρ‡Π°Π»Π½ΠΈΠΊΡŠΡ‚ Π½Π° ΠΎΡ‚Π΄Π΅Π»Π° ΠΈΠ»ΠΈ Ρ€ΡŠΠΊΠΎΠ²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡΡ‚ Π½Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°Ρ‚Π° ΠΈ ΠΊΠ°Π·Π²Π°: β€žΠŸΡ€ΠΈΡΡ‚Π΅Π»ΠΈ, трябва Π΄Π° наблюдавамС Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ, Π·Π°Ρ‰ΠΎΡ‚ΠΎ сС случи Π½Π΅Ρ‰ΠΎ лошо ΠΈ Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Ρ‚ΠΎΠ²Π° Π΄Π° Π½Π΅ сС случва Π² Π±ΡŠΠ΄Π΅Ρ‰Π΅.β€œ И Ρ‚ΡƒΠΊ Π·Π°ΠΏΠΎΡ‡Π²Π° интСрСсният процСс Π½Π° ΠΈΠ·Π±ΠΎΡ€ Π½Π° систСма Π·Π° наблюдСниС ΠΈΠ»ΠΈ Π°Π΄Π°ΠΏΡ‚ΠΈΡ€Π°Π½Π΅ Π½Π° ΡΡŠΡ‰Π΅ΡΡ‚Π²ΡƒΠ²Π°Ρ‰Π° систСма Π·Π° наблюдСниС, Ρ‚Π°ΠΊΠ° Ρ‡Π΅ Π΄Π° ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° Π½Π°Π±Π»ΡŽΠ΄Π°Π²Π°Ρ‚Π΅ Π²Π°ΡˆΠ°Ρ‚Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ - PostgreSQL, MySQL ΠΈΠ»ΠΈ някои Π΄Ρ€ΡƒΠ³ΠΈ. И ΠΊΠΎΠ»Π΅Π³ΠΈΡ‚Π΅ Π·Π°ΠΏΠΎΡ‡Π²Π°Ρ‚ Π΄Π° ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Ρ‚: β€žΠ§ΡƒΡ…, Ρ‡Π΅ ΠΈΠΌΠ° Ρ‚Π°ΠΊΠ°Π²Π° ΠΈ Ρ‚Π°ΠΊΠ°Π²Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ. НСка Π³ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅." ΠšΠΎΠ»Π΅Π³ΠΈΡ‚Π΅ Π·Π°ΠΏΠΎΡ‡Π²Π°Ρ‚ Π΄Π° сС ΠΊΠ°Ρ€Π°Ρ‚ ΠΏΠΎΠΌΠ΅ΠΆΠ΄Ρƒ си. И Π² ΠΊΡ€Π°ΠΉΠ½Π° смСтка сС ΠΎΠΊΠ°Π·Π²Π°, Ρ‡Π΅ ΠΈΠ·Π±ΠΈΡ€Π°ΠΌΠ΅ някаква Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ, Π½ΠΎ ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³ΡŠΡ‚ Π½Π° PostgreSQL Π΅ доста слабо прСдставСн Π² нСя ΠΈ Π²ΠΈΠ½Π°Π³ΠΈ трябва Π΄Π° Π΄ΠΎΠ²ΡŠΡ€ΡˆΠΈΠΌ Π½Π΅Ρ‰ΠΎ. Π’Π·Π΅ΠΌΠ΅Ρ‚Π΅ някои Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π° ΠΎΡ‚ GitHub, ΠΊΠ»ΠΎΠ½ΠΈΡ€Π°ΠΉΡ‚Π΅ Π³ΠΈ, Π°Π΄Π°ΠΏΡ‚ΠΈΡ€Π°ΠΉΡ‚Π΅ скриптовС, ΠΏΠΎ някакъв Π½Π°Ρ‡ΠΈΠ½ Π³ΠΈ настройтС. И накрая ΠΈΠ·ΠΏΠ°Π΄Π° Π² някаква Ρ€ΡŠΡ‡Π½Π° Ρ€Π°Π±ΠΎΡ‚Π°.

Основи Π½Π° Π½Π°Π±Π»ΡŽΠ΄Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° PostgreSQL. АлСксСй ЛСсовски

Π—Π°Ρ‚ΠΎΠ²Π° Π² Ρ‚ΠΎΠ·ΠΈ Π΄ΠΎΠΊΠ»Π°Π΄ Ρ‰Π΅ сС ΠΎΠΏΠΈΡ‚Π°ΠΌ Π΄Π° Π²ΠΈ Π΄Π°ΠΌ ΠΌΠ°Π»ΠΊΠΎ знания Π·Π° Ρ‚ΠΎΠ²Π° ΠΊΠ°ΠΊ Π΄Π° ΠΈΠ·Π±Π΅Ρ€Π΅Ρ‚Π΅ ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³ Π½Π΅ само Π·Π° PostgreSQL, Π½ΠΎ ΠΈ Π·Π° Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ. И Π΄Π° Π΄Π°Π΄Π΅ знанията, ΠΊΠΎΠΈΡ‚ΠΎ Ρ‰Π΅ Π²ΠΈ позволят Π΄Π° Π·Π°Π²ΡŠΡ€ΡˆΠΈΡ‚Π΅ Π½Π°Π±Π»ΡŽΠ΄Π΅Π½ΠΈΠ΅Ρ‚ΠΎ си, Π·Π° Π΄Π° ΠΈΠ·Π²Π»Π΅Ρ‡Π΅Ρ‚Π΅ някаква ΠΏΠΎΠ»Π·Π° ΠΎΡ‚ Π½Π΅Π³ΠΎ, Ρ‚Π°ΠΊΠ° Ρ‡Π΅ Π΄Π° ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° Π½Π°Π±Π»ΡŽΠ΄Π°Π²Π°Ρ‚Π΅ Π²Π°ΡˆΠ°Ρ‚Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ с ΠΏΠΎΠ»Π·Π°, Π·Π° Π΄Π° ΠΏΡ€Π΅Π΄ΠΎΡ‚Π²Ρ€Π°Ρ‚ΠΈΡ‚Π΅ всякакви прСдстоящи ΠΈΠ·Π²ΡŠΠ½Ρ€Π΅Π΄Π½ΠΈ ситуации, ΠΊΠΎΠΈΡ‚ΠΎ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π²ΡŠΠ·Π½ΠΈΠΊΠ½Π°Ρ‚ Π½Π°Π²Ρ€Π΅ΠΌΠ΅.

И Ρ‚Π΅Π·ΠΈ ΠΈΠ΄Π΅ΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ Ρ‰Π΅ Π±ΡŠΠ΄Π°Ρ‚ Π² Ρ‚ΠΎΠ·ΠΈ ΠΎΡ‚Ρ‡Π΅Ρ‚, Ρ‚Π΅ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ Π΄ΠΈΡ€Π΅ΠΊΡ‚Π½ΠΎ Π°Π΄Π°ΠΏΡ‚ΠΈΡ€Π°Π½ΠΈ към всяка Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ, Π±ΠΈΠ»ΠΎ Ρ‚ΠΎ Π‘Π£Π‘Π” ΠΈΠ»ΠΈ noSQL. Π‘Π»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»Π½ΠΎ Π½Π΅ само PostgreSQL Ρ‚ΡƒΠΊ, Π½ΠΎ Ρ‰Π΅ ΠΈΠΌΠ° ΠΌΠ½ΠΎΠ³ΠΎ Ρ€Π΅Ρ†Π΅ΠΏΡ‚ΠΈ ΠΊΠ°ΠΊ Π΄Π° Π½Π°ΠΏΡ€Π°Π²ΠΈΡ‚Π΅ Ρ‚ΠΎΠ²Π° Π² PostgreSQL. Π©Π΅ ΠΈΠΌΠ° ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΈ Π·Π° заявки, ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΈ Π·Π° ΠΎΠ±Π΅ΠΊΡ‚ΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ PostgreSQL ΠΈΠΌΠ° Π·Π° наблюдСниС. И Π°ΠΊΠΎ Π²Π°ΡˆΠ°Ρ‚Π° Π‘Π£Π‘Π” ΠΈΠΌΠ° ΡΡŠΡ‰ΠΈΡ‚Π΅ Π½Π΅Ρ‰Π°, ΠΊΠΎΠΈΡ‚ΠΎ Π²ΠΈ позволяват Π΄Π° Π³ΠΈ поставитС Π² ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³, ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΡŠΡ‰ΠΎ Π΄Π° Π³ΠΈ Π°Π΄Π°ΠΏΡ‚ΠΈΡ€Π°Ρ‚Π΅, Π΄Π° Π³ΠΈ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚Π΅ ΠΈ всичко Ρ‰Π΅ бъдС Π½Π°Ρ€Π΅Π΄.

Основи Π½Π° Π½Π°Π±Π»ΡŽΠ΄Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° PostgreSQL. АлСксСй ЛСсовскиняма Π΄Π° Π΄ΠΎΠΊΠ»Π°Π΄Π²Π°ΠΌ
Π³ΠΎΠ²ΠΎΡ€ΠΈΠΌ Π·Π° Ρ‚ΠΎΠ²Π° ΠΊΠ°ΠΊ Π΄Π° доставямС ΠΈ ΡΡŠΡ…Ρ€Π°Π½ΡΠ²Π°ΠΌΠ΅ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ. Няма Π΄Π° ΠΊΠ°ΠΆΠ° Π½ΠΈΡ‰ΠΎ Π·Π° послСдващата ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π½Π° Π΄Π°Π½Π½ΠΈ ΠΈ прСдоставянСто ΠΈΠΌ Π½Π° потрСбитСля. А Π·Π° Π°Π»Π°Ρ€ΠΌΠΈΡ€Π°Π½Π΅Ρ‚ΠΎ няма Π΄Π° ΠΊΠ°ΠΆΠ° Π½ΠΈΡ‰ΠΎ.
Но Π² Ρ…ΠΎΠ΄Π° Π½Π° историята Ρ‰Π΅ ΠΏΠΎΠΊΠ°ΠΆΠ° Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ Π΅ΠΊΡ€Π°Π½Π½ΠΈ снимки Π½Π° ΡΡŠΡ‰Π΅ΡΡ‚Π²ΡƒΠ²Π°Ρ‰ΠΈ ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³ΠΈ, ΠΏΠΎ някакъв Π½Π°Ρ‡ΠΈΠ½ Ρ‰Π΅ Π³ΠΈ ΠΊΡ€ΠΈΡ‚ΠΈΠΊΡƒΠ²Π°ΠΌ. Π’ΡŠΠΏΡ€Π΅ΠΊΠΈ Ρ‚ΠΎΠ²Π° Ρ‰Π΅ сС ΠΎΠΏΠΈΡ‚Π°ΠΌ Π΄Π° Π½Π΅ Π½Π°Π·ΠΎΠ²Π°Π²Π°ΠΌ ΠΌΠ°Ρ€ΠΊΠΈ, Π·Π° Π΄Π° Π½Π΅ създавам Ρ€Π΅ΠΊΠ»Π°ΠΌΠ° ΠΈΠ»ΠΈ Π°Π½Ρ‚ΠΈΡ€Π΅ΠΊΠ»Π°ΠΌΠ° Π½Π° Ρ‚Π΅Π·ΠΈ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΈ. Π‘Π»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»Π½ΠΎ всички съвпадСния са случайни ΠΈ остават във Π²Π°ΡˆΠ΅Ρ‚ΠΎ Π²ΡŠΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅.
Основи Π½Π° Π½Π°Π±Π»ΡŽΠ΄Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° PostgreSQL. АлСксСй ЛСсовски
ΠŸΡŠΡ€Π²ΠΎ, Π½Π΅ΠΊΠ° Ρ€Π°Π·Π±Π΅Ρ€Π΅ΠΌ ΠΊΠ°ΠΊΠ²ΠΎ Π΅ ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³. ΠœΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³ΡŠΡ‚ Π΅ ΠΌΠ½ΠΎΠ³ΠΎ Π²Π°ΠΆΠ½ΠΎ Π½Π΅Ρ‰ΠΎ. ВсСки Ρ€Π°Π·Π±ΠΈΡ€Π° Ρ‚ΠΎΠ²Π°. Но Π² ΡΡŠΡ‰ΠΎΡ‚ΠΎ Π²Ρ€Π΅ΠΌΠ΅ Π½Π°Π±Π»ΡŽΠ΄Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π΅ Π΅ ΡΠ²ΡŠΡ€Π·Π°Π½ΠΎ с бизнСс ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ ΠΈ Π½Π΅ засяга пряко ΠΏΠ΅Ρ‡Π°Π»Π±ΠΈΡ‚Π΅ Π½Π° компанията, Ρ‚Π°ΠΊΠ° Ρ‡Π΅ Π½Π°Π±Π»ΡŽΠ΄Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π²ΠΈΠ½Π°Π³ΠΈ сС Π΄Π°Π²Π° Π½Π° ΠΎΡΡ‚Π°Ρ‚ΡŠΡ‡Π½Π° основа. Ако ΠΈΠΌΠ°ΠΌΠ΅ Π²Ρ€Π΅ΠΌΠ΅, Ρ‚ΠΎΠ³Π°Π²Π° сС Π·Π°Π½ΠΈΠΌΠ°Π²Π°ΠΌΠ΅ с ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³, Π°ΠΊΠΎ няма Π²Ρ€Π΅ΠΌΠ΅, Ρ‚ΠΎΠ³Π°Π²Π° ОК, Ρ‰Π΅ Π³ΠΎ поставим Π² изоставанСто ΠΈ някой Π΄Π΅Π½ Ρ‰Π΅ сС Π²ΡŠΡ€Π½Π΅ΠΌ към Ρ‚Π΅Π·ΠΈ Π·Π°Π΄Π°Ρ‡ΠΈ.

Π—Π°Ρ‚ΠΎΠ²Π° ΠΎΡ‚ Π½Π°ΡˆΠ°Ρ‚Π° ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ°, ΠΊΠΎΠ³Π°Ρ‚ΠΎ ΠΈΠ΄Π²Π°ΠΌΠ΅ ΠΏΡ€ΠΈ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΈ, ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³ΡŠΡ‚ чСсто Π΅ Π½Π΅Π΄ΠΎΡ€Π°Π·Π²ΠΈΡ‚ ΠΈ няма интСрСсни Π½Π΅Ρ‰Π°, ΠΊΠΎΠΈΡ‚ΠΎ Π±ΠΈΡ…Π° Π½ΠΈ ΠΏΠΎΠΌΠΎΠ³Π½Π°Π»ΠΈ Π΄Π° Ρ€Π°Π±ΠΎΡ‚ΠΈΠΌ ΠΏΠΎ-Π΄ΠΎΠ±Ρ€Π΅ с Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ. И слСдоватСлно ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³ΡŠΡ‚ Π²ΠΈΠ½Π°Π³ΠΈ трябва Π΄Π° бъдС Π·Π°Π²ΡŠΡ€ΡˆΠ΅Π½.

Π‘Π°Π·ΠΈΡ‚Π΅ Π΄Π°Π½Π½ΠΈ са Ρ‚ΠΎΠ»ΠΊΠΎΠ²Π° слоТни Π½Π΅Ρ‰Π°, ΠΊΠΎΠΈΡ‚ΠΎ ΡΡŠΡ‰ΠΎ трябва Π΄Π° Π½Π°Π±Π»ΡŽΠ΄Π°Π²Π°Ρ‚Π΅, Π·Π°Ρ‰ΠΎΡ‚ΠΎ Π±Π°Π·ΠΈΡ‚Π΅ Π΄Π°Π½Π½ΠΈ са Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ Π½Π° информация. А информацията Π΅ ΠΌΠ½ΠΎΠ³ΠΎ Π²Π°ΠΆΠ½Π° Π·Π° компанията, Π½Π΅ ΠΌΠΎΠΆΠ΅ Π΄Π° сС Π·Π°Π³ΡƒΠ±ΠΈ ΠΏΠΎ никакъв Π½Π°Ρ‡ΠΈΠ½. Но Π² ΡΡŠΡ‰ΠΎΡ‚ΠΎ Π²Ρ€Π΅ΠΌΠ΅ Π±Π°Π·ΠΈΡ‚Π΅ Π΄Π°Π½Π½ΠΈ са ΠΌΠ½ΠΎΠ³ΠΎ слоТни софтуСрни части. Π’Π΅ са ΡΡŠΡΡ‚Π°Π²Π΅Π½ΠΈ ΠΎΡ‚ ΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΈ. И ΠΌΠ½ΠΎΠ³ΠΎ ΠΎΡ‚ Ρ‚Π΅Π·ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΈ трябва Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ наблюдавани.

Основи Π½Π° Π½Π°Π±Π»ΡŽΠ΄Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° PostgreSQL. АлСксСй ЛСсовскиАко Π³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎ Π·Π° PostgreSQL, Ρ‚ΠΎΠ³Π°Π²Π° Ρ‚ΠΎΠΉ ΠΌΠΎΠΆΠ΅ Π΄Π° бъдС прСдставСн ΠΊΠ°Ρ‚ΠΎ Ρ‚Π°ΠΊΠ°Π²Π° схСма, която сС ΡΡŠΡΡ‚ΠΎΠΈ ΠΎΡ‚ голям Π±Ρ€ΠΎΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΈ. Π’Π΅Π·ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΈ взаимодСйстват ΠΏΠΎΠΌΠ΅ΠΆΠ΄Ρƒ си. И Π² ΡΡŠΡ‰ΠΎΡ‚ΠΎ Π²Ρ€Π΅ΠΌΠ΅ PostgreSQL ΠΈΠΌΠ° Ρ‚Π°ΠΊΠ° Π½Π°Ρ€Π΅Ρ‡Π΅Π½Π°Ρ‚Π° подсистСма Stats Collector, която Π²ΠΈ позволява Π΄Π° ΡΡŠΠ±ΠΈΡ€Π°Ρ‚Π΅ статистика Π·Π° Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚Π° Π½Π° Ρ‚Π΅Π·ΠΈ подсистСми ΠΈ Π΄Π° прСдоставятС интСрфСйс Π½Π° администратора ΠΈΠ»ΠΈ потрСбитСля, Ρ‚Π°ΠΊΠ° Ρ‡Π΅ Ρ‚ΠΎΠΉ Π΄Π° ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΏΡ€Π΅Π³Π»Π΅ΠΆΠ΄Π° Ρ‚Π΅Π·ΠΈ статистики.

Π’Π°Π·ΠΈ статистика сС прСдставя ΠΏΠΎΠ΄ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° Π½Π° Π½Π°Π±ΠΎΡ€ ΠΎΡ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈ ΠΈΠ·Π³Π»Π΅Π΄ΠΈ (ΠΈΠ·Π³Π»Π΅Π΄). ΠœΠΎΠ³Π°Ρ‚ Π΄Π° сС Π½Π°Ρ€Π΅ΠΊΠ°Ρ‚ ΠΈ маси. ВоСст, ΠΊΠ°Ρ‚ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚Π΅ ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ psql ΠΊΠ»ΠΈΠ΅Π½Ρ‚, ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° сС ΡΠ²ΡŠΡ€ΠΆΠ΅Ρ‚Π΅ с Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ, Π΄Π° ΠΈΠ·Π±Π΅Ρ€Π΅Ρ‚Π΅ Ρ‚Π΅Π·ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈ ΠΈΠ·Π³Π»Π΅Π΄ΠΈ ΠΈ Π΄Π° ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ някои ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΈ числа Π·Π° Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚Π° Π½Π° подсистСмитС Π½Π° PostgreSQL.

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

Но Π² Ρ‚ΠΎΠ·ΠΈ Π΄ΠΎΠΊΠ»Π°Π΄ няма Π΄Π° Ρ€Π°Π·Π³Π»Π΅Π΄Π°ΠΌ всички Ρ‚Π΅Π·ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π±Π΅Π· ΠΈΠ·ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅, Π·Π°Ρ‰ΠΎΡ‚ΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΎΡ‚Π½Π΅ΠΌΠ΅ цял Π΄Π΅Π½. Π©Π΅ спомСна Π±ΡƒΠΊΠ²Π°Π»Π½ΠΎ Π΄Π²Π΅, Ρ‚Ρ€ΠΈ ΠΈΠ»ΠΈ Ρ‡Π΅Ρ‚ΠΈΡ€ΠΈ Π½Π΅Ρ‰Π° ΠΈ Ρ‰Π΅ Π²ΠΈ ΠΊΠ°ΠΆΠ° ΠΊΠ°ΠΊ Ρ‚Π΅ ΠΏΠΎΠΌΠ°Π³Π°Ρ‚ Π·Π° ΠΏΠΎ-Π΄ΠΎΠ±Ρ€ΠΎ наблюдСниС.
Основи Π½Π° Π½Π°Π±Π»ΡŽΠ΄Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° PostgreSQL. АлСксСй ЛСсовски
И Π°ΠΊΠΎ Π³ΠΎΠ²ΠΎΡ€ΠΈΠΌ Π·Π° ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³ Π½Π° Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ, ΠΊΠ°ΠΊΠ²ΠΎ трябва Π΄Π° сС слСди? На ΠΏΡŠΡ€Π²ΠΎ място, трябва Π΄Π° слСдим наличността, Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ Π΅ услуга, която прСдоставя Π΄ΠΎΡΡ‚ΡŠΠΏ Π΄ΠΎ Π΄Π°Π½Π½ΠΈ Π½Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΈΡ‚Π΅ ΠΈ Π½ΠΈΠ΅ трябва Π΄Π° слСдим наличността, ΠΊΠ°ΠΊΡ‚ΠΎ ΠΈ Π΄Π° прСдоставямС някои ΠΎΡ‚ Π½Π΅ΠΉΠ½ΠΈΡ‚Π΅ качСствСни ΠΈ количСствСни характСристики.

Основи Π½Π° Π½Π°Π±Π»ΡŽΠ΄Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° PostgreSQL. АлСксСй ЛСсовски

Π‘ΡŠΡ‰ΠΎ Ρ‚Π°ΠΊΠ° трябва Π΄Π° наблюдавамС ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΈΡ‚Π΅, ΠΊΠΎΠΈΡ‚ΠΎ сС ΡΠ²ΡŠΡ€Π·Π²Π°Ρ‚ с Π½Π°ΡˆΠ°Ρ‚Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ, Π·Π°Ρ‰ΠΎΡ‚ΠΎ Ρ‚Π΅ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ ΠΊΠ°ΠΊΡ‚ΠΎ Π½ΠΎΡ€ΠΌΠ°Π»Π½ΠΈ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΈ, Ρ‚Π°ΠΊΠ° ΠΈ опасни ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° наврСдят Π½Π° Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ. Π’Π΅ ΡΡŠΡ‰ΠΎ трябва Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ наблюдавани ΠΈ прослСдявани.

Основи Π½Π° Π½Π°Π±Π»ΡŽΠ΄Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° PostgreSQL. АлСксСй ЛСсовски

ΠšΠΎΠ³Π°Ρ‚ΠΎ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΈΡ‚Π΅ сС ΡΠ²ΡŠΡ€Π·Π²Π°Ρ‚ с Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ, Π΅ ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½ΠΎ, Ρ‡Π΅ Π·Π°ΠΏΠΎΡ‡Π²Π°Ρ‚ Π΄Π° работят с Π½Π°ΡˆΠΈΡ‚Π΅ Π΄Π°Π½Π½ΠΈ, Ρ‚Π°ΠΊΠ° Ρ‡Π΅ трябва Π΄Π° наблюдавамС ΠΊΠ°ΠΊ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΈΡ‚Π΅ работят с Π΄Π°Π½Π½ΠΈ: с ΠΊΠΎΠΈ Ρ‚Π°Π±Π»ΠΈΡ†ΠΈ, Π² ΠΏΠΎ-ΠΌΠ°Π»ΠΊΠ° стСпСн с ΠΊΠΎΠΈ индСкси. ВоСст трябва Π΄Π° ΠΎΡ†Π΅Π½ΠΈΠΌ Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅Ρ‚ΠΎ, ΠΊΠΎΠ΅Ρ‚ΠΎ сС създава ΠΎΡ‚ Π½Π°ΡˆΠΈΡ‚Π΅ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΈ.

Основи Π½Π° Π½Π°Π±Π»ΡŽΠ΄Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° PostgreSQL. АлСксСй ЛСсовски

Но Ρ€Π°Π±ΠΎΡ‚Π½ΠΎΡ‚ΠΎ Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅ сС ΡΡŠΡΡ‚ΠΎΠΈ, Ρ€Π°Π·Π±ΠΈΡ€Π° сС, ΠΈ ΠΎΡ‚ заявки. ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡ‚Π° сС ΡΠ²ΡŠΡ€Π·Π²Π°Ρ‚ с Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ, Π΄ΠΎΡΡ‚ΡŠΠΏΠ²Π°Ρ‚ Π΄Π°Π½Π½ΠΈ Ρ‡Ρ€Π΅Π· заявки, Ρ‚Π°ΠΊΠ° Ρ‡Π΅ Π΅ Π²Π°ΠΆΠ½ΠΎ Π΄Π° ΠΏΡ€Π΅Ρ†Π΅Π½ΠΈΠΌ ΠΊΠ°ΠΊΠ²ΠΈ заявки ΠΈΠΌΠ°ΠΌΠ΅ Π² Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ, Π΄Π° слСдим тяхната адСкватност, Π΄Π°Π»ΠΈ Π½Π΅ са ΠΊΡ€ΠΈΠ²ΠΈ, Ρ‡Π΅ някои ΠΎΠΏΡ†ΠΈΠΈ трябва Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ прСнаписани ΠΈ Π½Π°ΠΏΡ€Π°Π²Π΅Π½ΠΈ Ρ‚Π°ΠΊΠ°, Ρ‡Π΅ Π΄Π° работят ΠΏΠΎ-Π±ΡŠΡ€Π·ΠΎ ΠΈ с ΠΏΠΎ-Π΄ΠΎΠ±Ρ€Π° производитСлност.

Основи Π½Π° Π½Π°Π±Π»ΡŽΠ΄Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° PostgreSQL. АлСксСй ЛСсовски

И Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ Π³ΠΎΠ²ΠΎΡ€ΠΈΠΌ Π·Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ, Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ Π²ΠΈΠ½Π°Π³ΠΈ Π΅ Ρ„ΠΎΠ½ΠΎΠ²ΠΈ процСси. Π€ΠΎΠ½ΠΎΠ²ΠΈΡ‚Π΅ процСси ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ°Ρ‚ производитСлността Π½Π° Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ Π½Π° Π΄ΠΎΠ±Ρ€ΠΎ Π½ΠΈΠ²ΠΎ, Ρ‚Π°ΠΊΠ° Ρ‡Π΅ изискват ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΎ количСство рСсурси, Π·Π° Π΄Π° работят. И Π² ΡΡŠΡ‰ΠΎΡ‚ΠΎ Π²Ρ€Π΅ΠΌΠ΅ Ρ‚Π΅ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° сС ΠΏΡ€ΠΈΠΏΠΎΠΊΡ€ΠΈΠ²Π°Ρ‚ с рСсурситС Π½Π° клиСнтскитС заявки, Ρ‚Π°ΠΊΠ° Ρ‡Π΅ Π°Π»Ρ‡Π½Π°Ρ‚Π° Ρ€Π°Π±ΠΎΡ‚Π° Π½Π° Ρ„ΠΎΠ½ΠΎΠ²ΠΈΡ‚Π΅ процСси ΠΌΠΎΠΆΠ΅ Π΄ΠΈΡ€Π΅ΠΊΡ‚Π½ΠΎ Π΄Π° повлияС Π½Π° ΠΈΠ·ΠΏΡŠΠ»Π½Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° клиСнтскитС заявки. Π‘Π»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»Π½ΠΎ Ρ‚Π΅ ΡΡŠΡ‰ΠΎ трябва Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ наблюдавани ΠΈ прослСдявани, Π·Π° Π΄Π° няма изкривявания ΠΏΠΎ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ Π½Π° Ρ„ΠΎΠ½ΠΎΠ²ΠΈΡ‚Π΅ процСси.

Основи Π½Π° Π½Π°Π±Π»ΡŽΠ΄Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° PostgreSQL. АлСксСй ЛСсовски

И Ρ‚ΠΎΠ²Π° Π΅ всичко ΠΏΠΎ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ Π½Π° Π½Π°Π±Π»ΡŽΠ΄Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ, ΠΊΠΎΠ΅Ρ‚ΠΎ остава Π² систСмния ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π». Но ΠΊΠ°Ρ‚ΠΎ сС ΠΈΠΌΠ° ΠΏΡ€Π΅Π΄Π²ΠΈΠ΄, Ρ‡Π΅ Π² ΠΏΠΎ-голямата си част цялата Π½ΠΈ инфраструктура ΠΎΡ‚ΠΈΠ²Π° Π² ΠΎΠ±Π»Π°Ρ†ΠΈΡ‚Π΅, систСмнитС ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ Π½Π° ΠΎΡ‚Π΄Π΅Π»Π΅Π½ хост Π²ΠΈΠ½Π°Π³ΠΈ изблСдняват Π½Π° Π·Π°Π΄Π΅Π½ ΠΏΠ»Π°Π½. Но Π² Π±Π°Π·ΠΈΡ‚Π΅ Π΄Π°Π½Π½ΠΈ Ρ‚Π΅ всС ΠΎΡ‰Π΅ са умСстни ΠΈ, Ρ€Π°Π·Π±ΠΈΡ€Π° сС, ΡΡŠΡ‰ΠΎ Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π΄Π° сС Π½Π°Π±Π»ΡŽΠ΄Π°Π²Π°Ρ‚ систСмнитС ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ.

Основи Π½Π° Π½Π°Π±Π»ΡŽΠ΄Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° PostgreSQL. АлСксСй ЛСсовски

Бъс систСмнитС ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ всичко Π΅ ΠΏΠΎΠ²Π΅Ρ‡Π΅ ΠΈΠ»ΠΈ ΠΏΠΎ-ΠΌΠ°Π»ΠΊΠΎ Π½Π°Ρ€Π΅Π΄, всички ΡΡŠΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΈ систСми Π·Π° ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³ Π²Π΅Ρ‡Π΅ ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ°Ρ‚ Ρ‚Π΅Π·ΠΈ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ, Π½ΠΎ ΠΊΠ°Ρ‚ΠΎ цяло някои ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΈ всС ΠΎΡ‰Π΅ Π½Π΅ са Π΄ΠΎΡΡ‚Π°Ρ‚ΡŠΡ‡Π½ΠΈ ΠΈ някои Π½Π΅Ρ‰Π° трябва Π΄Π° сС добавят. Π©Π΅ засСгна ΠΈ тях, няколко слайда Ρ‰Π΅ Π±ΡŠΠ΄Π°Ρ‚ Π·Π° тях.

Основи Π½Π° Π½Π°Π±Π»ΡŽΠ΄Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° PostgreSQL. АлСксСй ЛСсовски
ΠŸΡŠΡ€Π²Π°Ρ‚Π° Ρ‚ΠΎΡ‡ΠΊΠ° ΠΎΡ‚ ΠΏΠ»Π°Π½Π° Π΅ Π΄ΠΎΡΡ‚ΡŠΠΏΠ½ΠΎΡΡ‚Ρ‚Π°. Какво Π΅ Π΄ΠΎΡΡ‚ΡŠΠΏΠ½ΠΎΡΡ‚? Наличността спорСд ΠΌΠΎΠ΅Ρ‚ΠΎ Ρ€Π°Π·Π±ΠΈΡ€Π°Π½Π΅ Π΅ способността Π½Π° Π±Π°Π·Π°Ρ‚Π° Π΄Π° обслуТва Π²Ρ€ΡŠΠ·ΠΊΠΈ, тоСст Π±Π°Π·Π°Ρ‚Π° Π΅ ΠΏΠΎΠ²Π΄ΠΈΠ³Π½Π°Ρ‚Π°, тя ΠΊΠ°Ρ‚ΠΎ услуга ΠΏΡ€ΠΈΠ΅ΠΌΠ° Π²Ρ€ΡŠΠ·ΠΊΠΈ ΠΎΡ‚ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΈ. И Ρ‚Π°Π·ΠΈ Π΄ΠΎΡΡ‚ΡŠΠΏΠ½ΠΎΡΡ‚ ΠΌΠΎΠΆΠ΅ Π΄Π° сС ΠΎΡ†Π΅Π½ΠΈ ΠΏΠΎ някои характСристики. Π’Π΅Π·ΠΈ характСристики са ΠΌΠ½ΠΎΠ³ΠΎ ΡƒΠ΄ΠΎΠ±Π½ΠΈ Π·Π° ΠΏΠΎΠΊΠ°Π·Π²Π°Π½Π΅ Π½Π° Ρ‚Π°Π±Π»Π°Ρ‚Π°.

Основи Π½Π° Π½Π°Π±Π»ΡŽΠ΄Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° PostgreSQL. АлСксСй ЛСсовски
ВсСки Π·Π½Π°Π΅ ΠΊΠ°ΠΊΠ²ΠΎ прСдставляват Ρ‚Π°Π±Π»Π°Ρ‚Π°. Π’ΠΎΠ²Π° Π΅, ΠΊΠΎΠ³Π°Ρ‚ΠΎ Ρ…Π²ΡŠΡ€Π»ΠΈΡ‚Π΅ Π΅Π΄ΠΈΠ½ ΠΏΠΎΠ³Π»Π΅Π΄ към Π΅ΠΊΡ€Π°Π½Π°, ΠΊΠΎΠΉΡ‚ΠΎ ΠΎΠ±ΠΎΠ±Ρ‰Π°Π²Π° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠ°Ρ‚Π° информация. И Π²Π΅Ρ‡Π΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²Π΅Π΄Π½Π°Π³Π° Π΄Π° ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚Π΅ Π΄Π°Π»ΠΈ ΠΈΠΌΠ° ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ Π² Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ ΠΈΠ»ΠΈ Π½Π΅.
Π‘ΡŠΠΎΡ‚Π²Π΅Ρ‚Π½ΠΎ наличността Π½Π° Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈ ΠΊΠ»ΡŽΡ‡ΠΎΠ²ΠΈ характСристики трябва Π²ΠΈΠ½Π°Π³ΠΈ Π΄Π° сС поставят Π½Π° Ρ‚Π°Π±Π»Π°Ρ‚Π° Π·Π° ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅, Ρ‚Π°ΠΊΠ° Ρ‡Π΅ Ρ‚Π°Π·ΠΈ информация Π΄Π° Π΅ ΠΏΠΎΠ΄ Ρ€ΡŠΠΊΠ°, Π²ΠΈΠ½Π°Π³ΠΈ с вас. Някои Π΄ΠΎΠΏΡŠΠ»Π½ΠΈΡ‚Π΅Π»Π½ΠΈ подробности, ΠΊΠΎΠΈΡ‚ΠΎ Π²Π΅Ρ‡Π΅ ΠΏΠΎΠΌΠ°Π³Π°Ρ‚ ΠΏΡ€ΠΈ разслСдванСто Π½Π° ΠΈΠ½Ρ†ΠΈΠ΄Π΅Π½Ρ‚ΠΈ, ΠΏΡ€ΠΈ разслСдванСто Π½Π° някои ΠΈΠ·Π²ΡŠΠ½Ρ€Π΅Π΄Π½ΠΈ ситуации, Ρ‚Π΅ Π²Π΅Ρ‡Π΅ трябва Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ поставСни Π½Π° Π²Ρ‚ΠΎΡ€ΠΈΡ‡Π½ΠΈ Ρ‚Π°Π±Π»Π° Π·Π° ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ скрити във Π²Ρ€ΡŠΠ·ΠΊΠΈ Π·Π° Π΄Π΅Ρ‚Π°ΠΉΠ»ΠΈΠ·ΠΈΡ€Π°Π½Π΅, ΠΊΠΎΠΈΡ‚ΠΎ водят Π΄ΠΎ систСми Π·Π° наблюдСниС Π½Π° Ρ‚Ρ€Π΅Ρ‚ΠΈ страни.

Основи Π½Π° Π½Π°Π±Π»ΡŽΠ΄Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° PostgreSQL. АлСксСй ЛСсовски

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Π·Π° Π΅Π΄Π½Π° извСстна систСма Π·Π° наблюдСниС. Π’ΠΎΠ²Π° Π΅ ΠΌΠ½ΠΎΠ³ΠΎ Π³ΠΎΡ‚ΠΈΠ½Π° систСма Π·Π° наблюдСниС. Π‘ΡŠΠ±ΠΈΡ€Π° ΠΌΠ½ΠΎΠ³ΠΎ Π΄Π°Π½Π½ΠΈ, Π½ΠΎ ΠΎΡ‚ моя Π³Π»Π΅Π΄Π½Π° Ρ‚ΠΎΡ‡ΠΊΠ° ΠΈΠΌΠ° странна концСпция Π·Π° Ρ‚Π°Π±Π»Π° Π·Π° ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅. Има Π²Ρ€ΡŠΠ·ΠΊΠ° β€žΠ‘ΡŠΠ·Π΄Π°Π²Π°Π½Π΅ Π½Π° Ρ‚Π°Π±Π»ΠΎ Π·Π° ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅β€œ. Но ΠΊΠΎΠ³Π°Ρ‚ΠΎ ΡΡŠΠ·Π΄Π°Π²Π°Ρ‚Π΅ Ρ‚Π°Π±Π»ΠΎ Π·Π° ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅, ΡΡŠΠ·Π΄Π°Π²Π°Ρ‚Π΅ списък с Π΄Π²Π΅ ΠΊΠΎΠ»ΠΎΠ½ΠΈ, списък с Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΈ. И ΠΊΠΎΠ³Π°Ρ‚ΠΎ трябва Π΄Π° Ρ€Π°Π·Π³Π»Π΅Π΄Π°Ρ‚Π΅ Π½Π΅Ρ‰ΠΎ, Π·Π°ΠΏΠΎΡ‡Π²Π°Ρ‚Π΅ Π΄Π° Ρ†ΡŠΠΊΠ°Ρ‚Π΅, скролватС, Ρ‚ΡŠΡ€ΡΠΈΡ‚Π΅ с ΠΌΠΈΡˆΠΊΠ°Ρ‚Π° ΠΆΠ΅Π»Π°Π½Π°Ρ‚Π° Π³Ρ€Π°Ρ„ΠΈΠΊΠ°. И Ρ‚ΠΎΠ²Π° ΠΎΡ‚Π½Π΅ΠΌΠ° Π²Ρ€Π΅ΠΌΠ΅, Ρ‚.Π΅. няма Ρ‚Π°Π±Π»Π° ΠΊΠ°Ρ‚ΠΎ Ρ‚Π°ΠΊΠΈΠ²Π°. Има само ΡΠΏΠΈΡΡŠΡ†ΠΈ с Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ.

Основи Π½Π° Π½Π°Π±Π»ΡŽΠ΄Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° PostgreSQL. АлСксСй ЛСсовски

Какво трябва Π΄Π° сС Π΄ΠΎΠ±Π°Π²ΠΈ към Ρ‚Π΅Π·ΠΈ Ρ‚Π°Π±Π»Π° Π·Π° ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅? ΠœΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° Π·Π°ΠΏΠΎΡ‡Π½Π΅Ρ‚Π΅ с Ρ‚Π°ΠΊΠ°Π²Π° характСристика ΠΊΠ°Ρ‚ΠΎ Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ Π·Π° рСакция. PostgreSQL ΠΈΠΌΠ° ΠΈΠ·Π³Π»Π΅Π΄ pg_stat_statements. Π’ΠΎΠΉ Π΅ Π΄Π΅Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π°Π½ ΠΏΠΎ ΠΏΠΎΠ΄Ρ€Π°Π·Π±ΠΈΡ€Π°Π½Π΅, Π½ΠΎ Π΅ Π΅Π΄ΠΈΠ½ ΠΎΡ‚ Π²Π°ΠΆΠ½ΠΈΡ‚Π΅ систСмни ΠΈΠ·Π³Π»Π΅Π΄ΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ Π²ΠΈΠ½Π°Π³ΠΈ трябва Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π°Π½ΠΈ ΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ΠΈ. Π’ΠΎΠΉ ΡΡŠΡ…Ρ€Π°Π½ΡΠ²Π° информация Π·Π° всички изпълнявани заявки, ΠΊΠΎΠΈΡ‚ΠΎ са Π±ΠΈΠ»ΠΈ изпълнСни Π² Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ.

Π‘ΡŠΠΎΡ‚Π²Π΅Ρ‚Π½ΠΎ ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° Π·Π°ΠΏΠΎΡ‡Π½Π΅ΠΌ ΠΎΡ‚ Ρ„Π°ΠΊΡ‚Π°, Ρ‡Π΅ ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° Π²Π·Π΅ΠΌΠ΅ΠΌ ΠΎΠ±Ρ‰ΠΎΡ‚ΠΎ Π²Ρ€Π΅ΠΌΠ΅ Π·Π° изпълнСниС Π½Π° всички заявки ΠΈ Π΄Π° Π³ΠΎ Ρ€Π°Π·Π΄Π΅Π»ΠΈΠΌ Π½Π° броя заявки, ΠΊΠ°Ρ‚ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ Π³ΠΎΡ€Π½ΠΈΡ‚Π΅ ΠΏΠΎΠ»Π΅Ρ‚Π°. Но Ρ‚ΠΎΠ²Π° Π΅ Ρ‚Π°ΠΊΠ°Π²Π° срСдна Ρ‚Π΅ΠΌΠΏΠ΅Ρ€Π°Ρ‚ΡƒΡ€Π° Π² Π±ΠΎΠ»Π½ΠΈΡ†Π°Ρ‚Π°. МоТСм Π΄Π° Π³Ρ€Π°Π΄ΠΈΠΌ Π²ΡŠΡ€Ρ…Ρƒ Π΄Ρ€ΡƒΠ³ΠΈ ΠΏΠΎΠ»Π΅Ρ‚Π° - ΠΌΠΈΠ½ΠΈΠΌΠ°Π»Π½ΠΎΡ‚ΠΎ Π²Ρ€Π΅ΠΌΠ΅ Π·Π° изпълнСниС Π½Π° заявката, максималното ΠΈ ΠΌΠ΅Π΄ΠΈΠ°Π½Π°Ρ‚Π°. И Π΄ΠΎΡ€ΠΈ ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° ΠΈΠ·Π³Ρ€Π°Π΄ΠΈΠΌ ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚ΠΈΠ»ΠΈ, PostgreSQL ΠΈΠΌΠ° ΡΡŠΠΎΡ‚Π²Π΅Ρ‚Π½ΠΈΡ‚Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π·Π° Ρ‚ΠΎΠ²Π°. И ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ някои числа, ΠΊΠΎΠΈΡ‚ΠΎ Ρ…Π°Ρ€Π°ΠΊΡ‚Π΅Ρ€ΠΈΠ·ΠΈΡ€Π°Ρ‚ Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ Π·Π° ΠΎΡ‚Π³ΠΎΠ²ΠΎΡ€ Π½Π° Π½Π°ΡˆΠ°Ρ‚Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ Π·Π° Π²Π΅Ρ‡Π΅ Π·Π°Π²ΡŠΡ€ΡˆΠ΅Π½ΠΈ заявки, Ρ‚.Π΅. Π½ΠΈΠ΅ Π½Π΅ изпълнявамС Ρ„Π°Π»ΡˆΠΈΠ²Π°Ρ‚Π° заявка β€žΠΈΠ·Π±Π΅Ρ€Π΅Ρ‚Π΅ 1β€œ ΠΈ Π½Π΅ наблюдавамС Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ Π·Π° ΠΎΡ‚Π³ΠΎΠ²ΠΎΡ€, Π½ΠΎ Π°Π½Π°Π»ΠΈΠ·ΠΈΡ€Π°ΠΌΠ΅ Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ Π·Π° ΠΎΡ‚Π³ΠΎΠ²ΠΎΡ€ Π·Π° Π²Π΅Ρ‡Π΅ Π·Π°Π²ΡŠΡ€ΡˆΠ΅Π½ΠΈ заявки ΠΈ рисувамС ΠΈΠ»ΠΈ ΠΎΡ‚Π΄Π΅Π»Π½Π° Ρ„ΠΈΠ³ΡƒΡ€Π° ΠΈΠ»ΠΈ ΠΈΠ·Π³Ρ€Π°ΠΆΠ΄Π°ΠΌΠ΅ Π³Ρ€Π°Ρ„ΠΈΠΊΠ° въз основа Π½Π° нСя.

Π‘ΡŠΡ‰ΠΎ Ρ‚Π°ΠΊΠ° Π΅ Π²Π°ΠΆΠ½ΠΎ Π΄Π° слСдитС броя Π½Π° Π³Ρ€Π΅ΡˆΠΊΠΈΡ‚Π΅, ΠΊΠΎΠΈΡ‚ΠΎ систСмата Π³Π΅Π½Π΅Ρ€ΠΈΡ€Π° Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚Π°. И Π·Π° Ρ‚ΠΎΠ²Π° ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚Π΅ ΠΈΠ·Π³Π»Π΅Π΄Π° pg_stat_database. НасочвамС сС към ΠΏΠΎΠ»Π΅Ρ‚ΠΎ xact_rollback. Π’ΠΎΠ²Π° ΠΏΠΎΠ»Π΅ Π½Π΅ само ΠΏΠΎΠΊΠ°Π·Π²Π° броя Π½Π° Π²Ρ€ΡŠΡ‰Π°Π½ΠΈΡΡ‚Π°, ΠΊΠΎΠΈΡ‚ΠΎ сС случват Π² Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ, Π½ΠΎ ΡΡŠΡ‰ΠΎ Ρ‚Π°ΠΊΠ° Π²Π·Π΅ΠΌΠ° ΠΏΡ€Π΅Π΄Π²ΠΈΠ΄ броя Π½Π° Π³Ρ€Π΅ΡˆΠΊΠΈΡ‚Π΅. ΠžΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»Π½ΠΎ ΠΊΠ°Π·Π°Π½ΠΎ, ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° ΠΏΠΎΠΊΠ°ΠΆΠ΅ΠΌ Ρ‚Π°Π·ΠΈ Ρ†ΠΈΡ„Ρ€Π° Π² Π½Π°ΡˆΠ΅Ρ‚ΠΎ Ρ‚Π°Π±Π»ΠΎ ΠΈ Π΄Π° Π²ΠΈΠ΄ΠΈΠΌ ΠΊΠΎΠ»ΠΊΠΎ Π³Ρ€Π΅ΡˆΠΊΠΈ ΠΈΠΌΠ°ΠΌΠ΅ Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚Π°. Ако ΠΈΠΌΠ° ΠΌΠ½ΠΎΠ³ΠΎ Π³Ρ€Π΅ΡˆΠΊΠΈ, Ρ‚ΠΎΠ²Π° Π²Π΅Ρ‡Π΅ Π΅ Π΄ΠΎΠ±Ρ€Π° ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π° Π΄Π° ΠΏΠΎΠ³Π»Π΅Π΄Π½Π΅Ρ‚Π΅ Π² рСгистрационнитС Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅ ΠΈ Π΄Π° Π²ΠΈΠ΄ΠΈΡ‚Π΅ ΠΊΠ°ΠΊΠ²ΠΈ са Π³Ρ€Π΅ΡˆΠΊΠΈΡ‚Π΅ ΠΈ Π·Π°Ρ‰ΠΎ сС появяват, слСд ΠΊΠΎΠ΅Ρ‚ΠΎ Π΄Π° инвСстиратС ΠΈ Π΄Π° Π³ΠΈ Ρ€Π°Π·Ρ€Π΅ΡˆΠΈΡ‚Π΅.

Основи Π½Π° Π½Π°Π±Π»ΡŽΠ΄Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° PostgreSQL. АлСксСй ЛСсовски

ΠœΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° Π΄ΠΎΠ±Π°Π²ΠΈΡ‚Π΅ Ρ‚Π°ΠΊΠΎΠ²Π° Π½Π΅Ρ‰ΠΎ ΠΊΠ°Ρ‚ΠΎ Ρ‚Π°Ρ…ΠΎΠΌΠ΅Ρ‚ΡŠΡ€. Π’ΠΎΠ²Π° са броят Π½Π° Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈΡ‚Π΅ Π² сСкунда ΠΈ броят Π½Π° заявкитС Π² сСкунда. ΠžΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»Π½ΠΎ ΠΊΠ°Π·Π°Π½ΠΎ, ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚Π΅ Ρ‚Π΅Π·ΠΈ числа ΠΊΠ°Ρ‚ΠΎ Ρ‚Π΅ΠΊΡƒΡ‰Π°Ρ‚Π° производитСлност Π½Π° Π²Π°ΡˆΠ°Ρ‚Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ ΠΈ Π΄Π° Π½Π°Π±Π»ΡŽΠ΄Π°Π²Π°Ρ‚Π΅ Π΄Π°Π»ΠΈ ΠΈΠΌΠ° ΠΏΠΈΠΊΠΎΠ²Π΅ Π² заявкитС, ΠΏΠΈΠΊΠΎΠ²Π΅ Π² Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈΡ‚Π΅ ΠΈΠ»ΠΈ, ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ, Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ Π΅ Π½Π΅Π΄ΠΎΡΡ‚Π°Ρ‚ΡŠΡ‡Π½ΠΎ Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π΅Π½Π°, Π·Π°Ρ‰ΠΎΡ‚ΠΎ някакъв Π²ΠΈΠ΄ Π±Π΅ΠΊΠ΅Π½Π΄ Π΅ ΠΏΠ°Π΄Π½Π°Π». Π’Π°ΠΆΠ½ΠΎ Π΅ Π²ΠΈΠ½Π°Π³ΠΈ Π΄Π° Π³Π»Π΅Π΄Π°Ρ‚Π΅ Ρ‚Π°Π·ΠΈ Ρ†ΠΈΡ„Ρ€Π° ΠΈ Π΄Π° ΠΏΠΎΠΌΠ½ΠΈΡ‚Π΅, Ρ‡Π΅ Π·Π° нашия ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Ρ‚Π°ΠΊΠΎΠ²Π° прСдставянС Π΅ Π½ΠΎΡ€ΠΌΠ°Π»Π½ΠΎ, Π° стойноститС ΠΎΡ‚Π³ΠΎΡ€Π΅ ΠΈ ΠΎΡ‚Π΄ΠΎΠ»Ρƒ Π²Π΅Ρ‡Π΅ са някакви ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π½ΠΈ ΠΈ Π½Π΅Ρ€Π°Π·Π±ΠΈΡ€Π°Π΅ΠΌΠΈ, ΠΊΠΎΠ΅Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π²Π°, Ρ‡Π΅ трябва Π΄Π° Ρ€Π°Π·Π³Π»Π΅Π΄Π°ΠΌΠ΅ Π·Π°Ρ‰ΠΎ Ρ‚Π°ΠΊΠΈΠ²Π° числа .

Π—Π° Π΄Π° ΠΎΡ†Π΅Π½ΠΈΠΌ броя Π½Π° Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈΡ‚Π΅, ΠΌΠΎΠΆΠ΅ΠΌ ΠΎΡ‚Π½ΠΎΠ²ΠΎ Π΄Π° сС ΠΎΠ±ΡŠΡ€Π½Π΅ΠΌ към ΠΈΠ·Π³Π»Π΅Π΄Π° pg_stat_database. МоТСм Π΄Π° Π΄ΠΎΠ±Π°Π²ΠΈΠΌ броя Π½Π° Π°Π½Π³Π°ΠΆΠΈΠΌΠ΅Π½Ρ‚ΠΈΡ‚Π΅ ΠΈ броя Π½Π° Π²Ρ€ΡŠΡ‰Π°Π½ΠΈΡΡ‚Π°, Π·Π° Π΄Π° ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ броя Π½Π° Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈΡ‚Π΅ Π² сСкунда.

ВсСки Ρ€Π°Π·Π±ΠΈΡ€Π°, Ρ‡Π΅ няколко заявки ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° сС ΠΏΠΎΠ±Π΅Ρ€Π°Ρ‚ Π² Π΅Π΄Π½Π° транзакция? Π‘Π»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»Π½ΠΎ TPS ΠΈ QPS са ΠΌΠ°Π»ΠΊΠΎ ΠΏΠΎ-Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ.

Броят Π½Π° заявкитС Π² сСкунда ΠΌΠΎΠΆΠ΅ Π΄Π° сС ΠΏΠΎΠ»ΡƒΡ‡ΠΈ ΠΎΡ‚ pg_stat_statements ΠΈ просто Π΄Π° сС изчисли сумата Π½Π° всички изпълнСни заявки. Ясно Π΅, Ρ‡Π΅ сравнявамС Ρ‚Π΅ΠΊΡƒΡ‰Π°Ρ‚Π° стойност с ΠΏΡ€Π΅Π΄ΠΈΡˆΠ½Π°Ρ‚Π°, ΠΈΠ·Π²Π°ΠΆΠ΄Π°ΠΌΠ΅, ΠΏΠΎΠ»ΡƒΡ‡Π°Π²Π°ΠΌΠ΅ Π΄Π΅Π»Ρ‚Π°, ΠΏΠΎΠ»ΡƒΡ‡Π°Π²Π°ΠΌΠ΅ сумата.

Основи Π½Π° Π½Π°Π±Π»ΡŽΠ΄Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° PostgreSQL. АлСксСй ЛСсовски

ΠœΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° Π΄ΠΎΠ±Π°Π²ΠΈΡ‚Π΅ Π΄ΠΎΠΏΡŠΠ»Π½ΠΈΡ‚Π΅Π»Π½ΠΈ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ, Π°ΠΊΠΎ ΠΆΠ΅Π»Π°Π΅Ρ‚Π΅, ΠΊΠΎΠΈΡ‚ΠΎ ΡΡŠΡ‰ΠΎ ΠΏΠΎΠΌΠ°Π³Π°Ρ‚ Π΄Π° сС ΠΎΡ†Π΅Π½ΠΈ наличността Π½Π° Π½Π°ΡˆΠ°Ρ‚Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ ΠΈ Π΄Π° сС прослСди Π΄Π°Π»ΠΈ Π΅ ΠΈΠΌΠ°Π»ΠΎ ΠΏΡ€Π΅ΠΊΡŠΡΠ²Π°Π½Π΅.

Π•Π΄ΠΈΠ½ ΠΎΡ‚ Ρ‚Π΅Π·ΠΈ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ Π΅ Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ Π·Π° Ρ€Π°Π±ΠΎΡ‚Π°. Но Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ Π·Π° Ρ€Π°Π±ΠΎΡ‚Π° Π² PostgreSQL Π΅ ΠΌΠ°Π»ΠΊΠΎ слоТно. Π©Π΅ Ρ‚ΠΈ ΠΊΠ°ΠΆΠ° Π·Π°Ρ‰ΠΎ. ΠšΠΎΠ³Π°Ρ‚ΠΎ PostgreSQL стартира, Ρ‚ΠΎΠΉ Π·Π°ΠΏΠΎΡ‡Π²Π° Π΄Π° ΠΎΡ‚Ρ‡ΠΈΡ‚Π° Π²Ρ€Π΅ΠΌΠ΅ Π·Π° Ρ€Π°Π±ΠΎΡ‚Π°. Но Π°ΠΊΠΎ Π² Π΄Π°Π΄Π΅Π½ ΠΌΠΎΠΌΠ΅Π½Ρ‚, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, някаква Π·Π°Π΄Π°Ρ‡Π° сС изпълнявашС ΠΏΡ€Π΅Π· Π½ΠΎΡ‰Ρ‚Π°, Π΄ΠΎΠΉΠ΄Π΅ OOM-ΡƒΠ±ΠΈΠ΅Ρ† ΠΈ ΠΏΡ€ΠΈΠ½ΡƒΠ΄ΠΈΡ‚Π΅Π»Π½ΠΎ ΠΏΡ€Π΅ΠΊΡ€Π°Ρ‚ΠΈ Π΄ΡŠΡ‰Π΅Ρ€Π½ΠΈΡ процСс Π½Π° PostgreSQL, Ρ‚ΠΎΠ³Π°Π²Π° Π² Ρ‚ΠΎΠ·ΠΈ случай PostgreSQL прСкратява Π²Ρ€ΡŠΠ·ΠΊΠ°Ρ‚Π° Π½Π° всички ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΈ, Π½ΡƒΠ»ΠΈΡ€Π° областта Π½Π° ΡˆΠ°Ρ€Π΄ΠΈΡ€Π°Π½Π°Ρ‚Π° ΠΏΠ°ΠΌΠ΅Ρ‚ ΠΈ Π·Π°ΠΏΠΎΡ‡Π²Π° Π²ΡŠΠ·ΡΡ‚Π°Π½ΠΎΠ²ΡΠ²Π°Π½Π΅ ΠΎΡ‚ послСдната ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π½Π° Ρ‚ΠΎΡ‡ΠΊΠ°. И Π΄ΠΎΠΊΠ°Ρ‚ΠΎ Ρ‚Ρ€Π°Π΅ Ρ‚ΠΎΠ²Π° Π²ΡŠΠ·ΡΡ‚Π°Π½ΠΎΠ²ΡΠ²Π°Π½Π΅ ΠΎΡ‚ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π½Π°Ρ‚Π° Ρ‚ΠΎΡ‡ΠΊΠ°, Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ Π½Π΅ ΠΏΡ€ΠΈΠ΅ΠΌΠ° Π²Ρ€ΡŠΠ·ΠΊΠΈ, тоСст Ρ‚Π°Π·ΠΈ ситуация ΠΌΠΎΠΆΠ΅ Π΄Π° сС ΠΎΡ†Π΅Π½ΠΈ ΠΊΠ°Ρ‚ΠΎ прСстой. Но Ρ‚ΠΎΠ²Π° няма Π΄Π° Π½ΡƒΠ»ΠΈΡ€Π° брояча Π½Π° Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ Π·Π° Ρ€Π°Π±ΠΎΡ‚Π°, Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ Ρ‚ΠΎΠΉ Π²Π·Π΅ΠΌΠ° ΠΏΡ€Π΅Π΄Π²ΠΈΠ΄ Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ, Π² ΠΊΠΎΠ΅Ρ‚ΠΎ postmaster Π΅ стартиран ΠΎΡ‚ ΠΏΡŠΡ€Π²ΠΈΡ ΠΌΠΎΠΌΠ΅Π½Ρ‚. Π‘Π»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»Π½ΠΎ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΈ ситуации ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ пропуснати.

Врябва ΡΡŠΡ‰ΠΎ Ρ‚Π°ΠΊΠ° Π΄Π° Π½Π°Π±Π»ΡŽΠ΄Π°Π²Π°Ρ‚Π΅ броя Π½Π° Ρ€Π°Π±ΠΎΡ‚Π΅Ρ‰ΠΈΡ‚Π΅ с прахосмукачки. ВсСки Π·Π½Π°Π΅ ΠΊΠ°ΠΊΠ²ΠΎ Π΅ Π°Π²Ρ‚ΠΎΠ²Π°ΠΊΡƒΡƒΠΌ Π² PostgreSQL? Π’ΠΎΠ²Π° Π΅ интСрСсна подсистСма Π² PostgreSQL. Π—Π° Ρ‚ΠΎΠ²Π° са написани ΠΌΠ½ΠΎΠ³ΠΎ статии, Π½Π°ΠΏΡ€Π°Π²Π΅Π½ΠΈ са ΠΌΠ½ΠΎΠ³ΠΎ Π΄ΠΎΠΊΠ»Π°Π΄ΠΈ. Много дискусии Π·Π° Π²Π°ΠΊΡƒΡƒΠΌΠ°, ΠΊΠ°ΠΊ трябва Π΄Π° Ρ€Π°Π±ΠΎΡ‚ΠΈ. Мнозина Π³ΠΎ смятат Π·Π° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π·Π»ΠΎ. Но Π΅. Π’ΠΎΠ²Π° Π΅ някакъв Π²ΠΈΠ΄ ΡΡŠΠ±ΠΈΡ€Π°Ρ‡ Π½Π° Π±ΠΎΠΊΠ»ΡƒΠΊ, ΠΊΠΎΠΉΡ‚ΠΎ почиства остарСли вСрсии Π½Π° Ρ€Π΅Π΄ΠΎΠ²Π΅, ΠΊΠΎΠΈΡ‚ΠΎ Π½Π΅ са Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΈ Π½Π° никоя ΠΎΡ‚ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈΡ‚Π΅, ΠΈ освобоТдава място Π² Ρ‚Π°Π±Π»ΠΈΡ†ΠΈΡ‚Π΅ ΠΈ индСкситС Π·Π° Π½ΠΎΠ²ΠΈ Ρ€Π΅Π΄ΠΎΠ²Π΅.

Π—Π°Ρ‰ΠΎ трябва Π΄Π° сС наблюдава? Π—Π°Ρ‰ΠΎΡ‚ΠΎ Π²Π°ΠΊΡƒΡƒΠΌΡŠΡ‚ понякога ΠΌΠ½ΠΎΠ³ΠΎ Π±ΠΎΠ»ΠΈ. ΠšΠΎΠ½ΡΡƒΠΌΠΈΡ€Π° голямо количСство рСсурси ΠΈ клиСнтскитС заявки Π·Π°ΠΏΠΎΡ‡Π²Π°Ρ‚ Π΄Π° страдат ΠΎΡ‚ Ρ‚ΠΎΠ²Π°.

И трябва Π΄Π° сС наблюдава Ρ‡Ρ€Π΅Π· ΠΈΠ·Π³Π»Π΅Π΄Π° pg_stat_activity, Π·Π° ΠΊΠΎΠΉΡ‚ΠΎ Ρ‰Π΅ говоря Π² слСдващия Ρ€Π°Π·Π΄Π΅Π». Π’ΠΎΠ·ΠΈ ΠΈΠ·Π³Π»Π΅Π΄ ΠΏΠΎΠΊΠ°Π·Π²Π° Ρ‚Π΅ΠΊΡƒΡ‰Π°Ρ‚Π° дСйност Π² Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ. И Ρ‡Ρ€Π΅Π· Ρ‚Π°Π·ΠΈ дСйност ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° прослСдим броя Π½Π° Π²Π°ΠΊΡƒΡƒΠΌΠΈΡ‚Π΅, ΠΊΠΎΠΈΡ‚ΠΎ работят Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚Π°. МоТСм Π΄Π° наблюдавамС Π²Π°ΠΊΡƒΡƒΠΌΠΈΡ‚Π΅ ΠΈ Π΄Π° Π²ΠΈΠ΄ΠΈΠΌ, Ρ‡Π΅ Π°ΠΊΠΎ смС ΠΏΡ€Π΅Π²ΠΈΡˆΠΈΠ»ΠΈ Π»ΠΈΠΌΠΈΡ‚Π°, Ρ‚ΠΎΠ²Π° Π΅ ΠΏΠΎΠ²ΠΎΠ΄ Π΄Π° ΠΏΠΎΠ³Π»Π΅Π΄Π½Π΅ΠΌ Π² настройкитС Π½Π° PostgreSQL ΠΈ ΠΏΠΎ някакъв Π½Π°Ρ‡ΠΈΠ½ Π΄Π° ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€Π°ΠΌΠ΅ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚Π° Π½Π° Π²Π°ΠΊΡƒΡƒΠΌΠ°.

Π”Ρ€ΡƒΠ³Π° особСност Π½Π° PostgreSQL Π΅, Ρ‡Π΅ PostgreSQL Π΅ ΠΌΠ½ΠΎΠ³ΠΎ Π±ΠΎΠ»Π΅Π½ ΠΎΡ‚ дълги Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ. ОсобСно ΠΎΡ‚ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ висят дълго Π²Ρ€Π΅ΠΌΠ΅ ΠΈ Π½Π΅ правят Π½ΠΈΡ‰ΠΎ. Π’ΠΎΠ²Π° са Ρ‚Π°ΠΊΠ° Π½Π°Ρ€Π΅Ρ‡Π΅Π½ΠΈΡ‚Π΅ stat idle-in-transaction. Π’Π°ΠΊΠ°Π²Π° транзакция Π΄ΡŠΡ€ΠΆΠΈ ΠΊΠ»ΡŽΡ‡Π°Π»ΠΊΠΈ, прСдотвратява Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚Π° Π½Π° Π²Π°ΠΊΡƒΡƒΠΌΠ°. И Π² Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ - маситС сС ΠΈΠ·Π΄ΡƒΠ²Π°Ρ‚, ΡƒΠ²Π΅Π»ΠΈΡ‡Π°Π²Π°Ρ‚ сС. И заявкитС, ΠΊΠΎΠΈΡ‚ΠΎ работят с Ρ‚Π΅Π·ΠΈ Ρ‚Π°Π±Π»ΠΈΡ†ΠΈ, Π·Π°ΠΏΠΎΡ‡Π²Π°Ρ‚ Π΄Π° работят ΠΏΠΎ-Π±Π°Π²Π½ΠΎ, Π·Π°Ρ‰ΠΎΡ‚ΠΎ трябва Π΄Π° ΠΏΡ€Π΅Ρ…Π²ΡŠΡ€Π»ΠΈΡ‚Π΅ всички стари вСрсии Π½Π° Ρ€Π΅Π΄ΠΎΠ²Π΅ ΠΎΡ‚ ΠΏΠ°ΠΌΠ΅Ρ‚Ρ‚Π° Π½Π° диска ΠΈ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ. Π‘Π»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»Π½ΠΎ Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ, ΠΏΡ€ΠΎΠ΄ΡŠΠ»ΠΆΠΈΡ‚Π΅Π»Π½ΠΎΡΡ‚Ρ‚Π° Π½Π° Π½Π°ΠΉ-Π΄ΡŠΠ»Π³ΠΈΡ‚Π΅ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ, Π½Π°ΠΉ-Π΄ΡŠΠ»Π³ΠΈΡ‚Π΅ заявки Π·Π° Π²Π°ΠΊΡƒΡƒΠΌ ΡΡŠΡ‰ΠΎ трябва Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ наблюдавани. И Π°ΠΊΠΎ Π²ΠΈΠ΄ΠΈΠΌ някои процСси, ΠΊΠΎΠΈΡ‚ΠΎ сС ΠΈΠ·ΠΏΡŠΠ»Π½ΡΠ²Π°Ρ‚ ΠΌΠ½ΠΎΠ³ΠΎ дълго Π²Ρ€Π΅ΠΌΠ΅, ΠΏΠΎΠ²Π΅Ρ‡Π΅ ΠΎΡ‚ 10-20-30 ΠΌΠΈΠ½ΡƒΡ‚ΠΈ Π·Π° OLTP Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅, Ρ‚ΠΎΠ³Π°Π²Π° трябва Π΄Π° ΠΈΠΌ ΠΎΠ±ΡŠΡ€Π½Π΅ΠΌ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΠΈ Π΄Π° Π³ΠΈ ΠΏΡ€ΠΈΠ½ΡƒΠ΄ΠΈΠΌ Π΄Π° ΠΏΡ€ΠΈΠΊΠ»ΡŽΡ‡Π°Ρ‚ ΠΈΠ»ΠΈ Π΄Π° ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€Π°ΠΌΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ, Ρ‚Π°ΠΊΠ° Ρ‡Π΅ Ρ‚Π΅ Π½Π΅ сС Π½Π°Ρ€ΠΈΡ‡Π°Ρ‚ ​​и Π½Π΅ висят Ρ‚ΠΎΠ»ΠΊΠΎΠ²Π° дълго. Π—Π° Π°Π½Π°Π»ΠΈΡ‚ΠΈΡ‡Π½ΠΎ Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅ Π΅ Π½ΠΎΡ€ΠΌΠ°Π»Π½ΠΎ 10-20-30 ΠΌΠΈΠ½ΡƒΡ‚ΠΈ, ΠΈΠΌΠ° ΠΈ ΠΏΠΎ-дълги.

Основи Π½Π° Π½Π°Π±Π»ΡŽΠ΄Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° PostgreSQL. АлСксСй ЛСсовски
Π‘Π»Π΅Π΄ Ρ‚ΠΎΠ²Π° ΠΈΠΌΠ°ΠΌΠ΅ опцията със ΡΠ²ΡŠΡ€Π·Π°Π½ΠΈ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΈ. ΠšΠΎΠ³Π°Ρ‚ΠΎ Π²Π΅Ρ‡Π΅ смС Ρ„ΠΎΡ€ΠΌΠΈΡ€Π°Π»ΠΈ Ρ‚Π°Π±Π»ΠΎ Π·Π° ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅, ΠΏΡƒΠ±Π»ΠΈΠΊΡƒΠ²Π°Π»ΠΈ смС ΠΊΠ»ΡŽΡ‡ΠΎΠ²ΠΈ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ Π·Π° Π΄ΠΎΡΡ‚ΡŠΠΏΠ½ΠΎΡΡ‚ Π² Π½Π΅Π³ΠΎ, ΠΌΠΎΠΆΠ΅ΠΌ ΡΡŠΡ‰ΠΎ Π΄Π° Π΄ΠΎΠ±Π°Π²ΠΈΠΌ Π΄ΠΎΠΏΡŠΠ»Π½ΠΈΡ‚Π΅Π»Π½Π° информация Π·Π° ΡΠ²ΡŠΡ€Π·Π°Π½ΠΈΡ‚Π΅ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΈ Ρ‚Π°ΠΌ.

Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡΡ‚Π° Π·Π° ΡΠ²ΡŠΡ€Π·Π°Π½ΠΈΡ‚Π΅ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΈ Π΅ Π²Π°ΠΆΠ½Π°, Π·Π°Ρ‰ΠΎΡ‚ΠΎ ΠΎΡ‚ Π³Π»Π΅Π΄Π½Π° Ρ‚ΠΎΡ‡ΠΊΠ° Π½Π° PostgreSQL ΠΈΠΌΠ° Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ Ρ‚ΠΈΠΏΠΎΠ²Π΅ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΈ. Има Π΄ΠΎΠ±Ρ€ΠΈ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΈ ΠΈ ΠΈΠΌΠ° лоши ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΈ.

ΠŸΡ€ΠΎΡΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€. Под ΠΊΠ»ΠΈΠ΅Π½Ρ‚ ΠΈΠΌΠ°ΠΌ ΠΏΡ€Π΅Π΄Π²ΠΈΠ΄ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ. ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ сС Π΅ ΡΠ²ΡŠΡ€Π·Π°Π»ΠΎ с Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ ΠΈ Π²Π΅Π΄Π½Π°Π³Π° Π·Π°ΠΏΠΎΡ‡Π²Π° Π΄Π° ΠΈΠ·ΠΏΡ€Π°Ρ‰Π° своитС заявки Ρ‚Π°ΠΌ, Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ Π³ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π²Π° ΠΈ изпълнява ΠΈ Π²Ρ€ΡŠΡ‰Π° Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ΠΈΡ‚Π΅ Π½Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π’ΠΎΠ²Π° са Π΄ΠΎΠ±Ρ€ΠΈ ΠΈ ΠΊΠΎΡ€Π΅ΠΊΡ‚Π½ΠΈ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΈ.

Има ситуации, ΠΏΡ€ΠΈ ΠΊΠΎΠΈΡ‚ΠΎ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΡŠΡ‚ Π΅ ΡΠ²ΡŠΡ€Π·Π°Π½, ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ° Π²Ρ€ΡŠΠ·ΠΊΠ°Ρ‚Π°, Π½ΠΎ Π½Π΅ ΠΏΡ€Π°Π²ΠΈ Π½ΠΈΡ‰ΠΎ. Π’ Π½Π΅Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ ΡΡŠΡΡ‚ΠΎΡΠ½ΠΈΠ΅ Π΅.

Но ΠΈΠΌΠ° лоши ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΈ. НапримСр ΡΡŠΡ‰ΠΈΡΡ‚ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ сС ΡΠ²ΡŠΡ€Π·Π°, ΠΎΡ‚Π²ΠΎΡ€ΠΈ транзакция, Π½Π°ΠΏΡ€Π°Π²ΠΈ Π½Π΅Ρ‰ΠΎ Π² Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ ΠΈ слСд Ρ‚ΠΎΠ²Π° Π²Π»Π΅Π·Π΅ Π² ΠΊΠΎΠ΄Π°, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π·Π° Π΄ΠΎΡΡ‚ΡŠΠΏ Π΄ΠΎ външСн ΠΈΠ·Ρ‚ΠΎΡ‡Π½ΠΈΠΊ ΠΈΠ»ΠΈ Π·Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π½Π° ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΡ‚Π΅ Π΄Π°Π½Π½ΠΈ Ρ‚Π°ΠΌ. Но Π² ΡΡŠΡ‰ΠΎΡ‚ΠΎ Π²Ρ€Π΅ΠΌΠ΅ Ρ‚ΠΎΠΉ Π½Π΅ Π·Π°Ρ‚Π²ΠΎΡ€ΠΈ сдСлката. И транзакцията виси Π² Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ ΠΈ Π΄ΡŠΡ€ΠΆΠΈ ΠΊΠ»ΡŽΡ‡Π°Π»ΠΊΠ°Ρ‚Π° Π½Π° линията. Π’ΠΎΠ²Π° Π΅ лошо ΡΡŠΡΡ‚ΠΎΡΠ½ΠΈΠ΅. И Π°ΠΊΠΎ Π²Π½Π΅Π·Π°ΠΏΠ½ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ някъдС Π²ΡŠΡ‚Ρ€Π΅ Π² Π½Π΅Π³ΠΎ ΠΏΠΎΠΏΠ°Π΄Π½Π΅ ΠΏΠΎ ΠΈΠ·ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ (Exception), Ρ‚ΠΎΠ³Π°Π²Π° транзакцията ΠΌΠΎΠΆΠ΅ Π΄Π° останС ΠΎΡ‚Π²ΠΎΡ€Π΅Π½Π° Π·Π° ΠΌΠ½ΠΎΠ³ΠΎ дълго Π²Ρ€Π΅ΠΌΠ΅. И Ρ‚ΠΎΠ²Π° пряко влияС Π²ΡŠΡ€Ρ…Ρƒ производитСлността Π½Π° PostgreSQL. PostgreSQL Ρ‰Π΅ Ρ€Π°Π±ΠΎΡ‚ΠΈ ΠΏΠΎ-Π±Π°Π²Π½ΠΎ. Π•Ρ‚ΠΎ Π·Π°Ρ‰ΠΎ Π΅ Π²Π°ΠΆΠ½ΠΎ Π΄Π° сС прослСдят Π½Π°Π²Ρ€Π΅ΠΌΠ΅ Ρ‚Π°ΠΊΠΈΠ²Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΈ ΠΈ Π΄Π° сС ΠΏΡ€Π΅ΠΊΡ€Π°Ρ‚ΠΈ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚Π° ΠΈΠΌ ΠΏΡ€ΠΈΠ½ΡƒΠ΄ΠΈΡ‚Π΅Π»Π½ΠΎ. И трябва Π΄Π° ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€Π°Ρ‚Π΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ си, Π·Π° Π΄Π° няма Ρ‚Π°ΠΊΠΈΠ²Π° ситуации.

Π”Ρ€ΡƒΠ³ΠΈ лоши ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΈ са Ρ‡Π°ΠΊΠ°Ρ‰ΠΈ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΈ. Но Ρ‚Π΅ стават лоши ΠΏΠΎΡ€Π°Π΄ΠΈ обстоятСлствата. НапримСр проста Π½Π΅Π°ΠΊΡ‚ΠΈΠ²Π½Π° транзакция: ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΎΡ‚Π²ΠΎΡ€ΠΈ транзакция, Π΄Π° Π·Π°ΠΊΠ»ΡŽΡ‡ΠΈ някои Ρ€Π΅Π΄ΠΎΠ²Π΅, слСд ΠΊΠΎΠ΅Ρ‚ΠΎ Ρ‰Π΅ ΠΏΠ°Π΄Π½Π΅ някъдС Π² ΠΊΠΎΠ΄Π°, оставяйки висяща транзакция. Π”Ρ€ΡƒΠ³ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ Ρ‰Π΅ Π΄ΠΎΠΉΠ΄Π΅, Ρ‰Π΅ поиска ΡΡŠΡ‰ΠΈΡ‚Π΅ Π΄Π°Π½Π½ΠΈ, Π½ΠΎ Ρ‰Π΅ срСщнС Π·Π°ΠΊΠ»ΡŽΡ‡Π²Π°Π½Π΅, Π·Π°Ρ‰ΠΎΡ‚ΠΎ Ρ‚Π°Π·ΠΈ висяща транзакция Π²Π΅Ρ‡Π΅ Π΄ΡŠΡ€ΠΆΠΈ ΠΊΠ»ΡŽΡ‡Π°Π»ΠΊΠΈ Π½Π° някои Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΈ Ρ€Π΅Π΄ΠΎΠ²Π΅. И Π²Ρ‚ΠΎΡ€Π°Ρ‚Π° транзакция Ρ‰Π΅ виси Π² ΠΎΡ‡Π°ΠΊΠ²Π°Π½Π΅, ΠΊΠΎΠ³Π°Ρ‚ΠΎ ΠΏΡŠΡ€Π²Π°Ρ‚Π° транзакция ΠΏΡ€ΠΈΠΊΠ»ΡŽΡ‡ΠΈ ΠΈΠ»ΠΈ нСйният администратор ΠΏΡ€ΠΈΠ½ΡƒΠ΄ΠΈΡ‚Π΅Π»Π½ΠΎ я Π·Π°Ρ‚Π²ΠΎΡ€ΠΈ. По Ρ‚ΠΎΠ·ΠΈ Π½Π°Ρ‡ΠΈΠ½ Ρ‡Π°ΠΊΠ°Ρ‰ΠΈΡ‚Π΅ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° сС Π½Π°Ρ‚Ρ€ΡƒΠΏΠ°Ρ‚ ΠΈ Π΄Π° ΠΏΡ€Π΅Π²ΠΈΡˆΠ°Ρ‚ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π·Π° Π²Ρ€ΡŠΠ·ΠΊΠ° с Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ. И ΠΊΠΎΠ³Π°Ρ‚ΠΎ Π»ΠΈΠΌΠΈΡ‚ΡŠΡ‚ Π΅ пълСн, ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ Π²Π΅Ρ‡Π΅ Π½Π΅ ΠΌΠΎΠΆΠ΅ Π΄Π° Ρ€Π°Π±ΠΎΡ‚ΠΈ с Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ. Π’ΠΎΠ²Π° Π²Π΅Ρ‡Π΅ Π΅ ΠΈΠ·Π²ΡŠΠ½Ρ€Π΅Π΄Π½Π° ситуация Π·Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. Π‘Π»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»Π½ΠΎ Π»ΠΎΡˆΠΈΡ‚Π΅ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΈ трябва Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ прослСдявани ΠΈ Π΄Π° ΠΈΠΌ сС Ρ€Π΅Π°Π³ΠΈΡ€Π° своСврСмСнно.

Основи Π½Π° Π½Π°Π±Π»ΡŽΠ΄Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° PostgreSQL. АлСксСй ЛСсовски

Π”Ρ€ΡƒΠ³ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π·Π° наблюдСниС. И Π΅Ρ‚ΠΎ Π΅Π΄Π½ΠΎ ΠΏΡ€ΠΈΠ»ΠΈΡ‡Π½ΠΎ Ρ‚Π°Π±Π»ΠΎ. Има информация Π·Π° Π²Ρ€ΡŠΠ·ΠΊΠΈ ΠΎΡ‚Π³ΠΎΡ€Π΅. DB Π²Ρ€ΡŠΠ·ΠΊΠ° - 8 Π±Ρ€. И Ρ‚ΠΎΠ²Π° Π΅ всичко. НямамС информация ΠΊΠΎΠΈ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΈ са Π°ΠΊΡ‚ΠΈΠ²Π½ΠΈ, ΠΊΠΎΠΈ просто бСздСйстват, Π±Π΅Π· Π΄Π° правят Π½ΠΈΡ‰ΠΎ. Няма информация Π·Π° висящи Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ ΠΈ Ρ‡Π°ΠΊΠ°Ρ‰ΠΈ Π²Ρ€ΡŠΠ·ΠΊΠΈ, Ρ‚.Π΅. Ρ‚ΠΎΠ²Π° Π΅ Ρ‚Π°ΠΊΠ°Π²Π° Ρ†ΠΈΡ„Ρ€Π°, която ΠΏΠΎΠΊΠ°Π·Π²Π° броя Π½Π° Π²Ρ€ΡŠΠ·ΠΊΠΈΡ‚Π΅ ΠΈ Ρ‚ΠΎΠ²Π° Π΅. И Ρ‚ΠΎΠ³Π°Π²Π° ΠΏΠΎΠ·Π½Π°ΠΉΡ‚Π΅ сами.
Основи Π½Π° Π½Π°Π±Π»ΡŽΠ΄Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° PostgreSQL. АлСксСй ЛСсовски
Π‘ΡŠΠΎΡ‚Π²Π΅Ρ‚Π½ΠΎ, Π·Π° Π΄Π° Π΄ΠΎΠ±Π°Π²ΠΈΡ‚Π΅ Ρ‚Π°Π·ΠΈ информация към Π½Π°Π±Π»ΡŽΠ΄Π΅Π½ΠΈΠ΅Ρ‚ΠΎ, трябва Π΄Π° сС ΠΎΠ±ΡŠΡ€Π½Π΅Ρ‚Π΅ към систСмния ΠΈΠ·Π³Π»Π΅Π΄ pg_stat_activity. Ако ΠΏΡ€Π΅ΠΊΠ°Ρ€Π²Π°Ρ‚Π΅ ΠΌΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅ Π² PostgreSQL, Ρ‚ΠΎΠ³Π°Π²Π° Ρ‚ΠΎΠ²Π° Π΅ ΠΌΠ½ΠΎΠ³ΠΎ Π΄ΠΎΠ±ΡŠΡ€ ΠΈΠ·Π³Π»Π΅Π΄, ΠΊΠΎΠΉΡ‚ΠΎ трябва Π΄Π° станС ваш приятСл, Π·Π°Ρ‰ΠΎΡ‚ΠΎ ΠΏΠΎΠΊΠ°Π·Π²Π° Ρ‚Π΅ΠΊΡƒΡ‰Π°Ρ‚Π° активност Π² PostgreSQL, Ρ‚.Π΅. ΠΊΠ°ΠΊΠ²ΠΎ сС случва Π² Π½Π΅Π³ΠΎ. Π—Π° всСки процСс ΠΈΠΌΠ° ΠΎΡ‚Π΄Π΅Π»Π΅Π½ Ρ€Π΅Π΄, ΠΊΠΎΠΉΡ‚ΠΎ ΠΏΠΎΠΊΠ°Π·Π²Π° информация Π·Π° Ρ‚ΠΎΠ·ΠΈ процСс: ΠΎΡ‚ ΠΊΠΎΠΉ хост Π΅ Π½Π°ΠΏΡ€Π°Π²Π΅Π½Π° Π²Ρ€ΡŠΠ·ΠΊΠ°Ρ‚Π°, ΠΏΠΎΠ΄ ΠΊΠΎΠΉ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π», ΠΏΠΎΠ΄ ΠΊΠ°ΠΊΠ²ΠΎ ΠΈΠΌΠ΅, ΠΊΠΎΠ³Π° Π΅ стартирана транзакцията, коя заявка сС изпълнява Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚Π°, коя заявка Π΅ изпълнСна послСдно. И ΡΡŠΠΎΡ‚Π²Π΅Ρ‚Π½ΠΎ ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° ΠΎΡ†Π΅Π½ΠΈΠΌ ΡΡŠΡΡ‚ΠΎΡΠ½ΠΈΠ΅Ρ‚ΠΎ Π½Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° Ρ‡Ρ€Π΅Π· ΠΏΠΎΠ»Π΅Ρ‚ΠΎ stat. ΠžΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»Π½ΠΎ ΠΊΠ°Π·Π°Π½ΠΎ, ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° Π³Ρ€ΡƒΠΏΠΈΡ€Π°ΠΌΠ΅ ΠΏΠΎ Ρ‚ΠΎΠ²Π° ΠΏΠΎΠ»Π΅ ΠΈ Π΄Π° ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ Ρ‚Π΅Π·ΠΈ статистики, ΠΊΠΎΠΈΡ‚ΠΎ сСга са Π² Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ, ΠΈ броя Π½Π° Π²Ρ€ΡŠΠ·ΠΊΠΈΡ‚Π΅, ΠΊΠΎΠΈΡ‚ΠΎ са с Ρ‚Π°Π·ΠΈ статистика Π² Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ. И Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° ΠΈΠ·ΠΏΡ€Π°Ρ‚ΠΈΠΌ Π²Π΅Ρ‡Π΅ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΡ‚Π΅ числа към нашия ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³ ΠΈ Π΄Π° Π½Π°Ρ‡Π΅Ρ€Ρ‚Π°Π΅ΠΌ Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ Π²ΡŠΡ€Ρ…Ρƒ тях.
Π‘ΡŠΡ‰ΠΎ Ρ‚Π°ΠΊΠ° Π΅ Π²Π°ΠΆΠ½ΠΎ Π΄Π° сС ΠΎΡ†Π΅Π½ΠΈ ΠΏΡ€ΠΎΠ΄ΡŠΠ»ΠΆΠΈΡ‚Π΅Π»Π½ΠΎΡΡ‚Ρ‚Π° Π½Π° сдСлката. Π’Π΅Ρ‡Π΅ ΠΊΠ°Π·Π°Ρ…, Ρ‡Π΅ Π΅ Π²Π°ΠΆΠ½ΠΎ Π΄Π° сС ΠΎΡ†Π΅Π½ΠΈ ΠΏΡ€ΠΎΠ΄ΡŠΠ»ΠΆΠΈΡ‚Π΅Π»Π½ΠΎΡΡ‚Ρ‚Π° Π½Π° Π²Π°ΠΊΡƒΡƒΠΌΠΈΡ‚Π΅, Π½ΠΎ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈΡ‚Π΅ ΡΡŠΡ‰ΠΎ сС оцСняват ΠΏΠΎ ΡΡŠΡ‰ΠΈΡ Π½Π°Ρ‡ΠΈΠ½. Има ΠΏΠΎΠ»Π΅Ρ‚Π° xact_start ΠΈ query_start. Π’Π΅, относитСлно ΠΊΠ°Π·Π°Π½ΠΎ, ΠΏΠΎΠΊΠ°Π·Π²Π°Ρ‚ началния час Π½Π° транзакцията ΠΈ началния час Π½Π° заявката. Π’Π·ΠΈΠΌΠ°ΠΌΠ΅ функцията now(), която ΠΏΠΎΠΊΠ°Π·Π²Π° Ρ‚Π΅ΠΊΡƒΡ‰ΠΎΡ‚ΠΎ ΠΊΠ»Π΅ΠΉΠΌΠΎ Π·Π° Π²Ρ€Π΅ΠΌΠ΅ ΠΈ ΠΈΠ·Π²Π°ΠΆΠ΄Π°ΠΌΠ΅ ΠΊΠ»Π΅ΠΉΠΌΠΎΡ‚ΠΎ Π·Π° Π²Ρ€Π΅ΠΌΠ΅ Π½Π° транзакцията ΠΈ заявката. И ΠΏΠΎΠ»ΡƒΡ‡Π°Π²Π°ΠΌΠ΅ ΠΏΡ€ΠΎΠ΄ΡŠΠ»ΠΆΠΈΡ‚Π΅Π»Π½ΠΎΡΡ‚Ρ‚Π° Π½Π° транзакцията, ΠΏΡ€ΠΎΠ΄ΡŠΠ»ΠΆΠΈΡ‚Π΅Π»Π½ΠΎΡΡ‚Ρ‚Π° Π½Π° заявката.

Ако Π²ΠΈΠ΄ΠΈΠΌ дълги Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ, трябва Π²Π΅Ρ‡Π΅ Π΄Π° Π³ΠΈ Π·Π°Π²ΡŠΡ€ΡˆΠΈΠΌ. Π—Π° OLTP Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅ Π΄ΡŠΠ»Π³ΠΈΡ‚Π΅ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ Π²Π΅Ρ‡Π΅ са ΠΏΠΎΠ²Π΅Ρ‡Π΅ ΠΎΡ‚ 1-2-3 ΠΌΠΈΠ½ΡƒΡ‚ΠΈ. Π—Π° OLAP Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅ Π΄ΡŠΠ»Π³ΠΈΡ‚Π΅ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ са Π½ΠΎΡ€ΠΌΠ°Π»Π½ΠΈ, Π½ΠΎ Π°ΠΊΠΎ сС ΠΈΠ·ΠΏΡŠΠ»Π½ΡΠ²Π°Ρ‚ ΠΏΠΎΠ²Π΅Ρ‡Π΅ ΠΎΡ‚ Π΄Π²Π° часа, Ρ‚ΠΎΠ²Π° ΡΡŠΡ‰ΠΎ Π΅ Π·Π½Π°ΠΊ, Ρ‡Π΅ някъдС ΠΈΠΌΠ°ΠΌΠ΅ изкривяванС.

Основи Π½Π° Π½Π°Π±Π»ΡŽΠ΄Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° PostgreSQL. АлСксСй ЛСсовски
Π‘Π»Π΅Π΄ ΠΊΠ°Ρ‚ΠΎ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΈΡ‚Π΅ сС ΡΠ²ΡŠΡ€ΠΆΠ°Ρ‚ с Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ, Ρ‚Π΅ Π·Π°ΠΏΠΎΡ‡Π²Π°Ρ‚ Π΄Π° работят с Π½Π°ΡˆΠΈΡ‚Π΅ Π΄Π°Π½Π½ΠΈ. Π’Π΅ ΠΈΠΌΠ°Ρ‚ Π΄ΠΎΡΡ‚ΡŠΠΏ Π΄ΠΎ Ρ‚Π°Π±Π»ΠΈΡ†ΠΈ, ΠΈΠΌΠ°Ρ‚ Π΄ΠΎΡΡ‚ΡŠΠΏ Π΄ΠΎ индСкси, Π·Π° Π΄Π° ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ Π΄Π°Π½Π½ΠΈ ΠΎΡ‚ Ρ‚Π°Π±Π»ΠΈΡ†Π°. И Π΅ Π²Π°ΠΆΠ½ΠΎ Π΄Π° сС ΠΎΡ†Π΅Π½ΠΈ ΠΊΠ°ΠΊ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΈΡ‚Π΅ работят с Ρ‚Π΅Π·ΠΈ Π΄Π°Π½Π½ΠΈ.

Π’ΠΎΠ²Π° Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ, Π·Π° Π΄Π° ΠΎΡ†Π΅Π½ΠΈΠΌ натоварСността си ΠΈ Π³Ρ€ΡƒΠ±ΠΎ Π΄Π° Ρ€Π°Π·Π±Π΅Ρ€Π΅ΠΌ ΠΊΠΎΠΈ Ρ‚Π°Π±Π»ΠΈΡ†ΠΈ ΠΈΠΌΠ°ΠΌΠ΅ β€žΠ½Π°ΠΉ-Π³ΠΎΡ€Π΅Ρ‰ΠΈΡ‚Π΅β€œ. НапримСр, Ρ‚ΠΎΠ²Π° Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π² ситуации, Π² ΠΊΠΎΠΈΡ‚ΠΎ искамС Π΄Π° поставим β€žΠ³ΠΎΡ€Π΅Ρ‰ΠΈβ€œ маси Π½Π° някакъв Π²ΠΈΠ΄ Π±ΡŠΡ€Π·ΠΎ SSD Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅. НапримСр, някои Π°Ρ€Ρ…ΠΈΠ²Π½ΠΈ Ρ‚Π°Π±Π»ΠΈΡ†ΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ Π½Π΅ смС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π»ΠΈ дълго Π²Ρ€Π΅ΠΌΠ΅, ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ ΠΏΡ€Π΅Ρ…Π²ΡŠΡ€Π»Π΅Π½ΠΈ Π² някакъв Π²ΠΈΠ΄ β€žΡΡ‚ΡƒΠ΄Π΅Π½β€œ Π°Ρ€Ρ…ΠΈΠ², Π½Π° SATA дисковС ΠΈ Π΄Π° Π³ΠΈ оставитС Π΄Π° ТивСят Ρ‚Π°ΠΌ, Ρ‚Π΅ Ρ‰Π΅ Π±ΡŠΠ΄Π°Ρ‚ Π΄ΠΎΡΡ‚ΡŠΠΏΠ½ΠΈ ΠΏΡ€ΠΈ нСобходимост.

Π‘ΡŠΡ‰ΠΎ Ρ‚Π°ΠΊΠ° Π΅ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ Π·Π° ΠΎΡ‚ΠΊΡ€ΠΈΠ²Π°Π½Π΅ Π½Π° Π°Π½ΠΎΠΌΠ°Π»ΠΈΠΈ слСд всякакви вСрсии ΠΈ внСдрявания. Π”Π° ΠΊΠ°ΠΆΠ΅ΠΌ, Ρ‡Π΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΡŠΡ‚ Π΅ пуснал някаква Π½ΠΎΠ²Π° функция. НапримСр Π΄ΠΎΠ±Π°Π²ΠΈΡ…ΠΌΠ΅ Π½ΠΎΠ²Π° функционалност Π·Π° Ρ€Π°Π±ΠΎΡ‚Π° с Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ. И Π°ΠΊΠΎ ΠΈΠ·Π³Ρ€Π°Π΄ΠΈΠΌ Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° Ρ‚Π°Π±Π»ΠΈΡ†ΠΈ, ΠΌΠΎΠΆΠ΅ΠΌ лСсно Π΄Π° ΠΎΡ‚ΠΊΡ€ΠΈΠ΅ΠΌ Ρ‚Π΅Π·ΠΈ Π°Π½ΠΎΠΌΠ°Π»ΠΈΠΈ Π½Π° Ρ‚Π΅Π·ΠΈ Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ. НапримСр, Π°ΠΊΡ‚ΡƒΠ°Π»ΠΈΠ·ΠΈΡ€Π°ΠΉΡ‚Π΅ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΈ ΠΈΠ»ΠΈ ΠΈΠ·Ρ‚Ρ€ΠΈΠΉΡ‚Π΅ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΈ. Π©Π΅ бъдС ΠΌΠ½ΠΎΠ³ΠΎ Π²ΠΈΠ΄ΠΈΠΌΠΎ.

Π‘ΡŠΡ‰ΠΎ Ρ‚Π°ΠΊΠ° Π΅ възмоТно Π΄Π° сС открият Π°Π½ΠΎΠΌΠ°Π»ΠΈΠΈ Π½Π° "ΠΏΠ»Π°Π²Π°Ρ‰ΠΈ" статистики. Какво ΠΎΠ·Π½Π°Ρ‡Π°Π²Π°? PostgreSQL ΠΈΠΌΠ° ΠΌΠ½ΠΎΠ³ΠΎ силСн ΠΈ ΠΌΠ½ΠΎΠ³ΠΎ Π΄ΠΎΠ±ΡŠΡ€ инструмСнт Π·Π° ΠΏΠ»Π°Π½ΠΈΡ€Π°Π½Π΅ Π½Π° заявки. И Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈΡ‚Π΅ отдСлят ΠΌΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅ Π·Π° Π½Π΅Π³ΠΎΠ²ΠΎΡ‚ΠΎ Ρ€Π°Π·Π²ΠΈΡ‚ΠΈΠ΅. Как Ρ€Π°Π±ΠΎΡ‚ΠΈ Ρ‚ΠΎΠΉ? Π—Π° Π΄Π° ΠΈΠ·Π³Ρ€Π°Π΄ΠΈ Π΄ΠΎΠ±Ρ€ΠΈ ΠΏΠ»Π°Π½ΠΎΠ²Π΅, PostgreSQL ΡΡŠΠ±ΠΈΡ€Π° статистика Π·Π° Ρ€Π°Π·ΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° Π΄Π°Π½Π½ΠΈΡ‚Π΅ Π² Ρ‚Π°Π±Π»ΠΈΡ†ΠΈ с ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π» ΠΎΡ‚ Π²Ρ€Π΅ΠΌΠ΅, с извСстна пСриодичност. Π’ΠΎΠ²Π° са Π½Π°ΠΉ-чСститС стойности: броя Π½Π° ΡƒΠ½ΠΈΠΊΠ°Π»Π½ΠΈΡ‚Π΅ стойности, информация Π·Π° NULL Π² Ρ‚Π°Π±Π»ΠΈΡ†Π°Ρ‚Π°, ΠΌΠ½ΠΎΠ³ΠΎ информация.

Π’ΡŠΠ· основа Π½Π° Ρ‚Π΅Π·ΠΈ статистичСски Π΄Π°Π½Π½ΠΈ плановият ΠΈΠ·Π³Ρ€Π°ΠΆΠ΄Π° няколко заявки, ΠΈΠ·Π±ΠΈΡ€Π° Π½Π°ΠΉ-ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»Π½Π°Ρ‚Π° ΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Ρ‚ΠΎΠ·ΠΈ ΠΏΠ»Π°Π½ Π·Π° заявка, Π·Π° Π΄Π° изпълни самата заявка ΠΈ Π΄Π° Π²ΡŠΡ€Π½Π΅ Π΄Π°Π½Π½ΠΈ.

И сС случва статистиката Π΄Π° β€žΠΏΠ»Π°Π²Π°β€œ. Π”Π°Π½Π½ΠΈΡ‚Π΅ Π·Π° качСството ΠΈ количСството ΠΏΠΎ някакъв Π½Π°Ρ‡ΠΈΠ½ сС ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈΡ…Π° Π² Ρ‚Π°Π±Π»ΠΈΡ†Π°Ρ‚Π°, Π½ΠΎ статистиката Π½Π΅ бСшС ΡΡŠΠ±Ρ€Π°Π½Π°. И Ρ„ΠΎΡ€ΠΌΠΈΡ€Π°Π½ΠΈΡ‚Π΅ ΠΏΠ»Π°Π½ΠΎΠ²Π΅ ΠΌΠΎΠΆΠ΅ Π΄Π° Π½Π΅ са ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»Π½ΠΈ. И Π°ΠΊΠΎ Π½Π°ΡˆΠΈΡ‚Π΅ ΠΏΠ»Π°Π½ΠΎΠ²Π΅ сС ΠΎΠΊΠ°ΠΆΠ°Ρ‚ Π½Π΅ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»Π½ΠΈ ΠΏΠΎ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ Π½Π° ΡΡŠΠ±ΠΈΡ€Π°Π½ΠΈΡ ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³, спорСд Ρ‚Π°Π±Π»ΠΈΡ†ΠΈΡ‚Π΅ Ρ‰Π΅ ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° Π²ΠΈΠ΄ΠΈΠΌ Ρ‚Π΅Π·ΠΈ Π°Π½ΠΎΠΌΠ°Π»ΠΈΠΈ. НапримСр, някъдС Π΄Π°Π½Π½ΠΈΡ‚Π΅ сС ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈΡ…Π° качСствСно ΠΈ вмСсто индСкса Π·Π°ΠΏΠΎΡ‡Π½Π° Π΄Π° сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° послСдоватСлно ΠΏΡ€Π΅ΠΌΠΈΠ½Π°Π²Π°Π½Π΅ ΠΏΡ€Π΅Π· Ρ‚Π°Π±Π»ΠΈΡ†Π°Ρ‚Π°, Ρ‚.Π΅. Π°ΠΊΠΎ заявката трябва Π΄Π° Π²ΡŠΡ€Π½Π΅ само 100 Ρ€Π΅Π΄Π° (ΠΈΠΌΠ° ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ ΠΎΡ‚ 100), Ρ‚ΠΎΠ³Π°Π²Π° Ρ‰Π΅ бъдС ΠΈΠ·Π²ΡŠΡ€ΡˆΠ΅Π½ΠΎ пълно изброяванС Π·Π° Ρ‚Π°Π·ΠΈ заявка. А Ρ‚ΠΎΠ²Π° Π²ΠΈΠ½Π°Π³ΠΈ сС отразява ΠΌΠ½ΠΎΠ³ΠΎ Π·Π»Π΅ Π½Π° прСдставянСто.

И ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° Π³ΠΎ Π²ΠΈΠ΄ΠΈΠΌ Π² ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³Π°. И Π²Π΅Ρ‡Π΅ ΠΏΠΎΠ³Π»Π΅Π΄Π½Π΅Ρ‚Π΅ Ρ‚Π°Π·ΠΈ заявка, ΠΈΠ·ΠΏΡŠΠ»Π½Π΅Ρ‚Π΅ обяснСниС Π·Π° нСя, ΡΡŠΠ±Π΅Ρ€Π΅Ρ‚Π΅ статистика, ΠΈΠ·Π³Ρ€Π°Π΄Π΅Ρ‚Π΅ Π½ΠΎΠ² Π΄ΠΎΠΏΡŠΠ»Π½ΠΈΡ‚Π΅Π»Π΅Π½ индСкс. И Π²Π΅Ρ‡Π΅ ΠΎΡ‚Π³ΠΎΠ²ΠΎΡ€ΠΈ Π½Π° Ρ‚ΠΎΠ·ΠΈ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ. Π—Π°Ρ‚ΠΎΠ²Π° Π΅ Π²Π°ΠΆΠ½ΠΎ.

Основи Π½Π° Π½Π°Π±Π»ΡŽΠ΄Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° PostgreSQL. АлСксСй ЛСсовски

Π”Ρ€ΡƒΠ³ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π·Π° наблюдСниС. Мисля, Ρ‡Π΅ ΠΌΠ½ΠΎΠ³ΠΎ Ρ…ΠΎΡ€Π° Π³ΠΎ Ρ€Π°Π·ΠΏΠΎΠ·Π½Π°Π²Π°Ρ‚, Π·Π°Ρ‰ΠΎΡ‚ΠΎ Π΅ ΠΌΠ½ΠΎΠ³ΠΎ популярСн. Кой ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π² своитС ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈ ΠŸΡ€ΠΎΠΌΠ΅Ρ‚Π΅ΠΉ? И ΠΊΠΎΠΉ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Ρ‚ΠΎΠ·ΠΈ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ Π·Π°Π΅Π΄Π½ΠΎ с Prometheus? Π€Π°ΠΊΡ‚ Π΅, Ρ‡Π΅ Π² стандартното Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ Π½Π° Ρ‚ΠΎΠ·ΠΈ ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³ ΠΈΠΌΠ° Ρ‚Π°Π±Π»ΠΎ Π·Π° Ρ€Π°Π±ΠΎΡ‚Π° с PostgreSQL - postgres_exporter ΠŸΡ€ΠΎΠΌΠ΅Ρ‚Π΅ΠΉ. Но Ρ‚ΡƒΠΊ ΠΈΠΌΠ° Π΅Π΄Π½Π° лоша подробност.

Основи Π½Π° Π½Π°Π±Π»ΡŽΠ΄Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° PostgreSQL. АлСксСй ЛСсовски

Има няколко Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ. И Π±Π°ΠΉΡ‚ΠΎΠ²Π΅Ρ‚Π΅ са посочСни ΠΊΠ°Ρ‚ΠΎ Π΅Π΄ΠΈΠ½ΠΈΡ†Π°, Ρ‚.Π΅. ΠΈΠΌΠ° 5 Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ. Π’ΠΎΠ²Π° са Π’ΠΌΡŠΠΊΠ²Π°Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ, АктуализиранС Π½Π° Π΄Π°Π½Π½ΠΈ, Π˜Π·Ρ‚Ρ€ΠΈΠ²Π°Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ, Π˜Π·Π²Π»ΠΈΡ‡Π°Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ ΠΈ Π’Ρ€ΡŠΡ‰Π°Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ. Π‘Π°ΠΉΡ‚ΠΎΠ²Π΅Ρ‚Π΅ са посочСни ΠΊΠ°Ρ‚ΠΎ ΠΈΠ·ΠΌΠ΅Ρ€Π΅Π½ΠΈΠ΅ Π½Π° Π΅Π΄ΠΈΠ½ΠΈΡ†Π°. Но Ρ„Π°ΠΊΡ‚ Π΅, Ρ‡Π΅ статистиката Π² PostgreSQL Π²Ρ€ΡŠΡ‰Π° Π΄Π°Π½Π½ΠΈ Π² ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠΈ (Ρ€Π΅Π΄ΠΎΠ²Π΅). И, ΡΡŠΠΎΡ‚Π²Π΅Ρ‚Π½ΠΎ, Ρ‚Π΅Π·ΠΈ Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ са ΠΌΠ½ΠΎΠ³ΠΎ Π΄ΠΎΠ±ΡŠΡ€ Π½Π°Ρ‡ΠΈΠ½ Π΄Π° ΠΏΠΎΠ΄Ρ†Π΅Π½ΠΈΡ‚Π΅ Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅Ρ‚ΠΎ си няколко ΠΏΡŠΡ‚ΠΈ, дСсСтки ΠΏΡŠΡ‚ΠΈ, Π·Π°Ρ‰ΠΎΡ‚ΠΎ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΡŠΡ‚ Π½Π΅ Π΅ Π±Π°ΠΉΡ‚, ΠΊΠΎΡ€Ρ‚Π΅ΠΆΡŠΡ‚ Π΅ Π½ΠΈΠ·, Ρ‚ΠΎΠΉ Π΅ ΠΌΠ½ΠΎΠ³ΠΎ Π±Π°ΠΉΡ‚ΠΎΠ²Π΅ ΠΈ Π²ΠΈΠ½Π°Π³ΠΈ Π΅ с ΠΏΡ€ΠΎΠΌΠ΅Π½Π»ΠΈΠ²Π° дълТина. ВоСст изчисляванСто Π½Π° Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅Ρ‚ΠΎ Π² Π±Π°ΠΉΡ‚ΠΎΠ²Π΅ с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠΈ Π΅ нСрСалистична Π·Π°Π΄Π°Ρ‡Π° ΠΈΠ»ΠΈ ΠΌΠ½ΠΎΠ³ΠΎ Ρ‚Ρ€ΡƒΠ΄Π½Π°. Π‘Π»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»Π½ΠΎ, ΠΊΠΎΠ³Π°Ρ‚ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚Π΅ Ρ‚Π°Π±Π»ΠΎ Π·Π° ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ Π²Π³Ρ€Π°Π΄Π΅Π½ΠΎ наблюдСниС, Π²ΠΈΠ½Π°Π³ΠΈ Π΅ Π²Π°ΠΆΠ½ΠΎ Π΄Π° Ρ€Π°Π·Π±Π΅Ρ€Π΅Ρ‚Π΅, Ρ‡Π΅ Ρ‚ΠΎ Ρ€Π°Π±ΠΎΡ‚ΠΈ ΠΏΡ€Π°Π²ΠΈΠ»Π½ΠΎ ΠΈ Π²ΠΈ Π²Ρ€ΡŠΡ‰Π° ΠΏΡ€Π°Π²ΠΈΠ»Π½ΠΎ ΠΎΡ†Π΅Π½Π΅Π½ΠΈ Π΄Π°Π½Π½ΠΈ.

Основи Π½Π° Π½Π°Π±Π»ΡŽΠ΄Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° PostgreSQL. АлСксСй ЛСсовски

Как Π΄Π° ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ статистика Π·Π° Ρ‚Π΅Π·ΠΈ Ρ‚Π°Π±Π»ΠΈΡ†ΠΈ? Π—Π° Π΄Π° Π½Π°ΠΏΡ€Π°Π²ΠΈ Ρ‚ΠΎΠ²Π°, PostgreSQL ΠΈΠΌΠ° сСмСйство ΠΈΠ·Π³Π»Π΅Π΄ΠΈ. И основният ΠΈΠ·Π³Π»Π΅Π΄ Π΅ pg_stat_user_tables. User_tables - Ρ‚ΠΎΠ²Π° ΠΎΠ·Π½Π°Ρ‡Π°Π²Π°, Ρ‡Π΅ Ρ‚Π°Π±Π»ΠΈΡ†ΠΈΡ‚Π΅ сС ΡΡŠΠ·Π΄Π°Π²Π°Ρ‚ ΠΎΡ‚ ΠΈΠΌΠ΅Ρ‚ΠΎ Π½Π° потрСбитСля. Π—Π° Ρ€Π°Π·Π»ΠΈΠΊΠ° ΠΎΡ‚ тях ΠΈΠΌΠ° систСмни ΠΈΠ·Π³Π»Π΅Π΄ΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ ΠΎΡ‚ самия PostgreSQL. И ΠΈΠΌΠ° ΠΎΠ±ΠΎΠ±Ρ‰Π΅Π½Π° Ρ‚Π°Π±Π»ΠΈΡ†Π° Alltables, която Π²ΠΊΠ»ΡŽΡ‡Π²Π° ΠΊΠ°ΠΊΡ‚ΠΎ систСма, Ρ‚Π°ΠΊΠ° ΠΈ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π». ΠœΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° Π·Π°ΠΏΠΎΡ‡Π½Π΅Ρ‚Π΅ ΠΎΡ‚ всСки ΠΎΡ‚ тях, ΠΊΠΎΠΉΡ‚ΠΎ Π²ΠΈ харСсва Π½Π°ΠΉ-ΠΌΠ½ΠΎΠ³ΠΎ.

Π“ΠΎΡ€Π½ΠΈΡ‚Π΅ ΠΏΠΎΠ»Π΅Ρ‚Π° ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ Π·Π° ΠΎΡ†Π΅Π½ΠΊΠ° Π½Π° броя Π½Π° Π²ΠΌΡŠΠΊΠ²Π°Π½ΠΈΡΡ‚Π°, Π°ΠΊΡ‚ΡƒΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈΡ‚Π΅ ΠΈ изтриванията. ΠŸΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎΡ‚ΠΎ Ρ‚Π°Π±Π»ΠΎ Π·Π° ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅, ΠΊΠΎΠ΅Ρ‚ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ…, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Ρ‚Π΅Π·ΠΈ ΠΏΠΎΠ»Π΅Ρ‚Π°, Π·Π° Π΄Π° ΠΎΡ†Π΅Π½ΠΈ характСристикитС Π½Π° Ρ€Π°Π±ΠΎΡ‚Π½ΠΎΡ‚ΠΎ Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅. Π‘Π»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»Π½ΠΎ ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° Π½Π°Π΄Π³Ρ€Π°ΠΆΠ΄Π°ΠΌΠ΅ ΠΈ Π²ΡŠΡ€Ρ…Ρƒ тях. Но си струва Π΄Π° Π·Π°ΠΏΠΎΠΌΠ½ΠΈΡ‚Π΅, Ρ‡Π΅ Ρ‚ΠΎΠ²Π° са ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠΈ, Π° Π½Π΅ Π±Π°ΠΉΡ‚ΠΎΠ²Π΅, Ρ‚Π°ΠΊΠ° Ρ‡Π΅ Π½Π΅ ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° Π³ΠΎ Π²Π·Π΅ΠΌΠ΅ΠΌ ΠΈ Π΄Π° Π³ΠΎ Π½Π°ΠΏΡ€Π°Π²ΠΈΠΌ Π±Π°ΠΉΡ‚ΠΎΠ²Π΅.

Π’ΡŠΠ· основа Π½Π° Ρ‚Π΅Π·ΠΈ Π΄Π°Π½Π½ΠΈ ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° ΠΈΠ·Π³Ρ€Π°Π΄ΠΈΠΌ Ρ‚Π°ΠΊΠ° Π½Π°Ρ€Π΅Ρ‡Π΅Π½ΠΈΡ‚Π΅ TopN-Ρ‚Π°Π±Π»ΠΈΡ†ΠΈ. НапримСр Π’ΠΎΠΏ-5, Π’ΠΎΠΏ-10. И ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° слСдитС Ρ‚Π΅Π·ΠΈ Π³ΠΎΡ€Π΅Ρ‰ΠΈ маси, ΠΊΠΎΠΈΡ‚ΠΎ сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ ΠΏΠΎΠ²Π΅Ρ‡Π΅ ΠΎΡ‚ Π΄Ρ€ΡƒΠ³ΠΈ. НапримСр 5 "Π³ΠΎΡ€Π΅Ρ‰ΠΈ" маси Π·Π° вмъкванС. И спорСд Ρ‚Π΅Π·ΠΈ TopN-Ρ‚Π°Π±Π»ΠΈΡ†ΠΈ, Π½ΠΈΠ΅ оцСнявамС Π½Π°ΡˆΠ΅Ρ‚ΠΎ Ρ€Π°Π±ΠΎΡ‚Π½ΠΎ Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅ ΠΈ ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° ΠΎΡ†Π΅Π½ΠΈΠΌ ΠΈΠ·Π±Π»ΠΈΡ†ΠΈ Π½Π° Ρ€Π°Π±ΠΎΡ‚Π½ΠΎ Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅ слСд всякакви вСрсии ΠΈ Π°ΠΊΡ‚ΡƒΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΈ внСдрявания.

Π‘ΡŠΡ‰ΠΎ Ρ‚Π°ΠΊΠ° Π΅ Π²Π°ΠΆΠ½ΠΎ Π΄Π° ΠΎΡ†Π΅Π½ΠΈΡ‚Π΅ Ρ€Π°Π·ΠΌΠ΅Ρ€Π° Π½Π° Ρ‚Π°Π±Π»ΠΈΡ†Π°Ρ‚Π°, Π·Π°Ρ‰ΠΎΡ‚ΠΎ понякога Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈΡ‚Π΅ пускат Π½ΠΎΠ²Π° функция ΠΈ Π½Π°ΡˆΠΈΡ‚Π΅ Ρ‚Π°Π±Π»ΠΈΡ†ΠΈ Π·Π°ΠΏΠΎΡ‡Π²Π°Ρ‚ Π΄Π° Π½Π°Π±ΡŠΠ±Π²Π°Ρ‚ Π² Π³ΠΎΠ»Π΅ΠΌΠΈΡ‚Π΅ си Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΈ, Π·Π°Ρ‰ΠΎΡ‚ΠΎ Ρ‚Π΅ Ρ€Π΅ΡˆΠΈΡ…Π° Π΄Π° добавят Π΄ΠΎΠΏΡŠΠ»Π½ΠΈΡ‚Π΅Π»Π½ΠΎ количСство Π΄Π°Π½Π½ΠΈ, Π½ΠΎ Π½Π΅ ΠΏΡ€Π΅Π΄Π²ΠΈΠ΄ΠΈΡ…Π° ΠΊΠ°ΠΊ Ρ‰Π΅ станС Ρ‚ΠΎΠ²Π° влияят Π²ΡŠΡ€Ρ…Ρƒ Ρ€Π°Π·ΠΌΠ΅Ρ€Π° Π½Π° Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ. Π’Π°ΠΊΠΈΠ²Π° случаи ΡΡŠΡ‰ΠΎ Π½ΠΈ ΠΈΠ·Π½Π΅Π½Π°Π΄Π²Π°Ρ‚.

Основи Π½Π° Π½Π°Π±Π»ΡŽΠ΄Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° PostgreSQL. АлСксСй ЛСсовски

А сСга Π΅Π΄ΠΈΠ½ малък Π²ΡŠΠΏΡ€ΠΎΡ към вас. Какъв Π΅ Π²ΡŠΠΏΡ€ΠΎΡΡŠΡ‚, ΠΊΠΎΠ³Π°Ρ‚ΠΎ Π·Π°Π±Π΅Π»Π΅ΠΆΠΈΡ‚Π΅ Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅ Π½Π° ΡΡŠΡ€Π²ΡŠΡ€Π° Π½Π° Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ? Какъв Π΅ слСдващият Π²ΠΈ Π²ΡŠΠΏΡ€ΠΎΡ?

Основи Π½Π° Π½Π°Π±Π»ΡŽΠ΄Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° PostgreSQL. АлСксСй ЛСсовски

Но истинският Π²ΡŠΠΏΡ€ΠΎΡ Π΅ слСдният. Какви заявки причинява Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅Ρ‚ΠΎ? ВоСст, Π½Π΅ Π΅ интСрСсно Π΄Π° сС Π½Π°Π±Π»ΡŽΠ΄Π°Π²Π°Ρ‚ процСситС, ΠΊΠΎΠΈΡ‚ΠΎ Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅Ρ‚ΠΎ причинява. Ясно Π΅, Ρ‡Π΅ Π°ΠΊΠΎ Ρ…ΠΎΡΡ‚ΡŠΡ‚ Π΅ с Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ, Ρ‚ΠΎΠ³Π°Π²Π° Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ Ρ€Π°Π±ΠΎΡ‚ΠΈ Ρ‚Π°ΠΌ ΠΈ Π΅ ясно, Ρ‡Π΅ Ρ‚Π°ΠΌ Ρ‰Π΅ сС ΠΈΠ·Ρ…Π²ΡŠΡ€Π»ΡΡ‚ само Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ. Ако ΠΎΡ‚Π²ΠΎΡ€ΠΈΠΌ Top, Ρ‰Π΅ Π²ΠΈΠ΄ΠΈΠΌ Ρ‚Π°ΠΌ списък с PostgreSQL процСси, ΠΊΠΎΠΈΡ‚ΠΎ правят Π½Π΅Ρ‰ΠΎ. ΠžΡ‚Π³ΠΎΡ€Π΅ няма Π΄Π° станС ясно ΠΊΠ°ΠΊΠ²ΠΎ правят.

Основи Π½Π° Π½Π°Π±Π»ΡŽΠ΄Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° PostgreSQL. АлСксСй ЛСсовски

Π‘ΡŠΠΎΡ‚Π²Π΅Ρ‚Π½ΠΎ, трябва Π΄Π° Π½Π°ΠΌΠ΅Ρ€ΠΈΡ‚Π΅ ΠΎΠ½Π΅Π·ΠΈ заявки, ΠΊΠΎΠΈΡ‚ΠΎ причиняват Π½Π°ΠΉ-голямо Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅, Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ настройката Π½Π° заявкитС, ΠΊΠ°Ρ‚ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, Π΄Π°Π²Π° ΠΏΠΎΠ²Π΅Ρ‡Π΅ ΠΏΠ΅Ρ‡Π°Π»Π±Π° ΠΎΡ‚ конфигурацията Π½Π° PostgreSQL ΠΈΠ»ΠΈ настройката Π½Π° ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Π°Ρ‚Π° систСма ΠΈΠ»ΠΈ Π΄ΠΎΡ€ΠΈ настройката Π½Π° Ρ…Π°Ρ€Π΄ΡƒΠ΅Ρ€Π°. По моя ΠΎΡ†Π΅Π½ΠΊΠ° Ρ‚ΠΎΠ²Π° Π΅ ΠΎΠΊΠΎΠ»ΠΎ 80-85-90%. И Ρ‚ΠΎΠ²Π° става ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎ-Π±ΡŠΡ€Π·ΠΎ. По-Π±ΡŠΡ€Π·ΠΎ Π΅ Π΄Π° ΠΊΠΎΡ€ΠΈΠ³ΠΈΡ€Π°Ρ‚Π΅ заявката, ΠΎΡ‚ΠΊΠΎΠ»ΠΊΠΎΡ‚ΠΎ Π΄Π° ΠΊΠΎΡ€ΠΈΠ³ΠΈΡ€Π°Ρ‚Π΅ конфигурацията, Π΄Π° ΠΏΠ»Π°Π½ΠΈΡ€Π°Ρ‚Π΅ рСстартиранС, особСно Π°ΠΊΠΎ Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ Π½Π΅ ΠΌΠΎΠΆΠ΅ Π΄Π° бъдС рСстартирана, ΠΈΠ»ΠΈ Π΄Π° Π΄ΠΎΠ±Π°Π²ΠΈΡ‚Π΅ Ρ…Π°Ρ€Π΄ΡƒΠ΅Ρ€. По-лСсно Π΅ Π΄Π° ΠΏΡ€Π΅Π½Π°ΠΏΠΈΡˆΠ΅Ρ‚Π΅ някъдС заявката ΠΈΠ»ΠΈ Π΄Π° Π΄ΠΎΠ±Π°Π²ΠΈΡ‚Π΅ индСкс, Π·Π° Π΄Π° ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ ΠΏΠΎ-Π΄ΠΎΠ±ΡŠΡ€ Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ ΠΎΡ‚ Ρ‚Π°Π·ΠΈ заявка.

Основи Π½Π° Π½Π°Π±Π»ΡŽΠ΄Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° PostgreSQL. АлСксСй ЛСсовски
Π‘ΡŠΠΎΡ‚Π²Π΅Ρ‚Π½ΠΎ Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π΄Π° сС слСди заявкитС ΠΈ тяхната адСкватност. Π”Π° Π²Π·Π΅ΠΌΠ΅ΠΌ Π΄Ρ€ΡƒΠ³ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π·Π° наблюдСниС. И Ρ‚ΡƒΠΊ ΡΡŠΡ‰ΠΎ ΠΈΠ·Π³Π»Π΅ΠΆΠ΄Π° ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎ наблюдСниС. Има информация Π·Π° рСпликация, ΠΈΠΌΠ° информация Π·Π° пропускатСлна способност, Π±Π»ΠΎΠΊΠΈΡ€Π°Π½Π΅, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° рСсурси. Всичко Π΅ Π½Π°Ρ€Π΅Π΄, Π½ΠΎ няма информация Π·Π° заявки. НС Π΅ ясно ΠΊΠ°ΠΊΠ²ΠΈ заявки сС ΠΈΠ·ΠΏΡŠΠ»Π½ΡΠ²Π°Ρ‚ Π² Π½Π°ΡˆΠ°Ρ‚Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ, ΠΊΠΎΠ»ΠΊΠΎ дълго сС ΠΈΠ·ΠΏΡŠΠ»Π½ΡΠ²Π°Ρ‚, ΠΊΠΎΠ»ΠΊΠΎ ΠΎΡ‚ Ρ‚Π΅Π·ΠΈ заявки. Врябва Π²ΠΈΠ½Π°Π³ΠΈ Π΄Π° ΠΈΠΌΠ°ΠΌΠ΅ Ρ‚Π°Π·ΠΈ информация Π² наблюдСниС.

Основи Π½Π° Π½Π°Π±Π»ΡŽΠ΄Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° PostgreSQL. АлСксСй ЛСсовски

И Π·Π° Π΄Π° ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ Ρ‚Π°Π·ΠΈ информация, ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ ΠΌΠΎΠ΄ΡƒΠ»Π° pg_stat_statements. На Π½Π΅Π³ΠΎΠ²Π° основа ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° ΠΈΠ·Π³Ρ€Π°Π΄ΠΈΡ‚Π΅ Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ. НапримСр, ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ информация Π·Π° Π½Π°ΠΉ-чСститС заявки, тоСст Π·Π° ΠΎΠ½Π΅Π·ΠΈ заявки, ΠΊΠΎΠΈΡ‚ΠΎ сС ΠΈΠ·ΠΏΡŠΠ»Π½ΡΠ²Π°Ρ‚ Π½Π°ΠΉ-чСсто. Π”Π°, слСд внСдряванСто ΡΡŠΡ‰ΠΎ Π΅ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ Π΄Π° Π³ΠΎ Ρ€Π°Π·Π³Π»Π΅Π΄Π°Ρ‚Π΅ ΠΈ Π΄Π° Ρ€Π°Π·Π±Π΅Ρ€Π΅Ρ‚Π΅ Π΄Π°Π»ΠΈ ΠΈΠΌΠ° скок Π² заявкитС.

ΠœΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° Π½Π°Π±Π»ΡŽΠ΄Π°Π²Π°Ρ‚Π΅ Π½Π°ΠΉ-Π΄ΡŠΠ»Π³ΠΈΡ‚Π΅ заявки, Ρ‚.Π΅. ΠΎΠ½Π΅Π·ΠΈ заявки, ΠΊΠΎΠΈΡ‚ΠΎ ΠΎΡ‚Π½Π΅ΠΌΠ°Ρ‚ Π½Π°ΠΉ-дълго Π²Ρ€Π΅ΠΌΠ΅ Π·Π° изпълнСниС. Π’Π΅ работят Π½Π° процСсора, Ρ‚Π΅ консумират I/O. МоТСм ΡΡŠΡ‰ΠΎ Π΄Π° ΠΎΡ†Π΅Π½ΠΈΠΌ Ρ‚ΠΎΠ²Π° Ρ‡Ρ€Π΅Π· ΠΏΠΎΠ»Π΅Ρ‚Π°Ρ‚Π° total_time, mean_time, blk_write_time ΠΈ blk_read_time.

МоТСм Π΄Π° ΠΎΡ†Π΅Π½ΠΈΠΌ ΠΈ наблюдавамС Π½Π°ΠΉ-Ρ‚Π΅ΠΆΠΊΠΈΡ‚Π΅ заявки ΠΏΠΎ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ Π½Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° рСсурситС, Ρ‚Π΅Π·ΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ Ρ‡Π΅Ρ‚Π°Ρ‚ ΠΎΡ‚ диск, Ρ‚Π΅Π·ΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ работят с ΠΏΠ°ΠΌΠ΅Ρ‚ ΠΈΠ»ΠΈ, Π½Π°ΠΏΡ€ΠΎΡ‚ΠΈΠ², ΡΡŠΠ·Π΄Π°Π²Π°Ρ‚ някакво Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅ ΠΏΡ€ΠΈ запис.

НиС ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° ΠΎΡ†Π΅Π½ΠΈΠΌ Π½Π°ΠΉ-Ρ‰Π΅Π΄Ρ€ΠΈΡ‚Π΅ искания. Π’ΠΎΠ²Π° са заявкитС, ΠΊΠΎΠΈΡ‚ΠΎ Π²Ρ€ΡŠΡ‰Π°Ρ‚ голям Π±Ρ€ΠΎΠΉ Ρ€Π΅Π΄ΠΎΠ²Π΅. НапримСр, ΠΌΠΎΠΆΠ΅ Π΄Π° Π΅ някаква заявка, ΠΏΡ€ΠΈ която са Π·Π°Π±Ρ€Π°Π²ΠΈΠ»ΠΈ Π΄Π° Π·Π°Π΄Π°Π΄Π°Ρ‚ Π»ΠΈΠΌΠΈΡ‚. И просто Π²Ρ€ΡŠΡ‰Π° цялото ΡΡŠΠ΄ΡŠΡ€ΠΆΠ°Π½ΠΈΠ΅ Π½Π° Ρ‚Π°Π±Π»ΠΈΡ†Π°Ρ‚Π° ΠΈΠ»ΠΈ заявката Π·Π° заявСнитС Ρ‚Π°Π±Π»ΠΈΡ†ΠΈ.

ОсвСн Ρ‚ΠΎΠ²Π° ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° Π½Π°Π±Π»ΡŽΠ΄Π°Π²Π°Ρ‚Π΅ заявки, ΠΊΠΎΠΈΡ‚ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅ ΠΈΠ»ΠΈ Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΈ Ρ‚Π°Π±Π»ΠΈΡ†ΠΈ.

Основи Π½Π° Π½Π°Π±Π»ΡŽΠ΄Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° PostgreSQL. АлСксСй ЛСсовски
И всС ΠΎΡ‰Π΅ ΠΈΠΌΠ°ΠΌΠ΅ Ρ„ΠΎΠ½ΠΎΠ²ΠΈ процСси. Π€ΠΎΠ½ΠΎΠ²ΠΈΡ‚Π΅ процСси са ΠΏΡ€Π΅Π΄ΠΈΠΌΠ½ΠΎ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π½ΠΈ Ρ‚ΠΎΡ‡ΠΊΠΈ ΠΈΠ»ΠΈ сС Π½Π°Ρ€ΠΈΡ‡Π°Ρ‚ ​​ощС ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π½ΠΈ Ρ‚ΠΎΡ‡ΠΊΠΈ, Ρ‚ΠΎΠ²Π° са Π°Π²Ρ‚ΠΎΠ²Π°ΠΊΡƒΡƒΠΌ ΠΈ рСпликация.

Основи Π½Π° Π½Π°Π±Π»ΡŽΠ΄Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° PostgreSQL. АлСксСй ЛСсовски

Π”Ρ€ΡƒΠ³ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π·Π° наблюдСниС. Вляво ΠΈΠΌΠ° Ρ€Π°Π·Π΄Π΅Π» ΠŸΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ°, ΠΎΡ‚ΠΈΠ΄Π΅Ρ‚Π΅ Π½Π° Π½Π΅Π³ΠΎ ΠΈ сС надявайтС Π΄Π° Π²ΠΈΠ΄ΠΈΡ‚Π΅ Π½Π΅Ρ‰ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ. Но Ρ‚ΡƒΠΊ само Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ Π½Π° Π²Π°ΠΊΡƒΡƒΠΌΠ° ΠΈ ΡΡŠΠ±ΠΈΡ€Π°Π½Π΅Ρ‚ΠΎ Π½Π° статистика, Π½ΠΈΡ‰ΠΎ Π΄Ρ€ΡƒΠ³ΠΎ. Π’ΠΎΠ²Π° Π΅ ΠΌΠ½ΠΎΠ³ΠΎ Π±Π΅Π΄Π½Π° информация, Ρ‚Π°ΠΊΠ° Ρ‡Π΅ Π²ΠΈΠ½Π°Π³ΠΈ трябва Π΄Π° ΠΈΠΌΠ°Ρ‚Π΅ информация ΠΊΠ°ΠΊ работят Ρ„ΠΎΠ½ΠΎΠ²ΠΈΡ‚Π΅ процСси Π² Π½Π°ΡˆΠ°Ρ‚Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ ΠΈ Π΄Π°Π»ΠΈ ΠΈΠΌΠ° ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈ ΠΎΡ‚ тяхната Ρ€Π°Π±ΠΎΡ‚Π°.

Основи Π½Π° Π½Π°Π±Π»ΡŽΠ΄Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° PostgreSQL. АлСксСй ЛСсовски

ΠšΠΎΠ³Π°Ρ‚ΠΎ Ρ€Π°Π·Π³Π»Π΅ΠΆΠ΄Π°ΠΌΠ΅ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π½ΠΎ-пропускатСлнитС Ρ‚ΠΎΡ‡ΠΊΠΈ, трябва Π΄Π° сС ΠΏΠΎΠΌΠ½ΠΈ, Ρ‡Π΅ Π½Π°ΡˆΠΈΡ‚Π΅ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π½ΠΎ-пропускатСлни Ρ‚ΠΎΡ‡ΠΊΠΈ изчистват β€žΠΌΡ€ΡŠΡΠ½ΠΈΡ‚Π΅β€œ страници ΠΎΡ‚ областта Π½Π° Ρ€Π°Π·Π΄Π΅Π»Π΅Π½Π°Ρ‚Π° ΠΏΠ°ΠΌΠ΅Ρ‚ Π½Π° диска, слСд ΠΊΠΎΠ΅Ρ‚ΠΎ ΡΡŠΠ·Π΄Π°Π²Π°Ρ‚ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π½ΠΎ-пропускатСлна Ρ‚ΠΎΡ‡ΠΊΠ°. И Ρ‚Π°Π·ΠΈ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π½Π° Ρ‚ΠΎΡ‡ΠΊΠ° Π²Π΅Ρ‡Π΅ ΠΌΠΎΠΆΠ΅ Π΄Π° сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΊΠ°Ρ‚ΠΎ място ΠΏΠΎ Π²Ρ€Π΅ΠΌΠ΅ Π½Π° Π²ΡŠΠ·ΡΡ‚Π°Π½ΠΎΠ²ΡΠ²Π°Π½Π΅, Π°ΠΊΠΎ PostgreSQL Π²Π½Π΅Π·Π°ΠΏΠ½ΠΎ бъдС ΠΏΡ€Π΅ΠΊΡ€Π°Ρ‚Π΅Π½ ΠΏΡ€ΠΈ ΡΠΏΠ΅ΡˆΠ½ΠΎΡΡ‚.

Π‘ΡŠΠΎΡ‚Π²Π΅Ρ‚Π½ΠΎ, Π·Π° Π΄Π° ΠΈΠ·Ρ‚Ρ€ΠΈΠ΅Ρ‚Π΅ всички "ΠΌΡ€ΡŠΡΠ½ΠΈ" страници Π½Π° диска, трябва Π΄Π° Π½Π°ΠΏΡ€Π°Π²ΠΈΡ‚Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΎ количСство запис. И ΠΊΠ°Ρ‚ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ ΠΏΡ€ΠΈ систСми с голямо количСство ΠΏΠ°ΠΌΠ΅Ρ‚ Ρ‚ΠΎΠ²Π° Π΅ ΠΌΠ½ΠΎΠ³ΠΎ. И Π°ΠΊΠΎ ΠΏΡ€Π°Π²ΠΈΠΌ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π½ΠΈ Ρ‚ΠΎΡ‡ΠΊΠΈ ΠΌΠ½ΠΎΠ³ΠΎ чСсто Π² някакъв ΠΊΡ€Π°Ρ‚ΡŠΠΊ ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π», Ρ‚ΠΎΠ³Π°Π²Π° производитСлността Π½Π° диска Ρ‰Π΅ ΠΏΠ°Π΄Π½Π΅ ΠΌΠ½ΠΎΠ³ΠΎ. И клиСнтскитС заявки Ρ‰Π΅ страдат ΠΎΡ‚ липса Π½Π° рСсурси. Π’Π΅ Ρ‰Π΅ сС ΠΊΠΎΠ½ΠΊΡƒΡ€ΠΈΡ€Π°Ρ‚ Π·Π° рСсурси ΠΈ Ρ‰Π΅ ΠΈΠΌ липсва производитСлност.

Π‘ΡŠΠΎΡ‚Π²Π΅Ρ‚Π½ΠΎ Ρ‡Ρ€Π΅Π· pg_stat_bgwriter Π½Π° посочСнитС ΠΏΠΎΠ»Π΅Ρ‚Π° ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° наблюдавамС броя Π½Π° Π²ΡŠΠ·Π½ΠΈΠΊΠ²Π°Ρ‰ΠΈΡ‚Π΅ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π½ΠΈ Ρ‚ΠΎΡ‡ΠΊΠΈ. И Π°ΠΊΠΎ ΠΈΠΌΠ°ΠΌΠ΅ ΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π½ΠΈ Ρ‚ΠΎΡ‡ΠΊΠΈ Π·Π° ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΎ Π²Ρ€Π΅ΠΌΠ΅ (Π·Π° 10-15-20 ΠΌΠΈΠ½ΡƒΡ‚ΠΈ, Π·Π° ΠΏΠΎΠ»ΠΎΠ²ΠΈΠ½ час), Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ 3-4-5, Ρ‚ΠΎΠ³Π°Π²Π° Ρ‚ΠΎΠ²Π° Π²Π΅Ρ‡Π΅ ΠΌΠΎΠΆΠ΅ Π΄Π° Π΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ. И Π²Π΅Ρ‡Π΅ трябва Π΄Π° ΠΏΠΎΠ³Π»Π΅Π΄Π½Π΅Ρ‚Π΅ Π² Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ, Π΄Π° ΠΏΠΎΠ³Π»Π΅Π΄Π½Π΅Ρ‚Π΅ Π² конфигурацията, ΠΊΠ°ΠΊΠ²ΠΎ причинява Ρ‚Π°ΠΊΠΎΠ²Π° ΠΈΠ·ΠΎΠ±ΠΈΠ»ΠΈΠ΅ ΠΎΡ‚ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π½ΠΈ Ρ‚ΠΎΡ‡ΠΊΠΈ. МоТС Π±ΠΈ прСдстои голям Ρ€Π΅ΠΊΠΎΡ€Π΄. Π’Π΅Ρ‡Π΅ ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° ΠΎΡ†Π΅Π½ΠΈΠΌ натоварСността, Π·Π°Ρ‰ΠΎΡ‚ΠΎ Π²Π΅Ρ‡Π΅ смС Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΈ Π½Π° натоварСността. Π’Π΅Ρ‡Π΅ ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈΠΌ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΈΡ‚Π΅ Π½Π° Ρ‚ΠΎΡ‡ΠΊΠ°Ρ‚Π° Π½Π° ΠΏΡ€Π΅ΠΊΡŠΡΠ²Π°Π½Π΅ ΠΈ Π΄Π° сС ΡƒΠ²Π΅Ρ€ΠΈΠΌ, Ρ‡Π΅ Ρ‚Π΅ Π½Π΅ влияят Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»Π½ΠΎ Π½Π° производитСлността Π½Π° заявкитС.

Основи Π½Π° Π½Π°Π±Π»ΡŽΠ΄Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° PostgreSQL. АлСксСй ЛСсовски

Π’Ρ€ΡŠΡ‰Π°ΠΌ сС ΠΎΡ‚Π½ΠΎΠ²ΠΎ към Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΡ‡Π½ΠΎΡ‚ΠΎ Π²Π°ΠΊΡƒΡƒΠΌΠΈΡ€Π°Π½Π΅, Π·Π°Ρ‰ΠΎΡ‚ΠΎ Ρ‚ΠΎΠ²Π° Π΅ Π²ΠΈΠ΄ Π½Π΅Ρ‰ΠΎ, ΠΊΠ°ΠΊΡ‚ΠΎ ΠΊΠ°Π·Π°Ρ…, ΠΊΠΎΠ΅Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅ лСсно Π΄Π° Π΄ΠΎΠ±Π°Π²ΠΈ производитСлността ΠΊΠ°ΠΊΡ‚ΠΎ Π½Π° диска, Ρ‚Π°ΠΊΠ° ΠΈ Π½Π° заявкитС, Ρ‚Π°ΠΊΠ° Ρ‡Π΅ Π²ΠΈΠ½Π°Π³ΠΈ Π΅ Π²Π°ΠΆΠ½ΠΎ Π΄Π° сС ΠΈΠ·ΠΌΠ΅Ρ€Π²Π° количСството Π½Π° Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΡ‡Π½ΠΎΡ‚ΠΎ Π²Π°ΠΊΡƒΡƒΠΌΠΈΡ€Π°Π½Π΅.

Броят Π½Π° автовакуумиститС Π² Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ Π΅ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½. По ΠΏΠΎΠ΄Ρ€Π°Π·Π±ΠΈΡ€Π°Π½Π΅ ΠΈΠΌΠ° Ρ‚Ρ€ΠΈ ΠΎΡ‚ тях, Ρ‚Π°ΠΊΠ° Ρ‡Π΅ Π°ΠΊΠΎ ΠΈΠΌΠ°ΠΌΠ΅ Ρ‚Ρ€ΠΈΠΌΠ° Ρ€Π°Π±ΠΎΡ‚Π½ΠΈΡ†ΠΈ, Ρ€Π°Π±ΠΎΡ‚Π΅Ρ‰ΠΈ Π² Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ ΠΏΡ€Π΅Π· цялото Π²Ρ€Π΅ΠΌΠ΅, Ρ‚ΠΎΠ²Π° ΠΎΠ·Π½Π°Ρ‡Π°Π²Π°, Ρ‡Π΅ Π½Π°ΡˆΠΈΡΡ‚ Π°Π²Ρ‚ΠΎΠ²Π°ΠΊΡƒΡƒΠΌ Π΅ Π½Π΅Π΄ΠΎΡΡ‚Π°Ρ‚ΡŠΡ‡Π½ΠΎ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€Π°Π½, трябва Π΄Π° повишим ограничСнията, Π΄Π° ΠΏΡ€Π΅Ρ€Π°Π·Π³Π»Π΅Π΄Π°ΠΌΠ΅ настройкитС Π½Π° Π°Π²Ρ‚ΠΎΠ²Π°ΠΊΡƒΡƒΠΌΠ° ΠΈ Π²Π΅Ρ‡Π΅ Π΄Π° Π²Π»Π΅Π·Π΅ΠΌ Π² конфигурацията.
Π’Π°ΠΆΠ½ΠΎ Π΅ Π΄Π° ΠΏΡ€Π΅Ρ†Π΅Π½ΠΈΠΌ ΠΊΠΎΠΈ прахосмукачки работят ΠΏΡ€ΠΈ нас. Или бСшС стартирано ΠΎΡ‚ потрСбитСля, DBA Π²Π»Π΅Π·Π΅ ΠΈ пусна някакъв Π²Π°ΠΊΡƒΡƒΠΌ с Ρ€ΡŠΡ†Π΅Ρ‚Π΅ си ΠΈ Ρ‚ΠΎΠ²Π° създадС Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅. ИмамС някакъв ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ. Или Ρ‚ΠΎΠ²Π° Π΅ броят Π½Π° Π²Π°ΠΊΡƒΡƒΠΌΠΈΡ‚Π΅, ΠΊΠΎΠΈΡ‚ΠΎ ΠΎΡ‚Π²ΠΈΠ½Ρ‚Π²Π°Ρ‚ брояча Π½Π° Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈΡ‚Π΅. Π—Π° някои вСрсии Π½Π° PostgreSQL Ρ‚ΠΎΠ²Π° са ΠΌΠ½ΠΎΠ³ΠΎ Ρ‚Π΅ΠΆΠΊΠΈ Π²Π°ΠΊΡƒΡƒΠΌΠΈ. И Ρ‚Π΅ ΠΌΠΎΠ³Π°Ρ‚ лСсно Π΄Π° добавят производитСлност, Π·Π°Ρ‰ΠΎΡ‚ΠΎ ΠΈΠ·Π²Π°ΠΆΠ΄Π°Ρ‚ цялата Ρ‚Π°Π±Π»ΠΈΡ†Π°, сканирайки всички Π±Π»ΠΎΠΊΠΎΠ²Π΅ Π² Ρ‚Π°Π·ΠΈ Ρ‚Π°Π±Π»ΠΈΡ†Π°.

И, Ρ€Π°Π·Π±ΠΈΡ€Π° сС, ΠΏΡ€ΠΎΠ΄ΡŠΠ»ΠΆΠΈΡ‚Π΅Π»Π½ΠΎΡΡ‚Ρ‚Π° Π½Π° Π²Π°ΠΊΡƒΡƒΠΌΠΈΡ‚Π΅. Ако ΠΈΠΌΠ°ΠΌΠ΅ дълги Π²Π°ΠΊΡƒΡƒΠΌΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ работят ΠΌΠ½ΠΎΠ³ΠΎ дълго Π²Ρ€Π΅ΠΌΠ΅, Ρ‚ΠΎΠ²Π° ΠΎΠ·Π½Π°Ρ‡Π°Π²Π°, Ρ‡Π΅ трябва ΠΎΡ‚Π½ΠΎΠ²ΠΎ Π΄Π° ΠΎΠ±ΡŠΡ€Π½Π΅ΠΌ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° конфигурацията Π½Π° Π²Π°ΠΊΡƒΡƒΠΌΠ° ΠΈ ΠΌΠΎΠΆΠ΅ Π±ΠΈ Π΄Π° ΠΏΡ€Π΅Ρ€Π°Π·Π³Π»Π΅Π΄Π°ΠΌΠ΅ настройкитС ΠΌΡƒ. Въй ΠΊΠ°Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° възникнС ситуация, ΠΊΠΎΠ³Π°Ρ‚ΠΎ Π²Π°ΠΊΡƒΡƒΠΌΡŠΡ‚ Ρ€Π°Π±ΠΎΡ‚ΠΈ Π²ΡŠΡ€Ρ…Ρƒ масата дълго Π²Ρ€Π΅ΠΌΠ΅ (3-4 часа), Π½ΠΎ ΠΏΠΎ Π²Ρ€Π΅ΠΌΠ΅ Π½Π° Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚Π° Π½Π° Π²Π°ΠΊΡƒΡƒΠΌΠ° Π² масата ΠΎΡ‚Π½ΠΎΠ²ΠΎ успя Π΄Π° сС Π½Π°Ρ‚Ρ€ΡƒΠΏΠ° голямо количСство ΠΌΡŠΡ€Ρ‚Π²ΠΈ Ρ€Π΅Π΄ΠΎΠ²Π΅. И Π²Π΅Π΄Π½Π°Π³Π° слСд ΠΊΠ°Ρ‚ΠΎ Π²Π°ΠΊΡƒΡƒΠΌΡŠΡ‚ ΡΠ²ΡŠΡ€ΡˆΠΈ, Ρ‚ΠΎΠΉ трябва ΠΎΡ‚Π½ΠΎΠ²ΠΎ Π΄Π° Π²Π°ΠΊΡƒΡƒΠΌΠΈΡ€Π° Ρ‚Π°Π·ΠΈ маса. И стигамС Π΄ΠΎ ситуация – Π±Π΅Π·ΠΊΡ€Π°Π΅Π½ Π²Π°ΠΊΡƒΡƒΠΌ. И Π² Ρ‚ΠΎΠ·ΠΈ случай Π²Π°ΠΊΡƒΡƒΠΌΡŠΡ‚ Π½Π΅ сС справя с Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚Π° си ΠΈ Ρ‚Π°Π±Π»ΠΈΡ†ΠΈΡ‚Π΅ Π·Π°ΠΏΠΎΡ‡Π²Π°Ρ‚ постСпСнно Π΄Π° Π½Π°Π±ΡŠΠ±Π²Π°Ρ‚ ΠΏΠΎ Ρ€Π°Π·ΠΌΠ΅Ρ€, Π²ΡŠΠΏΡ€Π΅ΠΊΠΈ Ρ‡Π΅ количСството ΠΏΠΎΠ»Π΅Π·Π½ΠΈ Π΄Π°Π½Π½ΠΈ Π² Π½Π΅Π³ΠΎ остава ΡΡŠΡ‰ΠΎΡ‚ΠΎ. Π‘Π»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»Π½ΠΎ, ΠΏΡ€ΠΈ дълги Π²Π°ΠΊΡƒΡƒΠΌΠΈ, Π½ΠΈΠ΅ Π²ΠΈΠ½Π°Π³ΠΈ Ρ€Π°Π·Π³Π»Π΅ΠΆΠ΄Π°ΠΌΠ΅ конфигурацията ΠΈ сС ΠΎΠΏΠΈΡ‚Π²Π°ΠΌΠ΅ Π΄Π° я ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€Π°ΠΌΠ΅, Π½ΠΎ Π² ΡΡŠΡ‰ΠΎΡ‚ΠΎ Π²Ρ€Π΅ΠΌΠ΅, Ρ‚Π°ΠΊΠ° Ρ‡Π΅ производитСлността Π½Π° клиСнтскитС заявки Π΄Π° Π½Π΅ страда.

Основи Π½Π° Π½Π°Π±Π»ΡŽΠ΄Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° PostgreSQL. АлСксСй ЛСсовски

Π‘Π΅Π³Π° практичСски няма инсталация Π½Π° PostgreSQL, ΠΊΡŠΠ΄Π΅Ρ‚ΠΎ Π΄Π° няма рСпликация Π½Π° ΠΏΠΎΡ‚ΠΎΡ‡Π½ΠΎ ΠΏΡ€Π΅Π΄Π°Π²Π°Π½Π΅. РСпликацията Π΅ процСс Π½Π° ΠΏΡ€Π΅Ρ…Π²ΡŠΡ€Π»ΡΠ½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ ΠΎΡ‚ Π³Π»Π°Π²Π½Π° към Ρ€Π΅ΠΏΠ»ΠΈΠΊΠ°.

РСпликацията Π² PostgreSQL сС ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΈΡ€Π° Ρ‡Ρ€Π΅Π· Ρ€Π΅Π³ΠΈΡΡ‚ΡŠΡ€ Π½Π° Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈΡ‚Π΅. Главният Π³Π΅Π½Π΅Ρ€ΠΈΡ€Π° Ρ€Π΅Π³ΠΈΡΡ‚ΡŠΡ€ Π½Π° Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈΡ‚Π΅. Π Π΅Π³ΠΈΡΡ‚ΡŠΡ€ΡŠΡ‚ Π½Π° Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈΡ‚Π΅ Π½Π° ΠΌΡ€Π΅ΠΆΠΎΠ²Π°Ρ‚Π° Π²Ρ€ΡŠΠ·ΠΊΠ° ΠΎΡ‚ΠΈΠ²Π° Π² Ρ€Π΅ΠΏΠ»ΠΈΠΊΠ°Ρ‚Π°, слСд ΠΊΠΎΠ΅Ρ‚ΠΎ сС Π²ΡŠΠ·ΠΏΡ€ΠΎΠΈΠ·Π²Π΅ΠΆΠ΄Π° Π² Ρ€Π΅ΠΏΠ»ΠΈΠΊΠ°Ρ‚Π°. Всичко Π΅ просто.

Π‘ΡŠΠΎΡ‚Π²Π΅Ρ‚Π½ΠΎ ΠΈΠ·Π³Π»Π΅Π΄ΡŠΡ‚ pg_stat_replication сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π·Π° наблюдСниС Π½Π° забавянСто Π½Π° рСпликацията. Но Π½Π΅ ΠΉ Π΅ лСсно. Π’ΡŠΠ² вСрсия 10 ΠΈΠ·Π³Π»Π΅Π΄ΡŠΡ‚ Π΅ ΠΏΡ€Π΅Ρ‚ΡŠΡ€ΠΏΡΠ» няколко ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈ. ΠŸΡŠΡ€Π²ΠΎ, някои ΠΎΡ‚ ΠΏΠΎΠ»Π΅Ρ‚Π°Ρ‚Π° са ΠΏΡ€Π΅ΠΈΠΌΠ΅Π½ΡƒΠ²Π°Π½ΠΈ. И някои ΠΎΡ‚ ΠΏΠΎΠ»Π΅Ρ‚Π°Ρ‚Π° са Π΄ΠΎΠ±Π°Π²Π΅Π½ΠΈ. Π’ 10-Ρ‚Π° вСрсия сС появиха ΠΏΠΎΠ»Π΅Ρ‚Π°, ΠΊΠΎΠΈΡ‚ΠΎ Π²ΠΈ позволяват Π΄Π° ΠΎΡ†Π΅Π½ΠΈΡ‚Π΅ забавянСто Π½Π° рСпликацията Π·Π° сСкунди. Много Π΅ ΡƒΠ΄ΠΎΠ±Π½ΠΎ. ΠŸΡ€Π΅Π΄ΠΈ вСрсия 10 бСшС възмоТно Π΄Π° сС ΠΎΡ†Π΅Π½ΠΈ забавянСто Π½Π° рСпликацията Π² Π±Π°ΠΉΡ‚ΠΎΠ²Π΅. Π’Π°Π·ΠΈ функция остана Π² 10-Ρ‚Π° вСрсия, Ρ‚.Π΅. ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° ΠΈΠ·Π±Π΅Ρ€Π΅Ρ‚Π΅ ΠΊΠ°ΠΊΠ²ΠΎ Π΅ ΠΏΠΎ-ΡƒΠ΄ΠΎΠ±Π½ΠΎ Π·Π° вас - Π΄Π° ΠΎΡ†Π΅Π½ΠΈΡ‚Π΅ забавянСто Π² Π±Π°ΠΉΡ‚ΠΎΠ²Π΅ ΠΈΠ»ΠΈ Π΄Π° ΠΎΡ†Π΅Π½ΠΈΡ‚Π΅ забавянСто Π² сСкунди. Мнозина правят ΠΈ Π΄Π²Π΅Ρ‚Π΅.

Π’ΡŠΠΏΡ€Π΅ΠΊΠΈ Ρ‚ΠΎΠ²Π°, Π·Π° Π΄Π° ΠΎΡ†Π΅Π½ΠΈΡ‚Π΅ забавянСто Π½Π° рСпликацията, трябва Π΄Π° Π·Π½Π°Π΅Ρ‚Π΅ позицията Π½Π° рСгистрационния Ρ„Π°ΠΉΠ» Π² транзакцията. И Ρ‚Π΅Π·ΠΈ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ Π½Π° Ρ€Π΅Π³ΠΈΡΡ‚ΡŠΡ€Π° Π½Π° Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈΡ‚Π΅ са само Π² ΠΈΠ·Π³Π»Π΅Π΄Π° pg_stat_replication. ΠžΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»Π½ΠΎ ΠΊΠ°Π·Π°Π½ΠΎ, ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ функцията pg_xlog_location_diff(), Π·Π° Π΄Π° Π²Π·Π΅ΠΌΠ΅ΠΌ Π΄Π²Π΅ Ρ‚ΠΎΡ‡ΠΊΠΈ Π² Ρ€Π΅Π³ΠΈΡΡ‚ΡŠΡ€Π° Π½Π° Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈΡ‚Π΅. Π˜Π·Ρ‡ΠΈΡΠ»Π΅Ρ‚Π΅ Π΄Π΅Π»Ρ‚Π° ΠΌΠ΅ΠΆΠ΄Ρƒ тях ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π΅Ρ‚Π΅ забавянСто Π½Π° рСпликацията Π² Π±Π°ΠΉΡ‚ΠΎΠ²Π΅. Много Π΅ ΡƒΠ΄ΠΎΠ±Π½ΠΎ ΠΈ просто.

Π’ΡŠΠ² вСрсия 10 Ρ‚Π°Π·ΠΈ функция бСшС ΠΏΡ€Π΅ΠΈΠΌΠ΅Π½ΡƒΠ²Π°Π½Π° Π½Π° pg_wal_lsn_diff(). ΠšΠ°Ρ‚ΠΎ цяло, във всички Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, ΠΈΠ·Π³Π»Π΅Π΄ΠΈ, ΠΏΠΎΠΌΠΎΡ‰Π½ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈ, ΠΊΡŠΠ΄Π΅Ρ‚ΠΎ сС ΡΡ€Π΅Ρ‰Π°ΡˆΠ΅ Π΄ΡƒΠΌΠ°Ρ‚Π° "xlog", тя бСшС Π·Π°ΠΌΠ΅Π½Π΅Π½Π° със стойността "wal". Π’ΠΎΠ²Π° Π΅ ΠΊΠ°ΠΊΡ‚ΠΎ Π² ΠΈΠ·Π³Π»Π΅Π΄ΠΈΡ‚Π΅, Ρ‚Π°ΠΊΠ° ΠΈ във Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈΡ‚Π΅. Π’ΠΎΠ²Π° Π΅ Ρ‚Π°ΠΊΠ°Π²Π° иновация.

ОсвСн Ρ‚ΠΎΠ²Π° Π² 10-Ρ‚Π° вСрсия бяха Π΄ΠΎΠ±Π°Π²Π΅Π½ΠΈ Ρ€Π΅Π΄ΠΎΠ²Π΅, ΠΊΠΎΠΈΡ‚ΠΎ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎ ΠΏΠΎΠΊΠ°Π·Π²Π°Ρ‚ забавянСто. Π’ΠΎΠ²Π° са забавянС ΠΏΡ€ΠΈ запис, забавянС Π½Π° ΠΏΡ€ΠΎΠΌΠΈΠ²Π°Π½Π΅, забавянС ΠΏΡ€ΠΈ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎ Π²ΡŠΠ·ΠΏΡ€ΠΎΠΈΠ·Π²Π΅ΠΆΠ΄Π°Π½Π΅. ВоСст, Π²Π°ΠΆΠ½ΠΎ Π΅ Π΄Π° сС слСдят Ρ‚Π΅Π·ΠΈ Π½Π΅Ρ‰Π°. Ако Π²ΠΈΠ΄ΠΈΠΌ, Ρ‡Π΅ ΠΈΠΌΠ°ΠΌΠ΅ забавянС Π½Π° рСпликацията, Ρ‚ΠΎΠ³Π°Π²Π° трябва Π΄Π° ΠΏΡ€ΠΎΡƒΡ‡ΠΈΠΌ Π·Π°Ρ‰ΠΎ сС Π΅ появило, ΠΎΡ‚ΠΊΡŠΠ΄Π΅ ΠΈΠ΄Π²Π° ΠΈ Π΄Π° отстраним ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°.

Основи Π½Π° Π½Π°Π±Π»ΡŽΠ΄Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° PostgreSQL. АлСксСй ЛСсовски

Бъс систСмнитС ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ ΠΏΠΎΡ‡Ρ‚ΠΈ всичко Π΅ Π½Π°Ρ€Π΅Π΄. ΠšΠΎΠ³Π°Ρ‚ΠΎ сС Ρ€Π°ΠΆΠ΄Π° някакъв ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³, Ρ‚ΠΎΠΉ Π·Π°ΠΏΠΎΡ‡Π²Π° със систСмни ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ. Π’ΠΎΠ²Π° Π΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° процСсори, ΠΏΠ°ΠΌΠ΅Ρ‚, суап, ΠΌΡ€Π΅ΠΆΠ° ΠΈ диск. Но Π²ΡŠΠΏΡ€Π΅ΠΊΠΈ Ρ‚ΠΎΠ²Π° ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΈ Π½Π΅ са Ρ‚Π°ΠΌ ΠΏΠΎ ΠΏΠΎΠ΄Ρ€Π°Π·Π±ΠΈΡ€Π°Π½Π΅.

Ако всичко Π΅ Π½Π°Ρ€Π΅Π΄ с ΠΈΠ·Ρ…Π²ΡŠΡ€Π»ΡΠ½Π΅Ρ‚ΠΎ Π½Π° процСса, Ρ‚ΠΎΠ³Π°Π²Π° ΠΈΠΌΠ° ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈ с ΠΈΠ·Ρ…Π²ΡŠΡ€Π»ΡΠ½Π΅Ρ‚ΠΎ Π½Π° диска. ΠšΠ°Ρ‚ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈΡ‚Π΅ Π½Π° ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³ добавят информация Π·Π° чСстотната Π»Π΅Π½Ρ‚Π°. МоТС Π΄Π° бъдС Π² iops ΠΈΠ»ΠΈ Π±Π°ΠΉΡ‚ΠΎΠ²Π΅. Но Ρ‚Π΅ забравят Π·Π° латСнтността ΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° дисковитС устройства. Π’ΠΎΠ²Π° са ΠΏΠΎ-Π²Π°ΠΆΠ½ΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ Π½ΠΈ позволяват Π΄Π° ΠΎΡ†Π΅Π½ΠΈΠΌ ΠΊΠΎΠ»ΠΊΠΎ са Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π΅Π½ΠΈ Π½Π°ΡˆΠΈΡ‚Π΅ дисковС ΠΈ ΠΊΠΎΠ»ΠΊΠΎ забавят. Ако ΠΈΠΌΠ°ΠΌΠ΅ висока латСнтност, Ρ‚ΠΎΠ²Π° ΠΎΠ·Π½Π°Ρ‡Π°Π²Π°, Ρ‡Π΅ ΠΈΠΌΠ° ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈ с дисковСтС. Ако ΠΈΠΌΠ°ΠΌΠ΅ високо Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅, Ρ‚ΠΎΠ²Π° ΠΎΠ·Π½Π°Ρ‡Π°Π²Π°, Ρ‡Π΅ дисковСтС Π½Π΅ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° сС справят. Π’ΠΎΠ²Π° са ΠΏΠΎΠ²Π΅Ρ‡Π΅ качСствСни характСристики, ΠΎΡ‚ΠΊΠΎΠ»ΠΊΠΎΡ‚ΠΎ чСстотната Π»Π΅Π½Ρ‚Π°.

Π’Π΅Π·ΠΈ статистики ΠΎΠ±Π°Ρ‡Π΅ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈ ΠΈ ΠΎΡ‚ Ρ„Π°ΠΉΠ»ΠΎΠ²Π°Ρ‚Π° систСма /proc, ΠΊΠ°ΠΊΡ‚ΠΎ сС ΠΏΡ€Π°Π²ΠΈ Π·Π° Ρ€Π΅Ρ†ΠΈΠΊΠ»ΠΈΡ€Π°Π½Π΅Ρ‚ΠΎ Π½Π° процСсора. Π—Π°Ρ‰ΠΎ Ρ‚Π°Π·ΠΈ информация Π½Π΅ сС добавя към ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³Π°, Π½Π΅ Π·Π½Π°ΠΌ. Но всС ΠΏΠ°ΠΊ Π΅ Π²Π°ΠΆΠ½ΠΎ Π΄Π° Π³ΠΎ ΠΈΠΌΠ°Ρ‚Π΅ във Π²Π°ΡˆΠ΅Ρ‚ΠΎ наблюдСниС.

Π‘ΡŠΡ‰ΠΎΡ‚ΠΎ Π²Π°ΠΆΠΈ ΠΈ Π·Π° ΠΌΡ€Π΅ΠΆΠΎΠ²ΠΈΡ‚Π΅ интСрфСйси. Има информация Π·Π° чСстотната Π»Π΅Π½Ρ‚Π° Π½Π° ΠΌΡ€Π΅ΠΆΠ°Ρ‚Π° Π² ΠΏΠ°ΠΊΠ΅Ρ‚ΠΈ, Π² Π±Π°ΠΉΡ‚ΠΎΠ²Π΅, Π½ΠΎ Π²ΡŠΠΏΡ€Π΅ΠΊΠΈ Ρ‚ΠΎΠ²Π° няма информация Π·Π° латСнтност ΠΈ няма информация Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅, Π²ΡŠΠΏΡ€Π΅ΠΊΠΈ Ρ‡Π΅ Ρ‚ΠΎΠ²Π° ΡΡŠΡ‰ΠΎ Π΅ ΠΏΠΎΠ»Π΅Π·Π½Π° информация.

Основи Π½Π° Π½Π°Π±Π»ΡŽΠ΄Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° PostgreSQL. АлСксСй ЛСсовски

ВсСки ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³ ΠΈΠΌΠ° своитС Π½Π΅Π΄ΠΎΡΡ‚Π°Ρ‚ΡŠΡ†ΠΈ. И ΠΊΠ°ΠΊΡŠΠ²Ρ‚ΠΎ ΠΈ Π²ΠΈΠ΄ ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³ Π΄Π° ΠΏΡ€Π΅Π΄ΠΏΡ€ΠΈΠ΅ΠΌΠ΅Ρ‚Π΅, Ρ‚ΠΎΠΉ Π²ΠΈΠ½Π°Π³ΠΈ няма Π΄Π° отговаря Π½Π° ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈ ΠΊΡ€ΠΈΡ‚Π΅Ρ€ΠΈΠΈ. Но Π²ΡŠΠΏΡ€Π΅ΠΊΠΈ Ρ‚ΠΎΠ²Π° Ρ‚Π΅ сС Ρ€Π°Π·Π²ΠΈΠ²Π°Ρ‚, добавят сС Π½ΠΎΠ²ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, Π½ΠΎΠ²ΠΈ Π½Π΅Ρ‰Π°, Ρ‚Π°ΠΊΠ° Ρ‡Π΅ ΠΈΠ·Π±Π΅Ρ€Π΅Ρ‚Π΅ Π½Π΅Ρ‰ΠΎ ΠΈ Π³ΠΎ Π΄ΠΎΠ²ΡŠΡ€ΡˆΠ΅Ρ‚Π΅.

И Π·Π° Π΄Π° Π·Π°Π²ΡŠΡ€ΡˆΠΈΡ‚Π΅, Π²ΠΈΠ½Π°Π³ΠΈ трябва Π΄Π° ΠΈΠΌΠ°Ρ‚Π΅ прСдстава ΠΊΠ°ΠΊΠ²ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π²Π° Π΄Π°Π΄Π΅Π½Π°Ρ‚Π° статистика ΠΈ ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° Ρ€Π΅ΡˆΠ°Π²Π°Ρ‚Π΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈ с нСя.

И няколко ΠΊΠ»ΡŽΡ‡ΠΎΠ²ΠΈ ΠΌΠΎΠΌΠ΅Π½Ρ‚Π°:

  • Π’ΠΈΠ½Π°Π³ΠΈ трябва Π΄Π° слСдитС наличността, Π΄Π° ΠΈΠΌΠ°Ρ‚Π΅ Ρ‚Π°Π±Π»Π°, Π·Π° Π΄Π° ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π±ΡŠΡ€Π·ΠΎ Π΄Π° ΠΏΡ€Π΅Ρ†Π΅Π½ΠΈΡ‚Π΅ Π΄Π°Π»ΠΈ всичко Π΅ Π½Π°Ρ€Π΅Π΄ с Π±Π°Π·Π°Ρ‚Π°.
  • Π’ΠΈΠ½Π°Π³ΠΈ трябва Π΄Π° ΠΈΠΌΠ°Ρ‚Π΅ прСдстава ΠΊΠ°ΠΊΠ²ΠΈ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΈ работят с Π²Π°ΡˆΠ°Ρ‚Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ, Π·Π° Π΄Π° отсССтС Π»ΠΎΡˆΠΈΡ‚Π΅ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΈ ΠΈ Π΄Π° Π³ΠΈ застрСлятС.
  • Π’Π°ΠΆΠ½ΠΎ Π΅ Π΄Π° сС ΠΎΡ†Π΅Π½ΠΈ ΠΊΠ°ΠΊ Ρ‚Π΅Π·ΠΈ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΈ работят с Π΄Π°Π½Π½ΠΈ. Врябва Π΄Π° ΠΈΠΌΠ°Ρ‚Π΅ прСдстава Π·Π° натоварСността си.
  • Π’Π°ΠΆΠ½ΠΎ Π΅ Π΄Π° сС ΠΏΡ€Π΅Ρ†Π΅Π½ΠΈ ΠΊΠ°ΠΊ сС Ρ„ΠΎΡ€ΠΌΠΈΡ€Π° Ρ‚ΠΎΠ²Π° Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅, с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° ΠΊΠ°ΠΊΠ²ΠΈ заявки. ΠœΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° оцСняватС заявки, ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° Π³ΠΈ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€Π°Ρ‚Π΅, ΠΏΡ€Π΅Ρ€Π°Π±ΠΎΡ‚Π²Π°Ρ‚Π΅, ΠΈΠ·Π³Ρ€Π°ΠΆΠ΄Π°Ρ‚Π΅ индСкси Π·Π° тях. Много Π΅ Π²Π°ΠΆΠ½ΠΎ.
  • Π€ΠΎΠ½ΠΎΠ²ΠΈΡ‚Π΅ процСси ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° повлияят ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»Π½ΠΎ Π½Π° клиСнтскитС заявки, Ρ‚Π°ΠΊΠ° Ρ‡Π΅ Π΅ Π²Π°ΠΆΠ½ΠΎ Π΄Π° сС ΡƒΠ²Π΅Ρ€ΠΈΡ‚Π΅, Ρ‡Π΅ Ρ‚Π΅ Π½Π΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ Ρ‚Π²ΡŠΡ€Π΄Π΅ ΠΌΠ½ΠΎΠ³ΠΎ рСсурси.
  • БистСмнитС ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ Π²ΠΈ позволяват Π΄Π° ΠΏΡ€Π°Π²ΠΈΡ‚Π΅ ΠΏΠ»Π°Π½ΠΎΠ²Π΅ Π·Π° ΠΌΠ°Ρ‰Π°Π±ΠΈΡ€Π°Π½Π΅, Π·Π° ΡƒΠ²Π΅Π»ΠΈΡ‡Π°Π²Π°Π½Π΅ Π½Π° ΠΊΠ°ΠΏΠ°Ρ†ΠΈΡ‚Π΅Ρ‚Π° Π½Π° Π²Π°ΡˆΠΈΡ‚Π΅ ΡΡŠΡ€Π²ΡŠΡ€ΠΈ, Ρ‚Π°ΠΊΠ° Ρ‡Π΅ Π΅ Π²Π°ΠΆΠ½ΠΎ Π΄Π° Π³ΠΈ прослСдяватС ΠΈ оцСняватС ΡΡŠΡ‰ΠΎ.

Основи Π½Π° Π½Π°Π±Π»ΡŽΠ΄Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° PostgreSQL. АлСксСй ЛСсовски

Ако сС интСрСсуватС ΠΎΡ‚ Ρ‚Π°Π·ΠΈ Ρ‚Π΅ΠΌΠ°, ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° слСдватС Ρ‚Π΅Π·ΠΈ Π²Ρ€ΡŠΠ·ΠΊΠΈ.
http://bit.do/stats_collector Π΅ ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»Π½Π°Ρ‚Π° докумСнтация ΠΎΡ‚ ΠΊΠΎΠ»Π΅ΠΊΡ‚ΠΎΡ€Π° Π½Π° статистики. Има описаниС Π½Π° всички статистичСски ΠΈΠ·Π³Π»Π΅Π΄ΠΈ ΠΈ описаниС Π½Π° всички ΠΏΠΎΠ»Π΅Ρ‚Π°. ΠœΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° Π³ΠΈ Ρ‡Π΅Ρ‚Π΅Ρ‚Π΅, Ρ€Π°Π·Π±ΠΈΡ€Π°Ρ‚Π΅ ΠΈ Π°Π½Π°Π»ΠΈΠ·ΠΈΡ€Π°Ρ‚Π΅. И въз основа Π½Π° тях ΠΈΠ·Π³Ρ€Π°Π΄Π΅Ρ‚Π΅ свои собствСни Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΈ, Π΄ΠΎΠ±Π°Π²Π΅Ρ‚Π΅ към вашия ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ΠΈ Π·Π° заявка:
http://bit.do/dataegret_sql
http://bit.do/lesovsky_sql

Π’ΠΎΠ²Π° Π΅ Π½Π°ΡˆΠ΅Ρ‚ΠΎ ΠΊΠΎΡ€ΠΏΠΎΡ€Π°Ρ‚ΠΈΠ²Π½ΠΎ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ ΠΈ ΠΌΠΎΠ΅Ρ‚ΠΎ собствСно. Π˜ΠΌΠ°Ρ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΈ заявки. Няма запитвания ΠΎΡ‚ сСлСкт* ΠΎΡ‚ сСрия, Π½Π΅Ρ‰ΠΎ Ρ‚Π°ΠΌ. Π’Π΅Ρ‡Π΅ ΠΈΠΌΠ° Π³ΠΎΡ‚ΠΎΠ²ΠΈ заявки с обСдинСния, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΠΊΠΈ интСрСсни Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ Π²ΠΈ позволяват Π΄Π° ΠΏΡ€Π°Π²ΠΈΡ‚Π΅ Ρ‡Π΅Ρ‚Π»ΠΈΠ²ΠΈ, ΡƒΠ΄ΠΎΠ±Π½ΠΈ стойности ΠΎΡ‚ Π½Π΅ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π΅Π½ΠΈ числа, тоСст Ρ‚ΠΎΠ²Π° са Π±Π°ΠΉΡ‚ΠΎΠ²Π΅, Π²Ρ€Π΅ΠΌΠ΅. ΠœΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° Π³ΠΈ ΠΈΠ·Π±ΠΈΡ€Π°Ρ‚Π΅, Π³Π»Π΅Π΄Π°Ρ‚Π΅, Π°Π½Π°Π»ΠΈΠ·ΠΈΡ€Π°Ρ‚Π΅, добавятС към Π²Π°ΡˆΠΈΡ‚Π΅ наблюдСния, ΡΡŠΠ·Π΄Π°Π²Π°Ρ‚Π΅ свои собствСни наблюдСния въз основа Π½Π° тях.

Π’ΡŠΠΏΡ€ΠΎΡΠΈ

Π’ΡŠΠΏΡ€ΠΎΡ: ΠšΠ°Π·Π°Ρ…Ρ‚Π΅, Ρ‡Π΅ няма Π΄Π° Ρ€Π΅ΠΊΠ»Π°ΠΌΠΈΡ€Π°Ρ‚Π΅ ΠΌΠ°Ρ€ΠΊΠΈ, Π½ΠΎ всС ΠΎΡ‰Π΅ сС чудя - ΠΊΠ°ΠΊΠ²ΠΈ Ρ‚Π°Π±Π»Π° Π·Π° ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚Π΅ Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ‚Π΅ си?
ΠžΡ‚Π³ΠΎΠ²ΠΎΡ€: По Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ Π½Π°Ρ‡ΠΈΠ½ΠΈ. Π‘Π»ΡƒΡ‡Π²Π° сС Π΄Π° Π΄ΠΎΠΉΠ΄Π΅ΠΌ ΠΏΡ€ΠΈ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° ΠΈ Ρ‚ΠΎΠΉ Π²Π΅Ρ‡Π΅ ΠΈΠΌΠ° собствСн ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³. И ΡΡŠΠ²Π΅Ρ‚Π²Π°ΠΌΠ΅ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° ΠΊΠ°ΠΊΠ²ΠΎ трябва Π΄Π° Π΄ΠΎΠ±Π°Π²ΠΈ към нСговия ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³. Най-Π»ΠΎΡˆΠΎΡ‚ΠΎ Π΅ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ със Zabbix. Въй ΠΊΠ°Ρ‚ΠΎ няма Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ Π·Π° ΠΈΠ·Π³Ρ€Π°ΠΆΠ΄Π°Π½Π΅ Π½Π° TopN-Π³Ρ€Π°Ρ„ΠΈΠΊΠ°. НиС самитС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ OkmeterΠ·Π°Ρ‰ΠΎΡ‚ΠΎ сС консултирахмС с Ρ‚Π΅Π·ΠΈ ΠΌΠΎΠΌΡ‡Π΅Ρ‚Π° относно ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³Π°. Π’Π΅ Π½Π°ΠΏΡ€Π°Π²ΠΈΡ…Π° ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³ Π½Π° PostgreSQL въз основа Π½Π° Π½Π°ΡˆΠ΅Ρ‚ΠΎ TOR. Пиша собствСн ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Π·Π° домашни Π»ΡŽΠ±ΠΈΠΌΡ†ΠΈ, ΠΊΠΎΠΉΡ‚ΠΎ ΡΡŠΠ±ΠΈΡ€Π° Π΄Π°Π½Π½ΠΈ Ρ‡Ρ€Π΅Π· Prometheus ΠΈ Π³ΠΈ въвСТда Π“Ρ€Π°Ρ„Π°Π½Π°. ΠœΠΎΡΡ‚Π° Π·Π°Π΄Π°Ρ‡Π° Π΅ Π΄Π° направя собствСн СкспортСр Π² Prometheus ΠΈ слСд Ρ‚ΠΎΠ²Π° Π΄Π° нарисувам всичко Π² Grafana.

Π’ΡŠΠΏΡ€ΠΎΡ: Има Π»ΠΈ Π°Π½Π°Π»ΠΎΠ·ΠΈ Π½Π° AWR ΠΎΡ‚Ρ‡Π΅Ρ‚ΠΈ ΠΈΠ»ΠΈ ... Π°Π³Ρ€Π΅Π³Π°Ρ†ΠΈΠΈ? Π—Π½Π°Π΅Ρ‚Π΅ Π»ΠΈ Π·Π° Π½Π΅Ρ‰ΠΎ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎ?
ΠžΡ‚Π³ΠΎΠ²ΠΎΡ€: Π”Π°, Π·Π½Π°ΠΌ ΠΊΠ°ΠΊΠ²ΠΎ Π΅ AWR, Ρ‚ΠΎΠ²Π° Π΅ страхотно Π½Π΅Ρ‰ΠΎ. Π’ ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° ΠΈΠΌΠ° Ρ€Π°Π·Π½ΠΎΠΎΠ±Ρ€Π°Π·ΠΈΠ΅ ΠΎΡ‚ вСлосипСди, ΠΊΠΎΠΈΡ‚ΠΎ ΠΈΠ·ΠΏΡŠΠ»Π½ΡΠ²Π°Ρ‚ ΠΏΡ€ΠΈΠ±Π»ΠΈΠ·ΠΈΡ‚Π΅Π»Π½ΠΎ слСдния ΠΌΠΎΠ΄Π΅Π». Π’ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π» ΠΎΡ‚ Π²Ρ€Π΅ΠΌΠ΅ някои Π±Π°Π·ΠΎΠ²ΠΈ Π»ΠΈΠ½ΠΈΠΈ сС записват Π² ΡΡŠΡ‰ΠΈΡ PostgreSQL ΠΈΠ»ΠΈ Π² ΠΎΡ‚Π΄Π΅Π»Π½ΠΎ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅. ΠœΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° Π³ΠΈ ΠΏΠΎΡ‚ΡŠΡ€ΡΠΈΡ‚Π΅ Π² Google, Ρ‚Π΅ са. Π•Π΄ΠΈΠ½ ΠΎΡ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈΡ‚Π΅ Π½Π° Ρ‚Π°ΠΊΠΎΠ²Π° Π½Π΅Ρ‰ΠΎ сСди във Ρ„ΠΎΡ€ΡƒΠΌΠ° Π½Π° sql.ru Π² Ρ‚Π΅ΠΌΠ°Ρ‚Π° Π·Π° PostgreSQL. ΠœΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° Π³ΠΎ Ρ…Π²Π°Π½Π΅Ρ‚Π΅ Ρ‚Π°ΠΌ. Π”Π°, ΠΈΠΌΠ° Ρ‚Π°ΠΊΠΈΠ²Π° Π½Π΅Ρ‰Π°, ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚. плюс Π² своята pgCenter Аз ΡΡŠΡ‰ΠΎ пиша Π½Π΅Ρ‰ΠΎ, ΠΊΠΎΠ΅Ρ‚ΠΎ Π²ΠΈ позволява Π΄Π° Π½Π°ΠΏΡ€Π°Π²ΠΈΡ‚Π΅ ΡΡŠΡ‰ΠΎΡ‚ΠΎ.

PS1 Ако ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚Π΅ postgres_exporter, ΠΊΠ°ΠΊΠ²ΠΎ Ρ‚Π°Π±Π»ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚Π΅? Има няколко ΠΎΡ‚ тях. Π’Π΅Ρ‡Π΅ са остарСли. МоТС Π»ΠΈ общността Π΄Π° създадС Π°ΠΊΡ‚ΡƒΠ°Π»ΠΈΠ·ΠΈΡ€Π°Π½ шаблон?

PS2 ΠŸΡ€Π΅ΠΌΠ°Ρ…Π½Π° pganalyze, Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ Π΅ собствСно SaaS ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΠ΅Ρ‚ΠΎ сС фокусира Π²ΡŠΡ€Ρ…Ρƒ наблюдСниС Π½Π° производитСлността ΠΈ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€Π°Π½ΠΈ прСдлоТСния Π·Π° настройка.

Π’ Π°Π½ΠΊΠ΅Ρ‚Π°Ρ‚Π° ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° участват само рСгистрирани ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΠΈ. Π’ΠΏΠΈΡˆΠΈ сС, Моля Ρ‚Π΅.

КоС самостоятСлно хоствано наблюдСниС Π½Π° postgresql (с Ρ‚Π°Π±Π»ΠΎ Π·Π° ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅) смятатС, Ρ‡Π΅ Π΅ Π½Π°ΠΉ-Π΄ΠΎΠ±Ρ€ΠΎΡ‚ΠΎ?

  • 30,0%Zabbix + допълнСния ΠΎΡ‚ АлСксСй ЛСсовски ΠΈΠ»ΠΈ zabbix 4.4 ΠΈΠ»ΠΈ libzbxpgsql + zabbix libzbxpgsql + zabbix3

  • 0,0%https://github.com/lesovsky/pgcenter0

  • 0,0%https://github.com/pg-monz/pg_monz0

  • 20,0%https://github.com/cybertec-postgresql/pgwatch22

  • 20,0%https://github.com/postgrespro/mamonsu2

  • 0,0%https://www.percona.com/doc/percona-monitoring-and-management/conf-postgres.html0

  • 10,0%pganalyze Π΅ ΠΏΠ°Ρ‚Π΅Π½Ρ‚ΠΎΠ²Π°Π½ SaaS - Π½Π΅ ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΈΠ·Ρ‚Ρ€ΠΈΠ΅1

  • 10,0%https://github.com/powa-team/powa1

  • 0,0%https://github.com/darold/pgbadger0

  • 0,0%https://github.com/darold/pgcluu0

  • 0,0%https://github.com/zalando/PGObserver0

  • 10,0%https://github.com/spotify/postgresql-metrics1

10 ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΠΈ гласуваха. 26 ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΠΈ сС Π²ΡŠΠ·Π΄ΡŠΡ€ΠΆΠ°Ρ…Π°.

Π˜Π·Ρ‚ΠΎΡ‡Π½ΠΈΠΊ: www.habr.com

ДобавянС Π½Π° Π½ΠΎΠ² ΠΊΠΎΠΌΠ΅Π½Ρ‚Π°Ρ€