เบžเบทเป‰เบ™เบ–เบฒเบ™เบ‚เบญเบ‡เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก PostgreSQL. Alexey Lesovsky

เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเปเบ™เบฐเบ™เปเบฒเปƒเบซเป‰เบ—เปˆเบฒเบ™เบญเปˆเบฒเบ™เบšเบปเบ”เบšเบฑเบ™เบ—เบถเบเบ‚เบญเบ‡เบšเบปเบ”เบฅเบฒเบเบ‡เบฒเบ™เป‚เบ”เบ Alexey Lesovsky เบˆเบฒเบ Data Egret "เบžเบทเป‰เบ™เบ–เบฒเบ™เบ‚เบญเบ‡เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก PostgreSQL"

เปƒเบ™เบšเบปเบ”เบฅเบฒเบเบ‡เบฒเบ™เบ™เบตเป‰, Alexey Lesovsky เบˆเบฐเป€เบงเบปเป‰เบฒเบเปˆเบฝเบงเบเบฑเบšเบˆเบธเบ”เบชเปเบฒเบ„เบฑเบ™เบ‚เบญเบ‡เบชเบฐเบ–เบดเบ•เบด post-gress, เบชเบดเปˆเบ‡เบ—เบตเปˆเบžเบงเบเป€เบ‚เบปเบฒเบซเบกเบฒเบเบ„เบงเบฒเบกเบงเปˆเบฒ, เปเบฅเบฐเป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบžเบงเบเป€เบ‚เบปเบฒเบ„เบงเบ™เบˆเบฐเบกเบตเบขเบนเปˆเปƒเบ™เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก; เบเปˆเบฝเบงเบเบฑเบšเบชเบดเปˆเบ‡เบ—เบตเปˆเบเบฒเบŸเบ„เบงเบ™เบˆเบฐเบขเบนเปˆเปƒเบ™เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก, เบงเบดเบ—เบตเบเบฒเบ™เป€เบžเบตเปˆเบกเบžเบงเบเบกเบฑเบ™เปเบฅเบฐเบงเบดเบ—เบตเบเบฒเบ™เบ•เบตเบ„เบงเบฒเบกเบกเบฑเบ™. เบšเบปเบ”เบฅเบฒเบเบ‡เบฒเบ™เบˆเบฐเป€เบ›เบฑเบ™เบ›เบฐเป‚เบซเบเบ”เบ•เปเปˆเบœเบนเป‰เบšเปเบฅเบดเบซเบฒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™, เบœเบนเป‰เบšเปเบฅเบดเบซเบฒเบ™เบฅเบฐเบšเบปเบšเปเบฅเบฐเบœเบนเป‰เบžเบฑเบ”เบ—เบฐเบ™เบฒเบ—เบตเปˆเบกเบตเบ„เบงเบฒเบกเบชเบปเบ™เปƒเบˆเปƒเบ™เบเบฒเบ™เปเบเป‰เป„เบ‚เบšเบฑเบ™เบซเบฒ Postgres.

เบžเบทเป‰เบ™เบ–เบฒเบ™เบ‚เบญเบ‡เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก PostgreSQL. Alexey Lesovsky

เบ‚เป‰เบญเบเบŠเบทเปˆ Alexey Lesovsky, เบ‚เป‰เบญเบเป€เบ›เบฑเบ™เบ•เบปเบงเปเบ—เบ™เบ‚เบญเบ‡เบšเปเบฅเบดเบชเบฑเบ” Data Egret.

เบชเบญเบ‡เบชเบฒเบกเบ„เปเบฒเบเปˆเบฝเบงเบเบฑเบšเบ•เบปเบงเบ‚เป‰เบญเบเป€เบญเบ‡. เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเป„เบ”เป‰เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เป€เบ›เบฑเบ™เป€เบงเบฅเบฒเบ”เบปเบ™เบ™เบฒเบ™เบเปˆเบญเบ™เบซเบ™เป‰เบฒเบ™เบตเป‰เป€เบ›เบฑเบ™เบœเบนเป‰เป€เบšเบดเปˆเบ‡เปเบเบ‡เบฅเบฐเบšเบปเบš.

เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเป„เบ”เป‰เบ„เบธเป‰เบกเบ„เบญเบ‡เบฅเบฐเบšเบปเบš Linux เบ•เปˆเบฒเบ‡เป†เบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™, เป€เบฎเบฑเบ”เบงเบฝเบเบเปˆเบฝเบงเบเบฑเบšเบชเบดเปˆเบ‡เบ•เปˆเบฒเบ‡เป†เบ—เบตเปˆเบเปˆเบฝเบงเบ‚เป‰เบญเบ‡เบเบฑเบš Linux, i.e. virtualization, เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก, เป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบš proxies, เปเบฅเบฐเบญเบทเปˆเบ™เป†. เปเบ•เปˆเปƒเบ™เบšเบฒเบ‡เบˆเบธเบ”เบ‚เป‰เบญเบเป€เบฅเบตเปˆเบกเป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบšเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™, PostgreSQL. เบ‚เป‰เบญเบเบกเบฑเบเบฅเบฒเบงเปเบ—เป‰เป†. เปเบฅเบฐเปƒเบ™เบšเบฒเบ‡เบˆเบธเบ”เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเป„เบ”เป‰เป€เบฅเบตเปˆเบกเป€เบฎเบฑเบ”เบงเบฝเบเบเปˆเบฝเบงเบเบฑเบš PostgreSQL เป€เบเบทเบญเบšเบ—เบฑเบ‡เบซเบกเบปเบ”เบ—เบตเปˆเปƒเบŠเป‰เป€เบงเบฅเบฒเป€เบฎเบฑเบ”เบงเบฝเบเบ‚เบญเบ‡เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒ. เปเบฅเบฐเบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบ„เปˆเบญเบเป†เบ‚เป‰เบญเบเบเบฒเบเป€เบ›เบฑเบ™ PostgreSQL DBA.

เปเบฅเบฐเบ•เบฐเบซเบผเบญเบ”เบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบ‚เบญเบ‡เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒ, เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเบชเบฐเป€เบซเบกเบตเบกเบตเบ„เบงเบฒเบกเบชเบปเบ™เปƒเบˆเปƒเบ™เบซเบปเบงเบ‚เปเป‰เบ‚เบญเบ‡เบชเบฐเบ–เบดเบ•เบด, เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก, เปเบฅเบฐ telemetry. เปเบฅเบฐเปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆเบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเป€เบ›เบฑเบ™เบœเบนเป‰เป€เบšเบดเปˆเบ‡เปเบเบ‡เบฅเบฐเบšเบปเบš, เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเป„เบ”เป‰เป€เบฎเบฑเบ”เบงเบฝเบเบขเปˆเบฒเบ‡เปƒเบเป‰เบŠเบดเบ”เบเบฑเบš Zabbix. เปเบฅเบฐเบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเป„เบ”เป‰เบ‚เบฝเบ™เบŠเบธเบ”เบ™เป‰เบญเบเป†เบ‚เบญเบ‡เบชเบฐเบ„เบดเบšเป€เบŠเบฑเปˆเบ™ zabbix-extensions. เบฅเบฒเบงเป€เบ›เบฑเบ™เบ—เบตเปˆเบ™เบดเบเบปเบกเบซเบผเบฒเบเปƒเบ™เป€เบงเบฅเบฒเบ‚เบญเบ‡เบฅเบฒเบง. เปเบฅเบฐเบขเบนเปˆเบ—เบตเปˆเบ™เบฑเป‰เบ™เบกเบฑเบ™เป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰เบ—เบตเปˆเบˆเบฐเบ•เบดเบ”เบ•เบฒเบกเบชเบดเปˆเบ‡เบ—เบตเปˆเบชเปเบฒเบ„เบฑเบ™เบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™เบซเบผเบฒเบ, เบšเปเปˆเบžเบฝเบ‡เปเบ•เปˆ Linux, เปเบ•เปˆเบเบฑเบ‡เบญเบปเบ‡เบ›เบฐเบเบญเบšเบ•เปˆเบฒเบ‡เป†.

เบ•เบญเบ™เบ™เบตเป‰เบ‚เป‰เบญเบเบเปเบฒเบฅเบฑเบ‡เป€เบฎเบฑเบ”เบงเบฝเบเบเปˆเบฝเบงเบเบฑเบš PostgreSQL. เบ‚เป‰เบญเบเบเปเบฒเบฅเบฑเบ‡เบ‚เบฝเบ™เบชเบดเปˆเบ‡เบญเบทเปˆเบ™เบ—เบตเปˆเบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบ—เปˆเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบšเบชเบฐเบ–เบดเบ•เบด PostgreSQL. เบกเบฑเบ™โ€‹เบ–เบทเบโ€‹เป€เบญเบตเป‰เบ™โ€‹เบงเปˆเบฒ pgCenter (เบšเบปเบ”เบ„เบงเบฒเบกเบเปˆเบฝเบงเบเบฑเบš Habre - เบชเบฐเบ–เบดเบ•เบด Post-gress เป‚เบ”เบเบšเปเปˆเบกเบตเป€เบชเบฑเป‰เบ™เบ›เบฐเบชเบฒเบ”เปเบฅเบฐเบ„เบงเบฒเบกเป€เบ„เบฑเปˆเบ‡เบ•เบถเบ‡).

เบžเบทเป‰เบ™เบ–เบฒเบ™เบ‚เบญเบ‡เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก PostgreSQL. Alexey Lesovsky

เบ‚เปเป‰เปเบ™เบฐเบ™เปเบฒเป€เบฅเบฑเบเบ™เป‰เบญเบ. เบฅเบนเบเบ„เป‰เบฒเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ, เบฅเบนเบเบ„เป‰เบฒเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเบกเบตเบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เปเบ™เบงเปƒเบ”? เบกเบตเบšเบฒเบ‡เบ›เบฐเป€เบžเบ”เบ‚เบญเบ‡เบญเบธเบ›เบฐเบ•เบดเป€เบซเบ”เบ—เบตเปˆเบเปˆเบฝเบงเบ‚เป‰เบญเบ‡เบเบฑเบšเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™. เปเบฅเบฐเป€เบกเบทเปˆเบญเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เป„เบ”เป‰เบ–เบทเบเบŸเบทเป‰เบ™เบŸเบนเปเบฅเป‰เบง, เบซเบปเบงเปœเป‰เบฒเบžเบฐเปเบ™เบเบซเบผเบทเบซเบปเบงเบซเบ™เป‰เบฒเบเบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒเบเปเปˆเบกเบฒเปเบฅเบฐเป€เบงเบปเป‰เบฒเบงเปˆเบฒ: "เป€เบžเบทเปˆเบญเบ™, เบžเบงเบเป€เบฎเบปเบฒเบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบ•เบดเบ”เบ•เบฒเบกเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™, เป€เบžเบฒเบฐเบงเปˆเบฒเบกเบตเบšเบฒเบ‡เบชเบดเปˆเบ‡เบšเบฒเบ‡เบขเปˆเบฒเบ‡เบ—เบตเปˆเบšเปเปˆเบ”เบตเปเบฅเบฐเบžเบงเบเป€เบฎเบปเบฒเบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบ›เป‰เบญเบ‡เบเบฑเบ™เบšเปเปˆเปƒเบซเป‰เบกเบฑเบ™เป€เบเบตเบ”เบ‚เบถเป‰เบ™เปƒเบ™เบญเบฐเบ™เบฒเบ„เบปเบ”." เปเบฅเบฐเปƒเบ™เบ—เบตเปˆเบ™เบตเป‰เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบ—เบตเปˆเบซเบ™เป‰เบฒเบชเบปเบ™เปƒเบˆเบ‚เบญเบ‡เบเบฒเบ™เป€เบฅเบทเบญเบเบฅเบฐเบšเบปเบšเบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบซเบผเบทเบเบฒเบ™เบ›เบฑเบšเบ•เบปเบงเบฅเบฐเบšเบปเบšเบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบ—เบตเปˆเบกเบตเบขเบนเปˆเป€เบžเบทเปˆเบญเปƒเบซเป‰เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบเบงเบ”เบชเบญเบšเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบ‚เบญเบ‡เบ—เปˆเบฒเบ™ - PostgreSQL, MySQL เบซเบผเบทเบšเบฒเบ‡เบญเบฑเบ™เบญเบทเปˆเบ™เป†. เปเบฅเบฐเป€เบžเบทเปˆเบญเบ™เบฎเปˆเบงเบกเบ‡เบฒเบ™เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เปเบ™เบฐเบ™เปเบฒ: "เบ‚เป‰เบญเบเป„เบ”เป‰เบเบดเบ™เบงเปˆเบฒเบกเบตเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเปเบฅเบฐเปเบšเบšเบ™เบฑเป‰เบ™. เปƒเบซเป‰เปƒเบŠเป‰เบกเบฑเบ™." เป€เบžเบทเปˆเบญเบ™เบฎเปˆเบงเบกเบ‡เบฒเบ™เป€เบฅเบตเปˆเบกเป‚เบ•เป‰เบ–เบฝเบ‡เบเบฑเบ™. เปเบฅเบฐเปƒเบ™เบ—เบตเปˆเบชเบธเบ”เบกเบฑเบ™เบ›เบฒเบเบปเบ”เบงเปˆเบฒเบžเบงเบเป€เบฎเบปเบฒเป€เบฅเบทเบญเบเป€เบญเบปเบฒเบšเบฒเบ‡เบ›เบฐเป€เบžเบ”เบ‚เบญเบ‡เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™, เปเบ•เปˆเบเบฒเบ™เบเบงเบ”เบชเบญเบš PostgreSQL เป„เบ”เป‰เบ–เบทเบเบ™เปเบฒเบชเบฐเป€เบซเบ™เบตเบขเบนเปˆเปƒเบ™เบกเบฑเบ™เบšเปเปˆเบ”เบตเปเบฅเบฐเบžเบงเบเป€เบฎเบปเบฒเบชเบฐเป€เบซเบกเบตเบ•เป‰เบญเบ‡เป€เบžเบตเปˆเบกเบšเบฒเบ‡เบชเบดเปˆเบ‡เบšเบฒเบ‡เบขเปˆเบฒเบ‡. เป€เบญเบปเบฒเบšเบฒเบ‡ repositories เบˆเบฒเบ GitHub, clone เปƒเบซเป‰เป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒ, เบ›เบฑเบš scripts, เปเบฅเบฐ somehow เบ›เบฑเบšเปƒเบซเป‰เป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒ. เปเบฅเบฐเปƒเบ™เบ—เบตเปˆเบชเบธเบ”เบกเบฑเบ™เบชเบดเป‰เบ™เบชเบธเบ”เบฅเบปเบ‡เป€เบ–เบดเบ‡เบšเบฒเบ‡เบ›เบฐเป€เบžเบ”เบ‚เบญเบ‡เบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบ„เบนเปˆเบกเบท.

เบžเบทเป‰เบ™เบ–เบฒเบ™เบ‚เบญเบ‡เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก PostgreSQL. Alexey Lesovsky

เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เปƒเบ™เบเบฒเบ™เบชเบปเบ™เบ—เบฐเบ™เบฒเบ™เบตเป‰เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเบˆเบฐเบžเบฐเบเบฒเบเบฒเบกเปƒเบซเป‰เบ—เปˆเบฒเบ™เบกเบตเบ„เบงเบฒเบกเบฎเบนเป‰เบšเบฒเบ‡เบขเปˆเบฒเบ‡เบเปˆเบฝเบงเบเบฑเบšเบงเบดเบ—เบตเบเบฒเบ™เป€เบฅเบทเบญเบเบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบšเปเปˆเบžเบฝเบ‡เปเบ•เปˆเบชเปเบฒเบฅเบฑเบš PostgreSQL, เปเบ•เปˆเบเบฑเบ‡เบชเปเบฒเบฅเบฑเบšเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™. เปเบฅเบฐเปƒเบซเป‰เบ„เบงเบฒเบกเบฎเบนเป‰เบ—เบตเปˆเบˆเบฐเบŠเปˆเบงเบเปƒเบซเป‰เบ—เปˆเบฒเบ™เป€เบฎเบฑเบ”เบชเปเบฒเป€เบฅเบฑเบ”เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบ‚เบญเบ‡เบ—เปˆเบฒเบ™เป€เบžเบทเปˆเบญเปƒเบซเป‰เป„เบ”เป‰เบฎเบฑเบšเบœเบปเบ™เบ›เบฐเป‚เบซเบเบ”เบšเบฒเบ‡เบขเปˆเบฒเบ‡เบˆเบฒเบเบกเบฑเบ™, เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบ•เบดเบ”เบ•เบฒเบกเบเบงเบ”เบเบฒเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบ‚เบญเบ‡เบ—เปˆเบฒเบ™เบ”เป‰เบงเบเบœเบปเบ™เบ›เบฐเป‚เบซเบเบ”, เป€เบžเบทเปˆเบญเบ›เป‰เบญเบ‡เบเบฑเบ™เบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เบชเบธเบเป€เบชเบตเบ™เบ—เบตเปˆเบญเบฒเบ”เบˆเบฐเป€เบเบตเบ”เบ‚เบทเป‰เบ™เปƒเบ™เบ—เบฑเบ™เบ—เบต.

เปเบฅเบฐเปเบ™เบงเบ„เบงเบฒเบกเบ„เบดเบ”เบ—เบตเปˆเบˆเบฐเบขเบนเปˆเปƒเบ™เบšเบปเบ”เบฅเบฒเบเบ‡เบฒเบ™เบ™เบตเป‰เบชเบฒเบกเบฒเบ”เบ–เบทเบเบ”เบฑเบ”เปเบ›เบ‡เป‚เบ”เบเบเบปเบ‡เบเบฑเบšเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เปƒเบ”เบเปเปˆเบ•เบฒเบก, เบšเปเปˆเบงเปˆเบฒเบˆเบฐเป€เบ›เบฑเบ™ DBMS เบซเบผเบท noSQL. เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบšเปเปˆเบžเบฝเบ‡เปเบ•เปˆ PostgreSQL เป€เบ—เบปเปˆเบฒเบ™เบฑเป‰เบ™, เปเบ•เปˆเบˆเบฐเบกเบตเบชเบนเบ”เบชเบนเบ”เบซเบผเบฒเบเบขเปˆเบฒเบ‡เบเปˆเบฝเบงเบเบฑเบšเบงเบดเบ—เบตเป€เบฎเบฑเบ”เบชเบดเปˆเบ‡เบ™เบตเป‰เปƒเบ™ PostgreSQL. เบˆเบฐเบกเบตเบ•เบปเบงเบขเปˆเบฒเบ‡เบ‚เบญเบ‡เบเบฒเบ™เบชเบญเบšเบ–เบฒเบก, เบ•เบปเบงเบขเปˆเบฒเบ‡เบ‚เบญเบ‡เบซเบ™เปˆเบงเบเบ‡เบฒเบ™เบ—เบตเปˆ PostgreSQL เบกเบตเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก. เปเบฅเบฐเบ–เป‰เบฒ DBMS เบ‚เบญเบ‡เบ—เปˆเบฒเบ™เบกเบตเบชเบดเปˆเบ‡เบ”เบฝเบงเบเบฑเบ™เบ—เบตเปˆเบŠเปˆเบงเบเปƒเบซเป‰เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เปƒเบชเปˆเบžเบงเบเบกเบฑเบ™เปƒเบ™เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก, เบ—เปˆเบฒเบ™เบเบฑเบ‡เบชเบฒเบกเบฒเบ”เบ›เบฑเบšเบžเบงเบเบกเบฑเบ™เป„เบ”เป‰, เป€เบžเบตเปˆเบกเบžเบงเบเบกเบฑเบ™เปเบฅเบฐเบกเบฑเบ™เบˆเบฐเบ”เบต.

เบžเบทเป‰เบ™เบ–เบฒเบ™เบ‚เบญเบ‡เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก PostgreSQL. Alexey Lesovskyเบ‚เป‰เบญเบเบˆเบฐเบšเปเปˆเบขเบนเปˆเปƒเบ™เบšเบปเบ”เบฅเบฒเบเบ‡เบฒเบ™
เบชเบปเบ™เบ—เบฐเบ™เบฒเบเปˆเบฝเบงเบเบฑเบšเบงเบดเบ—เบตเบเบฒเบ™เบˆเบฑเบ”เบชเบปเปˆเบ‡เปเบฅเบฐเป€เบเบฑเบšเบฎเบฑเบเบชเบฒ metrics. เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเบˆเบฐเบšเปเปˆเป€เบงเบปเป‰เบฒเบซเบเบฑเบ‡เบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เบ•เบญเบšเบเบฒเบ™เบ›เบธเบ‡เปเบ•เปˆเบ‡เบ‚เปเป‰เบกเบนเบ™เปเบฅเบฐเบ™เปเบฒเบชเบฐเป€เบซเบ™เบตเปƒเบซเป‰เบœเบนเป‰เปƒเบŠเป‰. เปเบฅเบฐเบ‚เป‰เบญเบเบˆเบฐเบšเปเปˆเป€เบงเบปเป‰เบฒเบซเบเบฑเบ‡เบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เป€เบ•เบทเบญเบ™.
เปเบ•เปˆเปƒเบ™เบ‚เบฐเบ™เบฐเบ—เบตเปˆเป€เบฅเบทเปˆเบญเบ‡เบเป‰เบฒเบงเบซเบ™เป‰เบฒ, เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเบˆเบฐเบชเบฐเปเบ”เบ‡เปƒเบซเป‰เป€เบซเบฑเบ™เบžเบฒเบšเบซเบ™เป‰เบฒเบˆเปเบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™เบ‚เบญเบ‡เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบ—เบตเปˆเบกเบตเบขเบนเปˆเปเบฅเป‰เบงเปเบฅเบฐ somehow เบ•เปเบฒเบ™เบดเบ•เบดเบ•เบฝเบ™เบžเบงเบเป€เบ‚เบปเบฒ. เปเบ•เปˆเบขเปˆเบฒเบ‡เปƒเบ”เบเปเปˆเบ•เบฒเบก, เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเบˆเบฐเบžเบฐเบเบฒเบเบฒเบกเบšเปเปˆเบ•เบฑเป‰เบ‡เบŠเบทเปˆเบเบตเปˆเบซเปเป‰เป€เบžเบทเปˆเบญเบšเปเปˆเปƒเบซเป‰เบชเป‰เบฒเบ‡เบเบฒเบ™เป‚เบ„เบชเบฐเบ™เบฒเบซเบผเบทเบเบฒเบ™เป‚เบ„เบชเบฐเบ™เบฒเบ•เป‰เบฒเบ™เบเบฒเบ™เป‚เบ„เบชเบฐเบ™เบฒเบชเปเบฒเบฅเบฑเบšเบœเบฐเบฅเบดเบ”เบ•เบฐเบžเบฑเบ™เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰. เป€เบžเบฒเบฐเบชเบฐเบ™เบฑเป‰เบ™, เบ„เบงเบฒเบกเบšเบฑเบ‡เป€เบญเบตเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”เปเบกเปˆเบ™เปเบšเบšเบชเบธเปˆเบกเปเบฅเบฐเบ–เบทเบเบ›เบฐเป„เบงเป‰เปƒเบ™เบˆเบดเบ™เบ•เบฐเบ™เบฒเบเบฒเบ™เบ‚เบญเบ‡เป€เบˆเบปเป‰เบฒ.
เบžเบทเป‰เบ™เบ–เบฒเบ™เบ‚เบญเบ‡เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก PostgreSQL. Alexey Lesovsky
เบ—เปเบฒเบญเบดเบ”, เปƒเบซเป‰เป€เบฎเบปเบฒเบ„เบดเบ”เบญเบญเบเบงเปˆเบฒเบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเปเบกเปˆเบ™เบซเบเบฑเบ‡. เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเป€เบ›เบฑเบ™เบชเบดเปˆเบ‡เบ—เบตเปˆเบชเปเบฒเบ„เบฑเบ™เบซเบผเบฒเบเบ—เบตเปˆเบˆเบฐเบกเบต. เบ—เบธเบเบ„เบปเบ™เป€เบ‚เบปเป‰เบฒเปƒเบˆเป€เบฅเบทเปˆเบญเบ‡เบ™เบตเป‰. เปเบ•เปˆเปƒเบ™เป€เบงเบฅเบฒเบ”เบฝเบงเบเบฑเบ™, เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบšเปเปˆเบเปˆเบฝเบงเบ‚เป‰เบญเบ‡เบเบฑเบšเบœเบฐเบฅเบดเบ”เบ•เบฐเบžเบฑเบ™เบ‚เบญเบ‡เบ—เบธเบฅเบฐเบเบดเบ”เปเบฅเบฐเบšเปเปˆเบกเบตเบœเบปเบ™เบเบฐเบ—เบปเบšเป‚เบ”เบเบเบปเบ‡เบ•เปเปˆเบœเบปเบ™เบเปเบฒเป„เบฅเบ‚เบญเบ‡เบšเปเบฅเบดเบชเบฑเบ”, เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เป€เบงเบฅเบฒเปเบกเปˆเบ™เบ–เบทเบเบˆเบฑเบ”เบชเบฑเบ™เบชเบฐเป€เบซเบกเบตเป€เบžเบทเปˆเบญเบ•เบดเบ”เบ•เบฒเบกเบเบงเบ”เบเบฒเบšเบปเบ™เบžเบทเป‰เบ™เบ–เบฒเบ™เบเบฒเบ™เบ•เบปเบเบ„เป‰เบฒเบ‡. เบ–เป‰เบฒเบžเบงเบเป€เบฎเบปเบฒเบกเบตเป€เบงเบฅเบฒ, เบžเบงเบเป€เบฎเบปเบฒเบ•เบดเบ”เบ•เบฒเบก; เบ–เป‰เบฒเบžเบงเบเป€เบฎเบปเบฒเบšเปเปˆเบกเบตเป€เบงเบฅเบฒ, เบ•เบปเบเบฅเบปเบ‡, เบžเบงเบเป€เบฎเบปเบฒเบˆเบฐเป€เบญเบปเบฒเบกเบฑเบ™เป„เบงเป‰เปƒเบ™เบšเบฑเบ™เบ—เบถเบเปเบฅเบฐเบกเบทเป‰เบซเบ™เบถเปˆเบ‡เบžเบงเบเป€เบฎเบปเบฒเบˆเบฐเบเบฑเบšเบ„เบทเบ™เบชเบนเปˆเบงเบฝเบเบ‡เบฒเบ™เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰.

เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบˆเบฒเบเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ, เป€เบกเบทเปˆเบญเบžเบงเบเป€เบฎเบปเบฒเป„เบ›เบซเบฒเบฅเบนเบเบ„เป‰เบฒ, เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบกเบฑเบเบˆเบฐเบšเปเปˆเบ„เบปเบšเบ–เป‰เบงเบ™เปเบฅเบฐเบšเปเปˆเบกเบตเบชเบดเปˆเบ‡เบ—เบตเปˆเบซเบ™เป‰เบฒเบชเบปเบ™เปƒเบˆเบ—เบตเปˆเบˆเบฐเบŠเปˆเบงเบเปƒเบซเป‰เบžเบงเบเป€เบฎเบปเบฒเป€เบฎเบฑเบ”เบงเบฝเบเบ—เบตเปˆเบ”เบตเบเบงเปˆเบฒเบเบฑเบšเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™. เปเบฅเบฐเบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบชเบฐเป€เบซเบกเบตเบ•เป‰เบญเบ‡เป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบชเปเบฒเป€เบฅเบฑเบ”.

เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เปเบกเปˆเบ™เบชเบดเปˆเบ‡เบชเบฐเบฅเบฑเบšเบชเบฑเบšเบŠเป‰เบญเบ™เบ—เบตเปˆเบเบฑเบ‡เบ•เป‰เบญเบ‡เป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก, เป€เบžเบฒเบฐเบงเปˆเบฒเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เป€เบ›เบฑเบ™เบšเปˆเบญเบ™เป€เบเบฑเบšเบ‚เปเป‰เบกเบนเบ™. เปเบฅเบฐเบ‚เปเป‰เบกเบนเบ™เปเบกเปˆเบ™เบกเบตเบ„เบงเบฒเบกเบชเปเบฒเบ„เบฑเบ™เบซเบผเบฒเบเบชเปเบฒเบฅเบฑเบšเบšเปเบฅเบดเบชเบฑเบ”; เบกเบฑเบ™เบšเปเปˆเบชเบฒเบกเบฒเบ”เบชเบนเบ™เป€เบชเบเป„เบ›เปƒเบ™เบ—เบฒเบ‡เปƒเบ”เบเปเปˆเบ•เบฒเบก. เปเบ•เปˆเปƒเบ™เป€เบงเบฅเบฒเบ”เบฝเบงเบเบฑเบ™, เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เปเบกเปˆเบ™เบŠเบดเป‰เบ™เบชเปˆเบงเบ™เบ‚เบญเบ‡เบŠเบญเบšเปเบงเบ—เบตเปˆเบชเบฑเบšเบชเบปเบ™เบซเบผเบฒเบ. เบžเบงเบเป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒเบ›เบฐเบเบญเบšเบ”เป‰เบงเบเบˆเปเบฒเบ™เบงเบ™เบ‚เบฐเบซเบ™เบฒเบ”เปƒเบซเบเปˆเบ‚เบญเบ‡เบญเบปเบ‡เบ›เบฐเบเบญเบš. เปเบฅเบฐเบซเบผเบฒเบเบญเบปเบ‡เบ›เบฐเบเบญเบšเป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เบ•เป‰เบญเบ‡เป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก.

เบžเบทเป‰เบ™เบ–เบฒเบ™เบ‚เบญเบ‡เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก PostgreSQL. Alexey Lesovskyเบ–เป‰เบฒเบžเบงเบเป€เบฎเบปเบฒเบเปเบฒเบฅเบฑเบ‡เบฅเบปเบกเบเบฑเบ™เป‚เบ”เบเบชเบฐเป€เบžเบฒเบฐเบเปˆเบฝเบงเบเบฑเบš PostgreSQL, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™, เบกเบฑเบ™เบชเบฒเบกเบฒเบ”เบ–เบทเบเบชเบฐเปเบ”เบ‡เบขเบนเปˆเปƒเบ™เบฎเบนเบšเปเบšเบšเบ‚เบญเบ‡เป‚เบ„เบ‡เบเบฒเบ™เบ—เบตเปˆเบ›เบฐเบเบญเบšเบ”เป‰เบงเบเบญเบปเบ‡เบ›เบฐเบเบญเบšเบˆเปเบฒเบ™เบงเบ™เบซเบฅเบฒเบ. เบญเบปเบ‡เบ›เบฐเบเบญเบšเป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เบžเบปเบงเบžเบฑเบ™เบเบฑเบšเบเบฑเบ™เปเบฅเบฐเบเบฑเบ™. เปเบฅเบฐเปƒเบ™เป€เบงเบฅเบฒเบ”เบฝเบงเบเบฑเบ™, PostgreSQL เบกเบตเบฅเบฐเบšเบปเบšเบเปˆเบญเบเบ—เบตเปˆเป€เบญเบตเป‰เบ™เบงเปˆเบฒ Stats Collector, เป€เบŠเบดเปˆเบ‡เบŠเปˆเบงเบเปƒเบซเป‰เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เป€เบเบฑเบšเบเปเบฒเบชเบฐเบ–เบดเบ•เบดเบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เบ”เปเบฒเป€เบ™เบตเบ™เบ‡เบฒเบ™เบ‚เบญเบ‡เบฅเบฐเบšเบปเบšเบเปˆเบญเบเป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เปเบฅเบฐเบชเบฐเบซเบ™เบญเบ‡เบ›เบฐเป€เบžเบ”เบ‚เบญเบ‡เบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบšเบเบฑเบšเบœเบนเป‰เบšเปเบฅเบดเบซเบฒเบ™เบซเบผเบทเบœเบนเป‰เปƒเบŠเป‰เป€เบžเบทเปˆเบญเปƒเบซเป‰เบฅเบฒเบงเบชเบฒเบกเบฒเบ”เป€เบšเบดเปˆเบ‡เบชเบฐเบ–เบดเบ•เบดเป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰.

เบชเบฐเบ–เบดเบ•เบดเป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เบ–เบทเบเบ™เปเบฒเบชเบฐเป€เบซเบ™เบตเปƒเบ™เบฎเบนเบšเปเบšเบšเบ‚เบญเบ‡เบซเบ™เป‰เบฒเบ—เบตเปˆเปเบฅเบฐเบ—เบฑเบ”เบชเบฐเบ™เบฐเบ—เบตเปˆเปเบ™เปˆเบ™เบญเบ™. เบžเบงเบเป€เบ‚เบปเบฒเบเบฑเบ‡เบชเบฒเบกเบฒเบ”เป€เบญเบตเป‰เบ™เบงเปˆเบฒเบ•เบฒเบ•เบฐเบฅเบฒเบ‡. เบ™เบฑเป‰เบ™เปเบกเปˆเบ™, เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบฅเบนเบเบ„เป‰เบฒ psql เบ›เบปเบเบเบฐเบ•เบด, เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบเบฑเบšเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™, เป€เบฅเบทเบญเบเป€เบญเบปเบฒเบซเบ™เป‰เบฒเบ—เบตเปˆเปเบฅเบฐเบกเบธเบกเป€เบšเบดเปˆเบ‡เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰, เปเบฅเบฐเป„เบ”เป‰เบฎเบฑเบšเบ•เบปเบงเป€เบฅเบเบชเบฐเป€เบžเบฒเบฐเบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ‡เบฒเบ™เบ‚เบญเบ‡เบฅเบฐเบšเบปเบšเบเปˆเบญเบ PostgreSQL.

เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เป€เบžเบตเปˆเบกเบ•เบปเบงเป€เบฅเบเป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เป€เบ‚เบปเป‰เบฒเปƒเบ™เบฅเบฐเบšเบปเบšเบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบ—เบตเปˆเบ—เปˆเบฒเบ™เบกเบฑเบ, เปเบ•เป‰เบกเบเบฒเบŸ, เป€เบžเบตเปˆเบกเบซเบ™เป‰เบฒเบ—เบตเปˆเปเบฅเบฐเป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบงเบดเป€เบ„เบฒเบฐเปƒเบ™เป„เบฅเบเบฐเบเบฒเบง.

เปเบ•เปˆเปƒเบ™เบšเบปเบ”เบฅเบฒเบเบ‡เบฒเบ™เบ™เบตเป‰เบ‚เป‰เบญเบเบˆเบฐเบšเปเปˆเบเบงเบกเป€เบญเบปเบฒเบซเบ™เป‰เบฒเบ—เบตเปˆเบ—เบฑเบ‡เบซเบกเบปเบ”เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เบขเปˆเบฒเบ‡เบชเบปเบกเบšเบนเบ™, เป€เบžเบฒเบฐเบงเปˆเบฒเบกเบฑเบ™เบชเบฒเบกเบฒเบ”เปƒเบŠเป‰เป€เบงเบฅเบฒเบซเบกเบปเบ”เบกเบทเป‰. เบ‚เป‰เบฒโ€‹เบžเบฐโ€‹เป€เบˆเบปเป‰เบฒโ€‹เบˆเบฐโ€‹เบฎเบนเป‰โ€‹เบˆเบฑเบโ€‹เบชเบญเบ‡, เบชเบฒเบกโ€‹เบซเบผเบทโ€‹เบชเบตเปˆโ€‹เบชเบดเปˆเบ‡โ€‹เบ—เบตเปˆโ€‹เบฎเบนเป‰โ€‹เบซเบ™เบฑเบ‡โ€‹เบชเบทโ€‹เปเบฅเบฐโ€‹เบšเบญเบโ€‹เบ—เปˆเบฒเบ™โ€‹เบงเบดโ€‹เบ—เบตโ€‹เบเบฒเบ™โ€‹เบ—เบตเปˆโ€‹เป€เบ‚เบปเบฒโ€‹เป€เบˆเบปเป‰เบฒโ€‹เบŠเปˆเบงเบโ€‹เป€เบฎเบฑเบ”โ€‹เปƒเบซเป‰โ€‹เบเบฒเบ™โ€‹เบ•เบดเบ”โ€‹เบ•เบฒเบกโ€‹เบเบงเบ”โ€‹เบเบฒโ€‹เบ”เบตเบโ€‹เบงเปˆเบฒ.
เบžเบทเป‰เบ™เบ–เบฒเบ™เบ‚เบญเบ‡เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก PostgreSQL. Alexey Lesovsky
เปเบฅเบฐเบ–เป‰เบฒเบžเบงเบเป€เบฎเบปเบฒเบชเบปเบ™เบ—เบฐเบ™เบฒเบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เบเบงเบ”เบชเบญเบšเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™, เปเบฅเป‰เบงเบชเบดเปˆเบ‡เบ—เบตเปˆเบ•เป‰เบญเบ‡เบ•เบดเบ”เบ•เบฒเบก? เบเปˆเบญเบ™เบญเบทเปˆเบ™ เปเบปเบ”, เบžเบงเบเป€เบฎเบปเบฒเบ•เป‰เบญเบ‡เบ•เบดเบ”เบ•เบฒเบกเบเบงเบ”เบเบฒเบ„เบงเบฒเบกเบžเป‰เบญเบก, เป€เบžเบฒเบฐเบงเปˆเบฒเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เปเบกเปˆเบ™เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เบ—เบตเปˆเบชเบฐเบซเบ™เบญเบ‡เบเบฒเบ™เป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡เบ‚เปเป‰เบกเบนเบ™เปƒเบซเป‰เปเบเปˆเบฅเบนเบเบ„เป‰เบฒเปเบฅเบฐเบžเบงเบเป€เบฎเบปเบฒเบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบ•เบดเบ”เบ•เบฒเบกเบ„เบงเบฒเบกเบžเป‰เบญเบก, เปเบฅเบฐเบเบฑเบ‡เบชเบฐเบซเบ™เบญเบ‡เบšเบฒเบ‡เบฅเบฑเบเบชเบฐเบ™เบฐเบ—เบตเปˆเบกเบตเบ„เบธเบ™เบ™เบฐเบžเบฒเบšเปเบฅเบฐเบ›เบฐเบฅเบดเบกเบฒเบ™เบ‚เบญเบ‡เบกเบฑเบ™.

เบžเบทเป‰เบ™เบ–เบฒเบ™เบ‚เบญเบ‡เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก PostgreSQL. Alexey Lesovsky

เบžเบงเบเป€เบฎเบปเบฒเบเบฑเบ‡เบ•เป‰เบญเบ‡เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบเบงเบ”เบเบฒเบฅเบนเบเบ„เป‰เบฒเบ—เบตเปˆเป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบเบฑเบšเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ, เป€เบžเบฒเบฐเบงเปˆเบฒเบžเบงเบเป€เบ‚เบปเบฒเบชเบฒเบกเบฒเบ”เป€เบ›เบฑเบ™เบ—เบฑเบ‡เบฅเบนเบเบ„เป‰เบฒเบ›เบปเบเบเบฐเบ•เบดเปเบฅเบฐเบฅเบนเบเบ„เป‰เบฒเบ—เบตเปˆเป€เบ›เบฑเบ™เบญเบฑเบ™เบ•เบฐเบฅเบฒเบเบ—เบตเปˆเบชเบฒเบกเบฒเบ”เป€เบ›เบฑเบ™เบญเบฑเบ™เบ•เบฐเบฅเบฒเบเบ•เปเปˆเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™. เบžเบงเบเป€เบ‚เบปเบฒเบเบฑเบ‡เบ•เป‰เบญเบ‡เป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเปเบฅเบฐเบเบดเบ”เบˆเบฐเบเปเบฒเบ‚เบญเบ‡เป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒ.

เบžเบทเป‰เบ™เบ–เบฒเบ™เบ‚เบญเบ‡เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก PostgreSQL. Alexey Lesovsky

เป€เบกเบทเปˆเบญเบฅเบนเบเบ„เป‰เบฒเป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบเบฑเบšเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™, เบกเบฑเบ™เป€เบซเบฑเบ™เป„เบ”เป‰เบŠเบฑเบ”เป€เบˆเบ™เบงเปˆเบฒเบžเบงเบเป€เบ‚เบปเบฒเป€เบฅเบตเปˆเบกเป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบšเบ‚เปเป‰เบกเบนเบ™เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ, เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบžเบงเบเป€เบฎเบปเบฒเบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบ•เบดเบ”เบ•เบฒเบกเบงเบดเบ—เบตเบเบฒเบ™เบฅเบนเบเบ„เป‰เบฒเป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบšเบ‚เปเป‰เบกเบนเบ™: เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เปƒเบ”, เปเบฅเบฐเปƒเบ™เบ‚เบญเบšเป€เบ‚เบ”เบซเบ™เป‰เบญเบ, เบกเบตเบ”เบฑเบ”เบŠเบฐเบ™เบตเปƒเบ”. เบ™เบฑเป‰เบ™เปเบกเปˆเบ™, เบžเบงเบเป€เบฎเบปเบฒเบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบ›เบฐเป€เบกเบตเบ™เบงเบฝเบเบ‡เบฒเบ™เบ—เบตเปˆเบชเป‰เบฒเบ‡เบ‚เบทเป‰เบ™เป‚เบ”เบเบฅเบนเบเบ„เป‰เบฒเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ.

เบžเบทเป‰เบ™เบ–เบฒเบ™เบ‚เบญเบ‡เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก PostgreSQL. Alexey Lesovsky

เปเบ•เปˆ, เปเบ™เปˆเบ™เบญเบ™, เบงเบฝเบเบ‡เบฒเบ™เบเบฑเบ‡เบ›เบฐเบเบญเบšเบ”เป‰เบงเบเบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เป. เปเบญเบฑเบšเบžเบฅเบดเป€เบ„เบŠเบฑเบ™เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบเบฑเบšเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™, เป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡เบ‚เปเป‰เบกเบนเบ™เป‚เบ”เบเปƒเบŠเป‰เปเบšเบšเบชเบญเบšเบ–เบฒเบก, เบชเบฐเบ™เบฑเป‰เบ™เบกเบฑเบ™เป€เบ›เบฑเบ™เบชเบดเปˆเบ‡เบชเปเบฒเบ„เบฑเบ™เบ—เบตเปˆเบˆเบฐเบ›เบฐเป€เบกเบตเบ™เบชเบดเปˆเบ‡เบ—เบตเปˆเบชเบญเบšเบ–เบฒเบกเบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบกเบตเบขเบนเปˆเปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™, เบ•เบดเบ”เบ•เบฒเบกเบ„เบงเบฒเบกเบžเบฝเบ‡เบžเปเบ‚เบญเบ‡เบžเบงเบเป€เบ‚เบปเบฒ, เบงเปˆเบฒเบžเบงเบเป€เบ‚เบปเบฒเบšเปเปˆเป„เบ”เป‰เบ‚เบฝเบ™เปเบšเบšเป‚เบเบ‡, เบšเบฒเบ‡เบ—เบฒเบ‡เป€เบฅเบทเบญเบเบ•เป‰เบญเบ‡เป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบ‚เบฝเบ™เบ„เบทเบ™เปƒเบซเบกเปˆเปเบฅเบฐเป€เบฎเบฑเบ”เปƒเบซเป‰เบžเบงเบเป€เบ‚เบปเบฒเป€เบฎเบฑเบ”เบงเบฝเบเป„เบงเบ‚เบถเป‰เบ™. เปเบฅเบฐเบกเบตเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ—เบตเปˆเบ”เบตเบเบงเปˆเบฒ.

เบžเบทเป‰เบ™เบ–เบฒเบ™เบ‚เบญเบ‡เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก PostgreSQL. Alexey Lesovsky

เปเบฅเบฐเบ™เบฑเบšเบ•เบฑเป‰เบ‡เปเบ•เปˆเบžเบงเบเป€เบฎเบปเบฒเบเปเบฒเบฅเบฑเบ‡เป€เบงเบปเป‰เบฒเบเปˆเบฝเบงเบเบฑเบšเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™, เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เปเบกเปˆเบ™เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบžเบทเป‰เบ™เบ–เบฒเบ™เบชเบฐเป€เบซเบกเบต. เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบžเบทเป‰เบ™เบ–เบฒเบ™เบŠเปˆเบงเบเบฎเบฑเบเบชเบฒเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เปƒเบ™เบฅเบฐเบ”เบฑเบšเบ—เบตเปˆเบ”เบต, เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบžเบงเบเป€เบ‚เบปเบฒเบ•เป‰เบญเบ‡เบเบฒเบ™เบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เบˆเปเบฒเบ™เบงเบ™เบซเบ™เบถเปˆเบ‡เบชเปเบฒเบฅเบฑเบšเบ•เบปเบ™เป€เบญเบ‡เป€เบžเบทเปˆเบญเบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™. เปเบฅเบฐเปƒเบ™เป€เบงเบฅเบฒเบ”เบฝเบงเบเบฑเบ™, เบžเบงเบเป€เบ‚เบปเบฒเบชเบฒเบกเบฒเบ”เบ—เบฑเบšเบŠเป‰เบญเบ™เบเบฑเบ™เบเบฑเบšเบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเบ‚เบญเบ‡เบฅเบนเบเบ„เป‰เบฒ, เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบžเบทเป‰เบ™เบ–เบฒเบ™เบ—เบตเปˆเบกเบตเบ„เบงเบฒเบกเป‚เบฅเบšเบกเบฒเบเบชเบฒเบกเบฒเบ”เบชเบปเปˆเบ‡เบœเบปเบ™เบเบฐเบ—เบปเบšเบ•เปเปˆเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเบ‚เบญเบ‡เบฅเบนเบเบ„เป‰เบฒเป‚เบ”เบเบเบปเบ‡. เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบžเบงเบเป€เบ‚เบปเบฒเบเบฑเบ‡เบ•เป‰เบญเบ‡เป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเปเบฅเบฐเบ•เบดเบ”เบ•เบฒเบกเป€เบžเบทเปˆเบญเบšเปเปˆเปƒเบซเป‰เบกเบตเบเบฒเบ™เบšเบดเบ”เป€เบšเบทเบญเบ™เบ‚เบญเบ‡เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบžเบทเป‰เบ™เบ–เบฒเบ™.

เบžเบทเป‰เบ™เบ–เบฒเบ™เบ‚เบญเบ‡เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก PostgreSQL. Alexey Lesovsky

เปเบฅเบฐเบ—เบฑเบ‡เบซเบกเบปเบ”เบ™เบตเป‰เปƒเบ™เปเบ‡เปˆเบ‚เบญเบ‡เบเบฒเบ™เบเบงเบ”เบชเบญเบšเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบเบฑเบ‡เบ„เบปเบ‡เบขเบนเปˆเปƒเบ™เบฅเบฐเบšเบปเบš metric. เปเบ•เปˆเบเบฒเบ™เบžเบดเบˆเบฒเบฅเบฐเบ™เบฒเบงเปˆเบฒเป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบžเบทเป‰เบ™เบ–เบฒเบ™เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเบชเปˆเบงเบ™เปƒเบซเบเปˆเบˆเบฐเบเป‰เบฒเบเป„เบ›เบขเบนเปˆเปƒเบ™เป€เบกเบ„, เบ•เบปเบงเบงเบฑเบ”เปเบ—เบเบฅเบฐเบšเบปเบšเบ‚เบญเบ‡เป€เบˆเบปเป‰เบฒเบžเบฒเบšเปเบ•เปˆเบฅเบฐเบ„เบปเบ™เบˆเบฐเบซเบฒเบเป„เบ›เปƒเบ™เบžเบทเป‰เบ™เบซเบผเบฑเบ‡เบชเบฐเป€เปเบต. เปเบ•เปˆเปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบžเบงเบเป€เบ‚เบปเบฒเบเบฑเบ‡เบกเบตเบ„เบงเบฒเบกเบเปˆเบฝเบงเบ‚เป‰เบญเบ‡เปเบฅเบฐ, เปเบ™เปˆเบ™เบญเบ™, เบกเบฑเบ™เบเบฑเบ‡เบกเบตเบ„เบงเบฒเบกเบˆเปเบฒเป€เบ›เบฑเบ™เบ—เบตเปˆเบˆเบฐเบ•เบดเบ”เบ•เบฒเบกเบเบฒเบ™เบงเบฑเบ”เปเบ—เบเบฅเบฐเบšเบปเบš.

เบžเบทเป‰เบ™เบ–เบฒเบ™เบ‚เบญเบ‡เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก PostgreSQL. Alexey Lesovsky

เบ—เบธเบเบชเบดเปˆเบ‡เบ—เบธเบเบขเปˆเบฒเบ‡เปเบกเปˆเบ™เบ”เบตเบซเบผเบฒเบเบซเบผเบทเบซเบ™เป‰เบญเบเบเบฑเบš metrics เบฅเบฐเบšเบปเบš, เบ—เบธเบเบฅเบฐเบšเบปเบšเบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบ—เบตเปˆเบ—เบฑเบ™เบชเบฐเป„เบซเบกเบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™ metrics เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เปเบฅเป‰เบง, เปเบ•เปˆเป‚เบ”เบเบ—เบปเปˆเบงเป„เบ›, เบšเบฒเบ‡เบญเบปเบ‡เบ›เบฐเบเบญเบšเบเบฑเบ‡เบšเปเปˆเบžเบฝเบ‡เบžเปเปเบฅเบฐเบšเบฒเบ‡เบชเบดเปˆเบ‡เบ—เบตเปˆเบ•เป‰เบญเบ‡เบเบฒเบ™เป€เบžเบตเปˆเบก. เบ‚เป‰เบฒโ€‹เบžเบฐโ€‹เป€เบˆเบปเป‰เบฒโ€‹เบเบฑเบ‡โ€‹เบˆเบฐโ€‹เบชเปเบฒโ€‹เบœเบฑเบ”โ€‹เบเบฑเบšโ€‹เป€เบ‚เบปเบฒโ€‹เป€เบˆเบปเป‰เบฒโ€‹, เบˆเบฐโ€‹เบกเบต slideshow เบซเบผเบฒเบโ€‹เบเปˆเบฝเบงโ€‹เบเบฑเบšโ€‹เบžเบงเบโ€‹เป€เบ‚เบปเบฒโ€‹.

เบžเบทเป‰เบ™เบ–เบฒเบ™เบ‚เบญเบ‡เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก PostgreSQL. Alexey Lesovsky
เบˆเบธเบ”เบ—เปเบฒเบญเบดเบ”เบ‚เบญเบ‡เปเบœเบ™เบเบฒเบ™เปเบกเปˆเบ™เบเบฒเบ™เป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡. เบเบฒเบ™เป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡เปเบกเปˆเบ™เบซเบเบฑเบ‡? เบ„เบงเบฒเบกเบžเป‰เบญเบกเปƒเบ™เบ„เบงเบฒเบกเป€เบ‚เบปเป‰เบฒเปƒเบˆเบ‚เบญเบ‡เบ‚เป‰เบญเบเปเบกเปˆเบ™เบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เบ‚เบญเบ‡เบžเบทเป‰เบ™เบ–เบฒเบ™เปƒเบ™เบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™, i.e. เบžเบทเป‰เบ™เบ–เบฒเบ™เป„เบ”เป‰เบ–เบทเบเบเบปเบเบ‚เบถเป‰เบ™เบกเบฒ, เบกเบฑเบ™เป€เบ›เบฑเบ™เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™, เบเบญเบกเบฎเบฑเบšเบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบˆเบฒเบเบฅเบนเบเบ„เป‰เบฒ. เปเบฅเบฐเบเบฒเบ™เป€เบ‚เบปเป‰เบฒเบซเบฒเบ™เบตเป‰เบชเบฒเบกเบฒเบ”เบ–เบทเบเบ›เบฐเป€เบกเบตเบ™เป‚เบ”เบเบ„เบธเบ™เบฅเบฑเบเบชเบฐเบ™เบฐเบšเบฒเบ‡เบขเปˆเบฒเบ‡. เบกเบฑเบ™เบชเบฐเบ”เบงเบเบซเบผเบฒเบเบ—เบตเปˆเบˆเบฐเบชเบฐเปเบ”เบ‡เบ„เบธเบ™เบฅเบฑเบเบชเบฐเบ™เบฐเป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เบขเบนเปˆเปƒเบ™ dashboards.

เบžเบทเป‰เบ™เบ–เบฒเบ™เบ‚เบญเบ‡เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก PostgreSQL. Alexey Lesovsky
เบ—เบธเบเบ„เบปเบ™เบฎเบนเป‰เบงเปˆเบฒ dashboards เปเบกเปˆเบ™เบซเบเบฑเบ‡. เบ™เบตเป‰เปเบกเปˆเบ™เป€เบงเบฅเบฒเบ—เบตเปˆเบ—เปˆเบฒเบ™เป„เบ”เป‰เป€เบšเบดเปˆเบ‡เบซเบ™เบถเปˆเบ‡เบซเบ™เป‰เบฒเบˆเปเบ—เบตเปˆเบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเบˆเปเบฒเป€เบ›เบฑเบ™เป„เบ”เป‰เบ–เบทเบเบชเบฐเบซเบผเบธเบš. เปเบฅเบฐเบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบเปเบฒเบ™เบปเบ”เบ—เบฑเบ™เบ—เบตเบงเปˆเบฒเบกเบตเบšเบฑเบ™เบซเบฒเบขเบนเปˆเปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบซเบผเบทเบšเปเปˆ.
เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบ„เบงเบฒเบกเบžเป‰เบญเบกเบ‚เบญเบ‡เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เปเบฅเบฐเบ„เบธเบ™เบฅเบฑเบเบชเบฐเบ™เบฐเบ—เบตเปˆเบชเปเบฒเบ„เบฑเบ™เบญเบทเปˆเบ™เป†เบ„เบงเบ™เบˆเบฐเบ–เบทเบเบชเบฐเปเบ”เบ‡เบขเบนเปˆเปƒเบ™ dashboards เบชเบฐเป€เบซเบกเบตเป€เบžเบทเปˆเบญเปƒเบซเป‰เบ‚เปเป‰เบกเบนเบ™เบ™เบตเป‰เบขเบนเปˆเปƒเบ™เบกเบทเปเบฅเบฐเบชเบฐเป€เบซเบกเบตเบกเบตเปƒเบซเป‰เบ—เปˆเบฒเบ™. เบšเบฒเบ‡เบฅเบฒเบเบฅเบฐเบญเบฝเบ”เป€เบžเบตเปˆเบกเป€เบ•เบตเบกเบ—เบตเปˆเบŠเปˆเบงเบเปƒเบ™เบเบฒเบ™เบชเบทเบšเบชเบงเบ™เป€เบซเบ”เบเบฒเบ™, เป€เบกเบทเปˆเบญเบชเบทเบšเบชเบงเบ™เบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เบชเบธเบเป€เบชเบตเบ™เบšเบฒเบ‡เบขเปˆเบฒเบ‡, เบžเบงเบเบกเบฑเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบ–เบทเบเบˆเบฑเบ”เปƒเบชเปˆเปƒเบ™ dashboards เบ—เบตเบชเบญเบ‡, เบซเบผเบทเป€เบŠเบทเปˆเบญเบ‡เป„เบงเป‰เปƒเบ™เบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆ drilldown เบ—เบตเปˆเบ™เปเบฒเป„เบ›เบชเบนเปˆเบฅเบฐเบšเบปเบšเบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบ‚เบญเบ‡เบžเบฒเบเบชเปˆเบงเบ™เบ—เบตเบชเบฒเบก.

เบžเบทเป‰เบ™เบ–เบฒเบ™เบ‚เบญเบ‡เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก PostgreSQL. Alexey Lesovsky

เบ•เบปเบงเบขเปˆเบฒเบ‡เบ‚เบญเบ‡เบฅเบฐเบšเบปเบšเบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบ—เบตเปˆเบกเบตเบŠเบทเปˆเบชเบฝเบ‡เบซเบ™เบถเปˆเบ‡. เบ™เบตเป‰เปเบกเปˆเบ™เบฅเบฐเบšเบปเบšเบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบ—เบตเปˆเป€เบขเบฑเบ™เบซเบผเบฒเบ. เบ™เบฒเบ‡เป€เบเบฑเบšเบเปเบฒเบ‚เปเป‰เบกเบนเบ™เบˆเปเบฒเบ™เบงเบ™เบซเบฅเบฒเบ, เปเบ•เปˆเบˆเบฒเบเบ—เบฑเบ”เบชเบฐเบ™เบฐเบ‚เบญเบ‡เบ‚เป‰เบญเบ, เบ™เบฒเบ‡เบกเบตเปเบ™เบงเบ„เบงเบฒเบกเบ„เบดเบ”เบ—เบตเปˆเปเบ›เบเบ›เบฐเบซเบฅเบฒเบ”เบ‚เบญเบ‡ dashboards. เบกเบตเบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆ "เบชเป‰เบฒเบ‡ dashboard". เปเบ•เปˆเป€เบกเบทเปˆเบญเบ—เปˆเบฒเบ™เบชเป‰เบฒเบ‡ dashboard, เบ—เปˆเบฒเบ™เบชเป‰เบฒเบ‡เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆเบ‚เบญเบ‡เบชเบญเบ‡เบ„เปเบฅเปเบฒ, เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆเบ‚เบญเบ‡เบเบฒเบŸ. เปเบฅเบฐเปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆเบ—เปˆเบฒเบ™เบ•เป‰เบญเบ‡เบเบฒเบ™เป€เบšเบดเปˆเบ‡เบšเบฒเบ‡เบชเบดเปˆเบ‡เบšเบฒเบ‡เบขเปˆเบฒเบ‡, เบ—เปˆเบฒเบ™เป€เบฅเบตเปˆเบกเบ„เบฅเบดเบเบ”เป‰เบงเบเบซเบ™เบน, เป€เบฅเบทเปˆเบญเบ™, เบŠเบญเบเบซเบฒเบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบ—เบตเปˆเบ•เป‰เบญเบ‡เบเบฒเบ™. เปเบฅเบฐเบ™เบตเป‰เบ•เป‰เบญเบ‡เปƒเบŠเป‰เป€เบงเบฅเบฒ, i.e. เบšเปเปˆเบกเบต dashboards เบ”เบฑเปˆเบ‡เบเปˆเบฒเบง. เบกเบตเบžเบฝเบ‡เปเบ•เปˆเบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆเบ‚เบญเบ‡เบ•เบฒเบ•เบฐเบฅเบฒเบ‡.

เบžเบทเป‰เบ™เบ–เบฒเบ™เบ‚เบญเบ‡เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก PostgreSQL. Alexey Lesovsky

เป€เบˆเบปเป‰เบฒเบ„เบงเบ™เป€เบžเบตเปˆเบกเบซเบเบฑเบ‡เปƒเบชเปˆ dashboards เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰? เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ”เป‰เบงเบเบฅเบฑเบเบชเบฐเบ™เบฐเป€เบŠเบฑเปˆเบ™เป€เบงเบฅเบฒเบ•เบญเบšเบชเบฐเบซเบ™เบญเบ‡. PostgreSQL เบกเบตเบกเบธเบกเบกเบญเบ‡ pg_stat_statements. เบกเบฑเบ™เบ–เบทเบเบ›เบดเบ”เบเบฒเบ™เปƒเบŠเป‰เบ‡เบฒเบ™เป‚เบ”เบเบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™, เปเบ•เปˆเบกเบฑเบ™เป€เบ›เบฑเบ™เบซเบ™เบถเปˆเบ‡เปƒเบ™เบกเบธเบกเป€เบšเบดเปˆเบ‡เบฅเบฐเบšเบปเบšเบ—เบตเปˆเบชเปเบฒเบ„เบฑเบ™เบ—เบตเปˆเบ„เบงเบ™เบˆเบฐเบ–เบทเบเป€เบ›เบตเบ”เปƒเบŠเป‰เปเบฅเบฐเบ™เปเบฒเปƒเบŠเป‰เบ•เบฐเบซเบผเบญเบ”เป€เบงเบฅเบฒ. เบกเบฑเบ™เป€เบเบฑเบšเบฎเบฑเบเบชเบฒเบ‚เปเป‰เบกเบนเบ™เบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เบชเบญเบšเบ–เบฒเบกเบ—เบฑเบ‡เบซเบกเบปเบ”เบ—เบตเปˆเบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เบขเบนเปˆเปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™.

เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบžเบงเบเป€เบฎเบปเบฒเบชเบฒเบกเบฒเบ”เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบˆเบฒเบเบ„เบงเบฒเบกเบˆเบดเบ‡เบ—เบตเปˆเบงเปˆเบฒเบžเบงเบเป€เบฎเบปเบฒเบชเบฒเบกเบฒเบ”เปƒเบŠเป‰เป€เบงเบฅเบฒเบ›เบฐเบ•เบดเบšเบฑเบ”เบ—เบฑเบ‡เบซเบกเบปเบ”เบ‚เบญเบ‡เบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเบ—เบฑเบ‡เบซเบกเบปเบ”เปเบฅเบฐเปเบšเปˆเบ‡เบกเบฑเบ™เบ”เป‰เบงเบเบˆเปเบฒเบ™เบงเบ™เบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเป‚เบ”เบเปƒเบŠเป‰เบŠเปˆเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เบ‚เป‰เบฒเบ‡เป€เบ—เบดเบ‡. เปเบ•เปˆเบ™เบตเป‰เปเบกเปˆเบ™เบญเบธเบ™เบซเบฐเบžเบนเบกเบชเบฐเป€เบฅเปˆเบเปƒเบ™เป‚เบฎเบ‡เบซเบกเป. เบžเบงเบเป€เบฎเบปเบฒเบชเบฒเบกเบฒเบ”เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบˆเบฒเบเบŠเปˆเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เบญเบทเปˆเบ™เป† - เป€เบงเบฅเบฒเบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบชเบญเบšเบ–เบฒเบกเบ•เปเบฒเปˆเบชเบธเบ”, เบชเบนเบ‡เบชเบธเบ”เปเบฅเบฐเบ›เบฒเบ™เบเบฒเบ‡. เปเบฅเบฐเบžเบงเบเป€เบฎเบปเบฒเบชเบฒเบกเบฒเบ”เบชเป‰เบฒเบ‡เป€เบ›เบตเป€เบŠเบฑเบ™เป„เบ”เป‰; PostgreSQL เบกเบตเบซเบ™เป‰เบฒเบ—เบตเปˆเบ—เบตเปˆเบชเบญเบ”เบ„เป‰เบญเบ‡เบเบฑเบ™เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ™เบตเป‰. เปเบฅเบฐเบžเบงเบเป€เบฎเบปเบฒเบชเบฒเบกเบฒเบ”เป„เบ”เป‰เบฎเบฑเบšเบ•เบปเบงเป€เบฅเบเบšเบฒเบ‡เบขเปˆเบฒเบ‡เบ—เบตเปˆเบกเบตเบฅเบฑเบเบชเบฐเบ™เบฐเป€เบงเบฅเบฒเบ•เบญเบšเบชเบฐเบซเบ™เบญเบ‡เบ‚เบญเบ‡เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเบ—เบตเปˆเบชเปเบฒเป€เบฅเบฑเบ”เปเบฅเป‰เบง, i.e. เบžเบงเบเป€เบฎเบปเบฒเบšเปเปˆเป„เบ”เป‰เบ›เบฐเบ•เบดเบšเบฑเบ”เบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเบ›เบญเบก 'เป€เบฅเบทเบญเบ 1' เปเบฅเบฐเป€เบšเบดเปˆเบ‡เป€เบงเบฅเบฒเบ•เบญเบšเบชเบฐเบซเบ™เบญเบ‡, เปเบ•เปˆเบžเบงเบเป€เบฎเบปเบฒเบงเบดเป€เบ„เบฒเบฐเป€เบงเบฅเบฒเบ•เบญเบšเบชเบฐเบซเบ™เบญเบ‡เบชเปเบฒเบฅเบฑเบšเบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเบ—เบตเปˆเบชเปเบฒเป€เบฅเบฑเบ”เปเบฅเป‰เบงเปเบฅเบฐเปเบ•เป‰เบก. เบšเปเปˆเบงเปˆเบฒเบˆเบฐเป€เบ›เบฑเบ™เบ•เบปเบงเป€เบฅเบเปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบ, เบซเบผเบทเบžเบงเบเป€เบฎเบปเบฒเบชเป‰เบฒเบ‡เป€เบชเบฑเป‰เบ™เบชเบฐเปเบ”เบ‡เป‚เบ”เบเบญเบตเบ‡เปƒเบชเปˆเบกเบฑเบ™.

เบกเบฑเบ™เบเบฑเบ‡เบกเบตเบ„เบงเบฒเบกเบชเปเบฒเบ„เบฑเบ™เบ—เบตเปˆเบˆเบฐเบ•เบดเบ”เบ•เบฒเบกเบˆเปเบฒเบ™เบงเบ™เบ‚เปเป‰เบœเบดเบ”เบžเบฒเบ”เบ—เบตเปˆเป€เบเบตเบ”เบ‚เบทเป‰เบ™เป‚เบ”เบเบฅเบฐเบšเบปเบšเปƒเบ™เบ›เบฐเบˆเบธเบšเบฑเบ™. เปเบฅเบฐเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ™เบตเป‰, เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบ™เปเบฒเปƒเบŠเป‰ pg_stat_database view. เบžเบงเบเป€เบฎเบปเบฒเบชเบธเบกเปƒเบชเปˆเบžเบฒเบเบชเบฐเบซเบ™เบฒเบก xact_rollback. เบžเบฒเบเบชเบฐเบซเบ™เบฒเบกเบ™เบตเป‰เบชเบฐเปเบ”เบ‡เปƒเบซเป‰เป€เบซเบฑเบ™เบšเปเปˆเบžเบฝเบ‡เปเบ•เปˆเบˆเปเบฒเบ™เบงเบ™เบ‚เบญเบ‡ rollbacks เบ—เบตเปˆเป€เบเบตเบ”เบ‚เบถเป‰เบ™เปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™, เปเบ•เปˆเบเบฑเบ‡เปƒเบŠเป‰เป€เบงเบฅเบฒเป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™เบšเบฑเบ™เบŠเบตเบ‚เบญเบ‡เบˆเปเบฒเบ™เบงเบ™เบ‚เบญเบ‡เบ„เบงเบฒเบกเบœเบดเบ”เบžเบฒเบ”. เป€เบงเบปเป‰เบฒเบ‚เป‰เบญเบ™เบ‚เป‰เบฒเบ‡, เบžเบงเบเป€เบฎเบปเบฒเบชเบฒเบกเบฒเบ”เบชเบฐเปเบ”เบ‡เบ•เบปเบงเป€เบฅเบเบ™เบตเป‰เบขเบนเปˆเปƒเบ™ dashboard เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเปเบฅเบฐเป€เบšเบดเปˆเบ‡เบงเปˆเบฒเบžเบงเบเป€เบฎเบปเบฒเบกเบตเบ‚เปเป‰เบœเบดเบ”เบžเบฒเบ”เบซเบผเบฒเบเบ›เบฒเบ™เปƒเบ”. เบ–เป‰เบฒเบกเบตเบ„เบงเบฒเบกเบœเบดเบ”เบžเบฒเบ”เบซเบผเบฒเบ, เบ™เบตเป‰เปเบกเปˆเบ™เป€เบซเบ”เบœเบปเบ™เบ—เบตเปˆเบ”เบตเบ—เบตเปˆเบˆเบฐเป€เบšเบดเปˆเบ‡เป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™เบšเบฑเบ™เบ—เบถเบเปเบฅเบฐเป€เบšเบดเปˆเบ‡เบงเปˆเบฒเบžเบงเบเป€เบ‚เบปเบฒเบกเบตเบ‚เปเป‰เบœเบดเบ”เบžเบฒเบ”เบ›เบฐเป€เบžเบ”เปƒเบ”เปเบฅเบฐเป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบžเบงเบเบกเบฑเบ™เป€เบเบตเบ”เบ‚เบทเป‰เบ™, เปเบฅเบฐเบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบฅเบปเบ‡เบ—เบถเบ™เปเบฅเบฐเปเบเป‰เป„เบ‚เบžเบงเบเบกเบฑเบ™.

เบžเบทเป‰เบ™เบ–เบฒเบ™เบ‚เบญเบ‡เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก PostgreSQL. Alexey Lesovsky

เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เป€เบžเบตเปˆเบกเบชเบดเปˆเบ‡เบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเป€เบ›เบฑเบ™ Tachometer. เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เปเบกเปˆเบ™เบˆเปเบฒเบ™เบงเบ™เบเบฒเบ™เป€เบฎเบฑเบ”เบ—เบธเบฅเบฐเบเปเบฒเบ•เปเปˆเบงเบดเบ™เบฒเบ—เบตเปเบฅเบฐเบˆเปเบฒเบ™เบงเบ™เบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเบ•เปเปˆเบงเบดเบ™เบฒเบ—เบต. เป€เบงเบปเป‰เบฒเบ‚เป‰เบญเบ™เบ‚เป‰เบฒเบ‡, เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบ™เปเบฒเปƒเบŠเป‰เบ•เบปเบงเป€เบฅเบเป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เป€เบ›เบฑเบ™เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เปƒเบ™เบ›เบฐเบˆเบธเบšเบฑเบ™เบ‚เบญเบ‡เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบ‚เบญเบ‡เบ—เปˆเบฒเบ™เปเบฅเบฐเบชเบฑเบ‡เป€เบเบ”เป€เบซเบฑเบ™เบงเปˆเบฒเบกเบตเบˆเบธเบ”เบชเบนเบ‡เบชเบธเบ”เปƒเบ™เบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เป, เบชเบนเบ‡เบชเบธเบ”เปƒเบ™เบเบฒเบ™เป€เบฎเบฑเบ”เบ—เบธเบฅเบฐเบเปเบฒ, เบซเบผเบทเปƒเบ™เบ—เบฒเบ‡เบเบฑเบšเบเบฑเบ™, เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เปเบกเปˆเบ™ underloaded เป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเบงเปˆเบฒ backend เบšเบฒเบ‡เบขเปˆเบฒเบ‡เบฅเบปเป‰เบกเป€เบซเบฅเบง. เบกเบฑเบ™เป€เบ›เบฑเบ™เบชเบดเปˆเบ‡ เบชเบณ เบ„เบฑเบ™เบ—เบตเปˆเบˆเบฐเบ•เป‰เบญเบ‡เป€เบšเบดเปˆเบ‡เบ•เบปเบงเป€เบฅเบเบ™เบตเป‰เบขเบนเปˆเบชเบฐ เป€เปเบต เปเบฅเบฐเบˆเบทเปˆเป„เบงเป‰เบงเปˆเบฒ เบชเบณ เบฅเบฑเบšเป‚เบ„เบ‡เบเบฒเบ™เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เปเบšเบšเบ™เบตเป‰เป€เบ›เบฑเบ™เป€เบฅเบทเปˆเบญเบ‡เบ›เบปเบเบเบฐเบ•เบด, เปเบ•เปˆเบ„เปˆเบฒเบ‚เป‰เบฒเบ‡เป€เบ—เบดเบ‡เปเบฅเบฐเบ‚เป‰เบฒเบ‡เบฅเบธเปˆเบกเบ™เบตเป‰เปเบกเปˆเบ™เบšเบฒเบ‡เบ›เบฐเป€เบžเบ”เบ‚เบญเบ‡เบšเบฑเบ™เบซเบฒเปเบฅเบฐเบšเปเปˆเบชเบฒเบกเบฒเบ”เป€เบ‚เบปเป‰เบฒเปƒเบˆเป„เบ”เป‰, เบŠเบถเปˆเบ‡เบซเบกเบฒเบเบ„เบงเบฒเบกเบงเปˆเบฒเบžเบงเบเป€เบฎเบปเบฒเบ•เป‰เบญเบ‡เป€เบšเบดเปˆเบ‡เบงเปˆเบฒเป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบ•เบปเบงเป€เบฅเบเป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰. เบชเบนเบ‡เบซเบผเบฒเบ.

เป€เบžเบทเปˆเบญเบ›เบฐเป€เบกเบตเบ™เบˆเปเบฒเบ™เบงเบ™เบเบฒเบ™เป€เบฎเบฑเบ”เบ—เบธเบฅเบฐเบเปเบฒ, เบžเบงเบเป€เบฎเบปเบฒเบชเบฒเบกเบฒเบ”เบญเป‰เบฒเบ‡เบญเบตเบ‡เป€เบ–เบดเบ‡ pg_stat_database view เบญเบตเบเบ„เบฑเป‰เบ‡. เบžเบงเบเป€เบฎเบปเบฒเบชเบฒเบกเบฒเบ”เป€เบžเบตเปˆเบกเบˆเปเบฒเบ™เบงเบ™เบ‚เบญเบ‡ commits เปเบฅเบฐเบˆเปเบฒเบ™เบงเบ™เบ‚เบญเบ‡ rollbacks เปเบฅเบฐเป„เบ”เป‰เบฎเบฑเบšเบˆเปเบฒเบ™เบงเบ™เบ‚เบญเบ‡เบ—เบธเบฅเบฐเบเปเบฒเบ•เปเปˆเบงเบดเบ™เบฒเบ—เบต.

เบ—เบธเบเบ„เบปเบ™เป€เบ‚เบปเป‰เบฒเปƒเบˆเบงเปˆเบฒเบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเบซเบผเบฒเบเบญเบฑเบ™เบชเบฒเบกเบฒเบ”เป€เบ‚เบปเป‰เบฒเบเบฑเบšเบ—เบธเบฅเบฐเบเปเบฒเบ”เบฝเบงเป„เบ”เป‰เบšเป? เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™ TPS เปเบฅเบฐ QPS เปเบกเปˆเบ™เปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™เป€เบฅเบฑเบเบ™เป‰เบญเบ.

เบˆเปเบฒเบ™เบงเบ™เบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเบ•เปเปˆเบงเบดเบ™เบฒเบ—เบตเบชเบฒเบกเบฒเบ”เป„เบ”เป‰เบฎเบฑเบšเบˆเบฒเบ pg_stat_statements เปเบฅเบฐเบžเบฝเบ‡เปเบ•เปˆเบ„เบดเบ”เป„เบฅเปˆเบœเบปเบ™เบฅเบงเบกเบ‚เบญเบ‡เบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเบ—เบตเปˆเบชเปเบฒเป€เบฅเบฑเบ”เบ—เบฑเบ‡เบซเบกเบปเบ”. เบกเบฑเบ™เป€เบ›เบฑเบ™เบ—เบตเปˆเบŠเบฑเบ”เป€เบˆเบ™เบงเปˆเบฒเบžเบงเบเป€เบฎเบปเบฒเบ›เบฝเบšเบ—เบฝเบšเบกเบนเบ™เบ„เปˆเบฒเปƒเบ™เบ›เบฐเบˆเบธเบšเบฑเบ™เบเบฑเบšเบญเบฑเบ™เบเปˆเบญเบ™เบซเบ™เป‰เบฒ, เบฅเบปเบšเบกเบฑเบ™, เป€เบญเบปเบฒ delta, เปเบฅเบฐเป„เบ”เป‰เบฎเบฑเบšเบ›เบฐเบฅเบดเบกเบฒเบ™.

เบžเบทเป‰เบ™เบ–เบฒเบ™เบ‚เบญเบ‡เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก PostgreSQL. Alexey Lesovsky

เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เป€เบžเบตเปˆเบก metrics เป€เบžเบตเปˆเบกเป€เบ•เบตเบกเป„เบ”เป‰เบ–เป‰เบฒเบ•เป‰เบญเบ‡เบเบฒเบ™, เป€เบŠเบดเปˆเบ‡เบเบฑเบ‡เบŠเปˆเบงเบเบ›เบฐเป€เบกเบตเบ™เบ„เบงเบฒเบกเบžเป‰เบญเบกเบ‚เบญเบ‡เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเปเบฅเบฐเบ•เบดเบ”เบ•เบฒเบกเป€เบšเบดเปˆเบ‡เบงเปˆเบฒเบกเบตเบเบฒเบ™ downtime เปƒเบ”.

เบซเบ™เบถเปˆเบ‡เปƒเบ™เบ•เบปเบงเบงเบฑเบ”เปเบ—เบเป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เปเบกเปˆเบ™เป€เบงเบฅเบฒเบซเบงเปˆเบฒเบ‡. เปเบ•เปˆเป€เบงเบฅเบฒเป€เบฎเบฑเบ”เบงเบฝเบเปƒเบ™ PostgreSQL เปเบกเปˆเบ™เบซเบเบธเป‰เบ‡เบเบฒเบเป€เบฅเบฑเบเบ™เป‰เบญเบ. เบ‚เป‰เบญเบเบˆเบฐเบšเบญเบเป€เบˆเบปเป‰เบฒเบงเปˆเบฒเป€เบ›เบฑเบ™เบซเบเบฑเบ‡. เป€เบกเบทเปˆเบญ PostgreSQL เป„เบ”เป‰เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™, เป€เบงเบฅเบฒเป€เบฎเบฑเบ”เบงเบฝเบเป€เบฅเบตเปˆเบกเบฅเบฒเบเบ‡เบฒเบ™. เปเบ•เปˆเบ–เป‰เบฒเบšเบฒเบ‡เบˆเบธเบ”, เบ•เบปเบงเบขเปˆเบฒเบ‡, เบงเบฝเบเบ‡เบฒเบ™เบšเบฒเบ‡เบขเปˆเบฒเบ‡เป€เบฎเบฑเบ”เบงเบฝเบเปƒเบ™เบ•เบญเบ™เบเบฒเบ‡เบ„เบทเบ™, เบœเบนเป‰เบ‚เป‰เบฒ OOM เป„เบ”เป‰เบกเบฒเปเบฅเบฐเบšเบฑเบ‡เบ„เบฑเบšเปƒเบซเป‰เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เป€เบ”เบฑเบเบ™เป‰เบญเบ PostgreSQL, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™, เปƒเบ™เบเปเบฅเบฐเบ™เบตเบ™เบตเป‰ PostgreSQL เบขเบธเบ”เบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบ‚เบญเบ‡เบฅเบนเบเบ„เป‰เบฒเบ—เบฑเบ‡เบซเบกเบปเบ”, เบ›เบฑเบšเบžเบทเป‰เบ™เบ—เบตเปˆเบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒเบ—เบตเปˆเบ–เบทเบเบ—เปเบฒเบฅเบฒเบเปเบฅเบฐเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบเบฒเบ™เบŸเบทเป‰เบ™เบ•เบปเบงเบˆเบฒเบ. เบ”เปˆเบฒเบ™เบชเบธเบ”เบ—เป‰เบฒเบ. เปเบฅเบฐเปƒเบ™เบ‚เบฐเบ™เบฐเบ—เบตเปˆเบเบฒเบ™เบŸเบทเป‰เบ™เบ•เบปเบงเบˆเบฒเบเบˆเบธเบ”เบเบงเบ”เบเบฒเบ™เบตเป‰เปเบเปˆเบเบฒเบง, เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบšเปเปˆเบเบญเบกเบฎเบฑเบšเบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆ, i.e. เบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เบ™เบตเป‰เบชเบฒเบกเบฒเบ”เบ–เบทเบเบ›เบฐเป€เบกเบตเบ™เบงเปˆเบฒเป€เบ›เบฑเบ™เบเบฒเบ™เบขเบธเบ”เป€เบฎเบฑเบ”เบงเบฝเบ. เปเบ•เปˆเป€เบ„เบทเปˆเบญเบ‡เบ™เบฑเบšเป€เบงเบฅเบฒเป€เบฎเบฑเบ”เบงเบฝเบเบˆเบฐเบšเปเปˆเบ–เบทเบเบ•เบฑเป‰เบ‡เบ„เปˆเบฒเปƒเปเปˆ, เป€เบžเบฒเบฐเบงเปˆเบฒเบกเบฑเบ™เปƒเบŠเป‰เป€เบงเบฅเบฒเป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™เบšเบฑเบ™เบŠเบตเป€เบงเบฅเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ‚เบญเบ‡ postmaster เบˆเบฒเบเบ›เบฑเบ”เบˆเบธเบšเบฑเบ™เบ—เปเบฒเบญเบดเบ”. เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเบชเบฒเบกเบฒเบ”เบ‚เป‰เบฒเบกเป„เบ”เป‰.

เบ—เปˆเบฒเบ™เบเปเปˆเบ„เบงเบ™เบ•เบดเบ”เบ•เบฒเบกเบˆเปเบฒเบ™เบงเบ™เบ‚เบญเบ‡เบžเบฐเบ™เบฑเบเบ‡เบฒเบ™เบชเบนเบ™เบเบฒเบเบฒเบ”. เบ—เบธเบเบ„เบปเบ™เบฎเบนเป‰เบงเปˆเบฒ autovacuum เปเบกเปˆเบ™เบซเบเบฑเบ‡เบขเบนเปˆเปƒเบ™ PostgreSQL? เบ™เบตเป‰เปเบกเปˆเบ™เบฅเบฐเบšเบปเบšเบเปˆเบญเบเบ—เบตเปˆเบซเบ™เป‰เบฒเบชเบปเบ™เปƒเบˆเปƒเบ™ PostgreSQL. เบšเบปเบ”เบ„เบงเบฒเบกเบˆเปเบฒเบ™เบงเบ™เบซเบผเบฒเบเป„เบ”เป‰เบ–เบทเบเบ‚เบฝเบ™เบเปˆเบฝเบงเบเบฑเบšเบ™เบฒเบ‡, เบšเบปเบ”เบฅเบฒเบเบ‡เบฒเบ™เบˆเปเบฒเบ™เบงเบ™เบซเบผเบฒเบเป„เบ”เป‰เบ–เบทเบเป€เบฎเบฑเบ”. เบกเบตเบซเบผเบฒเบเบเบฒเบ™เบชเบปเบ™เบ—เบฐเบ™เบฒเบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เบชเบนเบ™เบเบฒเบเบฒเบ”เปเบฅเบฐเบงเบดเบ—เบตเบ—เบตเปˆเบกเบฑเบ™เบ„เบงเบ™เบˆเบฐเป€เบฎเบฑเบ”เบงเบฝเบ. เบซเบผเบฒเบโ€‹เบ„เบปเบ™โ€‹เบ–เบทโ€‹เบงเปˆเบฒโ€‹เป€เบ›เบฑเบ™โ€‹เบ„เบงเบฒเบกโ€‹เบŠเบปเปˆเบงโ€‹เบฎเป‰เบฒเบโ€‹เบ—เบตเปˆโ€‹เบˆเบณโ€‹เป€เบ›เบฑเบ™. เปเบ•เปˆเบ™เบฑเป‰เบ™เป€เบ›เบฑเบ™เปเบ™เบงเปƒเบ”. เบ™เบตเป‰เปเบกเปˆเบ™เบ›เบฐเป€เบžเบ”เบ‚เบญเบ‡เบเบฒเบ™เบ›เบฝเบšเบ—เบฝเบšเบ‚เบญเบ‡เป€เบ„เบทเปˆเบญเบ‡เป€เบเบฑเบšเบ‚เบตเป‰เป€เบซเบเบทเป‰เบญเบ—เบตเปˆเป€เบฎเบฑเบ”เบ„เบงเบฒเบกเบชเบฐเบญเบฒเบ”เปเบ–เบงเบ—เบตเปˆเบฅเป‰เบฒเบชเบฐเป„เบซเบกเบ—เบตเปˆเบšเปเปˆเบˆเปเบฒเป€เบ›เบฑเบ™เป‚เบ”เบเบเบฒเบ™เป€เบฎเบฑเบ”เบ—เบธเบฅเบฐเบเปเบฒเปƒเบ”เป†เปเบฅเบฐเป€เบžเบตเปˆเบกเบžเบทเป‰เบ™เบ—เบตเปˆเบซเบงเปˆเบฒเบ‡เปƒเบ™เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เปเบฅเบฐเบ”เบฑเบ”เบชเบฐเบ™เบตเบชเปเบฒเบฅเบฑเบšเปเบ–เบงเปƒเบซเบกเปˆ.

เป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบ—เปˆเบฒเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบ•เบดเบ”เบ•เบฒเบกเบกเบฑเบ™? เป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเบงเปˆเบฒเบเบฒเบ™เบ”เบนเบ”เบŠเบทเบกเบšเบฒเบ‡เบ„เบฑเป‰เบ‡เบเปเปˆเป€เบˆเบฑเบšเบ›เบงเบ”เบซเบผเบฒเบ. เบกเบฑเบ™เบšเปเบฅเบดเป‚เบžเบเบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เบˆเปเบฒเบ™เบงเบ™เบซเบผเบงเบ‡เบซเบผเบฒเบเปเบฅเบฐเบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเบ‚เบญเบ‡เบฅเบนเบเบ„เป‰เบฒเป€เบฅเบตเปˆเบกเบ—เบปเบ™เบ—เบธเบเบเป‰เบญเบ™เบœเบปเบ™.

เปเบฅเบฐเบกเบฑเบ™เบ„เบงเบ™เบˆเบฐเบ–เบทเบเบ•เบดเบ”เบ•เบฒเบกเบœเปˆเบฒเบ™เบกเบธเบกเป€เบšเบดเปˆเบ‡ pg_stat_activity, เบ—เบตเปˆเบ‚เป‰เบญเบเบˆเบฐเป€เบงเบปเป‰เบฒเบเปˆเบฝเบงเบเบฑเบšเบžเบฒเบเบ•เปเปˆเป„เบ›. เบ—เบฑเบ”เบชเบฐเบ™เบฐเบ™เบตเป‰เบชเบฐเปเบ”เบ‡เปƒเบซเป‰เป€เบซเบฑเบ™เบเบดเบ”เบˆเบฐเบเปเบฒเปƒเบ™เบ›เบฐเบˆเบธเบšเบฑเบ™เปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™. เปเบฅเบฐเป‚เบ”เบเบœเปˆเบฒเบ™เบเบดเบ”เบˆเบฐเบเปเบฒเบ™เบตเป‰เบžเบงเบเป€เบฎเบปเบฒเบชเบฒเบกเบฒเบ”เบ•เบดเบ”เบ•เบฒเบกเบˆเปเบฒเบ™เบงเบ™เบ‚เบญเบ‡เบชเบนเบ™เบเบฒเบเบฒเบ”เบ—เบตเปˆเป€เบฎเบฑเบ”เบงเบฝเบเปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™. เบžเบงเบเป€เบฎเบปเบฒเบชเบฒเบกเบฒเบ”เบ•เบดเบ”เบ•เบฒเบกเบชเบนเบ™เบเบฒเบเบฒเบ”เปเบฅเบฐเป€เบšเบดเปˆเบ‡เบงเปˆเบฒเบ–เป‰เบฒเบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เป€เบเบตเบ™เบ‚เบญเบšเป€เบ‚เบ”เบˆเปเบฒเบเบฑเบ”, เบ™เบตเป‰เปเบกเปˆเบ™เป€เบซเบ”เบœเบปเบ™เบ—เบตเปˆเบˆเบฐเป€เบšเบดเปˆเบ‡เป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒ PostgreSQL เปเบฅเบฐเบงเบดเบ—เบตเบเบฒเบ™เป€เบžเบตเปˆเบกเบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบšเบ‚เบญเบ‡เบชเบนเบ™เบเบฒเบเบฒเบ”.

เบชเบดเปˆเบ‡เบญเบทเปˆเบ™เบเปˆเบฝเบงเบเบฑเบš PostgreSQL เปเบกเปˆเบ™เบงเปˆเบฒ PostgreSQL เป€เบˆเบฑเบšเบ›เปˆเบงเบเบซเบผเบฒเบเบ‚เบญเบ‡เบเบฒเบ™เป€เบฎเบฑเบ”เบ—เบธเบฅเบฐเบเปเบฒเบ—เบตเปˆเบเบฒเบงเบ™เบฒเบ™. เป‚เบ”เบเบชเบฐเป€เบžเบฒเบฐเบˆเบฒเบเบเบฒเบ™เป€เบฎเบฑเบ”เบ—เบธเบฅเบฐเบเปเบฒเบ—เบตเปˆเบซเป‰เบญเบเบ›เบฐเบกเบฒเบ™เป€เบ›เบฑเบ™เป€เบงเบฅเบฒเบ”เบปเบ™เบ™เบฒเบ™เปเบฅเบฐเบšเปเปˆเป€เบฎเบฑเบ”เบซเบเบฑเบ‡เป€เบฅเบตเบ. เบ™เบตเป‰เปเบกเปˆเบ™เบญเบฑเบ™เบ—เบตเปˆเป€เบญเบตเป‰เบ™เบงเปˆเบฒ stat idle-in-transaction. เบเบฒเบ™เป€เบฎเบฑเบ”เบ—เบธเบฅเบฐเบเปเบฒเบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเบ–เบท locks เปเบฅเบฐเบ›เป‰เบญเบ‡เบเบฑเบ™เบšเปเปˆเปƒเบซเป‰เบชเบนเบ™เบเบฒเบเบฒเบ”เป€เบฎเบฑเบ”เบงเบฝเบ. เปเบฅเบฐเบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบˆเบฐเบšเบงเบกเปเบฅเบฐเบ‚เบฐเบซเบ™เบฒเบ”เป€เบžเบตเปˆเบกเบ‚เบถเป‰เบ™. เปเบฅเบฐเบเบฒเบ™เบชเบญเบšเบ–เบฒเบกเบ—เบตเปˆเป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบšเบ•เบฒเบ•เบฐเบฅเบฒเบ‡เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เป€เบฅเบตเปˆเบกเป€เบฎเบฑเบ”เบงเบฝเบเบŠเป‰เบฒเบฅเบปเบ‡, เป€เบžเบฒเบฐเบงเปˆเบฒเบ—เปˆเบฒเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบŠเป‰เบงเบ™เบ—เบธเบเบฅเบธเป‰เบ™เป€เบเบปเปˆเบฒเบ‚เบญเบ‡เปเบ–เบงเบˆเบฒเบเบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒเป„เบ›เบซเบฒเปเบœเปˆเบ™เปเบฅเบฐเบเบฑเบšเบ„เบทเบ™เป„เบ›เบšเปˆเบญเบ™. เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เป„เบฅเบเบฐเป€เบงเบฅเบฒ, เป„เบฅเบเบฐเป€เบงเบฅเบฒเบ‚เบญเบ‡เบเบฒเบ™เป€เบฎเบฑเบ”เบ—เบธเบฅเบฐเบเปเบฒเบ—เบตเปˆเบเบฒเบงเบ—เบตเปˆเบชเบธเบ”, เบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเบชเบนเบ™เบเบฒเบเบฒเบ”เบ—เบตเปˆเบเบฒเบงเบ—เบตเปˆเบชเบธเบ”เบเปเปˆเบ•เป‰เบญเบ‡เป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก. เปเบฅเบฐเบ–เป‰เบฒเบžเบงเบเป€เบฎเบปเบฒเป€เบซเบฑเบ™เบšเบฒเบ‡เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบ—เบตเปˆเป€เบฎเบฑเบ”เบงเบฝเบเป€เบ›เบฑเบ™เป€เบงเบฅเบฒเบ”เบปเบ™เบ™เบฒเบ™, เปเบฅเป‰เบงเบซเบผเบฒเบเบเปˆเบงเบฒ 10-20-30 เบ™เบฒเบ—เบตเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เป‚เบซเบผเบ” OLTP, เบžเบงเบเป€เบฎเบปเบฒเบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เป„เบ”เป‰เป€เบญเบปเบฒเปƒเบˆเปƒเบชเปˆเบเบฑเบšเบžเบงเบเป€เบ‚เบปเบฒเปเบฅเบฐเบšเบฑเบ‡เบ„เบฑเบšเปƒเบซเป‰เบžเบงเบเป€เบ‚เบปเบฒเบขเบธเบ”, เบซเบผเบทเป€เบžเบตเปˆเบกเบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบšเบ„เปเบฒเบฎเป‰เบญเบ‡เบชเบฐเบซเบกเบฑเบเป€เบžเบทเปˆเบญเปƒเบซเป‰เบžเบงเบเป€เบ‚เบปเบฒ. เบšเปเปˆโ€‹เป„เบ”เป‰โ€‹เบ–เบทเบโ€‹เป€เบญเบตเป‰เบ™โ€‹เปเบฅเบฐโ€‹เบšเปเปˆโ€‹เป„เบ”เป‰โ€‹เบงเบฒเบ‡โ€‹เบชเบฒเบโ€‹เบเบฒเบงโ€‹เบ™เบฑเป‰เบ™โ€‹. เบชเปเบฒเบฅเบฑเบšเบงเบฝเบเบ‡เบฒเบ™เบเบฒเบ™เบงเบดเป€เบ„เบฒเบฐ, 10-20-30 เบ™เบฒเบ—เบตเปเบกเปˆเบ™เบ›เบปเบเบเบฐเบ•เบด, เบเบฑเบ‡เบกเบตเป€เบงเบฅเบฒเบ”เบปเบ™เบเบงเปˆเบฒ.

เบžเบทเป‰เบ™เบ–เบฒเบ™เบ‚เบญเบ‡เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก PostgreSQL. Alexey Lesovsky
เบ•เปเปˆเป„เบ›เบžเบงเบเป€เบฎเบปเบฒเบกเบตเบ—เบฒเบ‡เป€เบฅเบทเบญเบเบเบฑเบšเบฅเบนเบเบ„เป‰เบฒเบ—เบตเปˆเป€เบŠเบทเปˆเบญเบกเบ•เปเปˆ. เป€เบกเบทเปˆเบญเบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบชเป‰เบฒเบ‡ dashboard เปเบฅเบฐเบ›เบฐเบเบฒเบ”เบเบฒเบ™เบงเบฑเบ”เปเบ—เบเบ„เบงเบฒเบกเบžเป‰เบญเบกเบ—เบตเปˆเบชเปเบฒเบ„เบฑเบ™เบขเบนเปˆเปƒเบ™เบกเบฑเบ™, เบžเบงเบเป€เบฎเบปเบฒเบเบฑเบ‡เบชเบฒเบกเบฒเบ”เป€เบžเบตเปˆเบกเบ‚เปเป‰เบกเบนเบ™เป€เบžเบตเปˆเบกเป€เบ•เบตเบกเบเปˆเบฝเบงเบเบฑเบšเบฅเบนเบเบ„เป‰เบฒเบ—เบตเปˆเป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบขเบนเปˆเบ—เบตเปˆเบ™เบฑเป‰เบ™.

เบ‚เปเป‰เบกเบนเบ™เบเปˆเบฝเบงเบเบฑเบšเบฅเบนเบเบ„เป‰เบฒเบ—เบตเปˆเป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเปเบกเปˆเบ™เบชเปเบฒเบ„เบฑเบ™เป€เบžเบฒเบฐเบงเปˆเบฒ, เบˆเบฒเบเบ—เบฑเบ”เบชเบฐเบ™เบฐเบ‚เบญเบ‡ PostgreSQL, เบฅเบนเบเบ„เป‰เบฒเปเบกเปˆเบ™เปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™. เบกเบตโ€‹เบฅเบนเบโ€‹เบ„เป‰เบฒโ€‹เบ—เบตเปˆโ€‹เบ”เบต เปเบฅเบฐโ€‹เบกเบตโ€‹เบฅเบนเบโ€‹เบ„เป‰เบฒโ€‹เบ—เบตเปˆโ€‹เบšเปเปˆโ€‹เบ”เบต.

เบ•เบปเบงเบขเปˆเบฒเบ‡เบ‡เปˆเบฒเบเป†. เป‚เบ”เบเบฅเบนเบเบ„เป‰เบฒเบ‚เป‰เบญเบเป€เบ‚เบปเป‰เบฒเปƒเบˆเบ„เปเบฒเบฎเป‰เบญเบ‡เบชเบฐเบซเบกเบฑเบ. เบ„เปเบฒเบฎเป‰เบญเบ‡เบชเบฐเบซเบกเบฑเบเป„เบ”เป‰เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบเบฑเบšเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เปเบฅเบฐเบ—เบฑเบ™เบ—เบตเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบชเบปเปˆเบ‡เบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเบ‚เบญเบ‡เบ•เบปเบ™เบขเบนเปˆเบ—เบตเปˆเบ™เบฑเป‰เบ™, เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เปเบฅเบฐเบ›เบฐเบ•เบดเบšเบฑเบ”เปƒเบซเป‰เป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒ, เปเบฅเบฐเบชเบปเปˆเบ‡เบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบšเบเบฑเบšเบฅเบนเบเบ„เป‰เบฒ. เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เปเบกเปˆเบ™เบฅเบนเบเบ„เป‰เบฒเบ—เบตเปˆเบ”เบตเปเบฅเบฐเบ–เบทเบเบ•เป‰เบญเบ‡.

เบกเบตเบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆเบฅเบนเบเบ„เป‰เบฒเป„เบ”เป‰เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆ, เบกเบฑเบ™เบ–เบทเบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆ, เปเบ•เปˆเบšเปเปˆเบกเบตเบซเบเบฑเบ‡เป€เบฅเบตเบ. เบกเบฑเบ™เบขเบนเปˆเปƒเบ™เบชเบฐเบ–เบฒเบ™เบฐเบ—เบตเปˆเบšเปเปˆเบกเบตเบ›เบฐเป‚เบซเบเบ”.

เปเบ•เปˆเบกเบตเบฅเบนเบเบ„เป‰เบฒเบ—เบตเปˆเบšเปเปˆเบ”เบต. เบ•เบปเบงเบขเปˆเบฒเบ‡, เบฅเบนเบเบ„เป‰เบฒเบ”เบฝเบงเบเบฑเบ™เป„เบ”เป‰เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆ, เป€เบ›เบตเบ”เบเบฒเบ™เป€เบฎเบฑเบ”เบ—เบธเบฅเบฐเบเปเบฒ, เป€เบฎเบฑเบ”เบšเบฒเบ‡เบชเบดเปˆเบ‡เบšเบฒเบ‡เบขเปˆเบฒเบ‡เปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เปเบฅเบฐเบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™เบฅเบฐเบซเบฑเบ”, เบ•เบปเบงเบขเปˆเบฒเบ‡, เป€เบžเบทเปˆเบญเป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡เปเบซเบผเปˆเบ‡เบžเบฒเบเบ™เบญเบเบซเบผเบทเบเบฒเบ™เบ›เบธเบ‡เปเบ•เปˆเบ‡เบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเป„เบ”เป‰เบฎเบฑเบšเบขเบนเปˆเบ—เบตเปˆเบ™เบฑเป‰เบ™. เปเบ•เปˆเบฅเบฒเบงเบšเปเปˆเป„เบ”เป‰เบ›เบดเบ”เบเบฒเบ™เป€เบฎเบฑเบ”เบ—เบธเบฅเบฐเบเปเบฒ. เปเบฅเบฐเบ—เบธเบฅเบฐเบเปเบฒ hangs เปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เปเบฅเบฐเบ–เบทเบเบˆเบฑเบ”เบ‚เบถเป‰เบ™เปƒเบ™ lock เบชเบธเบ”เป€เบชเบฑเป‰เบ™. เบ™เบตเป‰เปเบกเปˆเบ™เบชเบฐเบžเบฒเบšเบ—เบตเปˆเบšเปเปˆเบ”เบต. เปเบฅเบฐเบ–เป‰เบฒเบซเบฒเบเบงเปˆเบฒเบ—เบฑเบ™เบ—เบตเบ—เบฑเบ™เปƒเบ”เบ„เปเบฒเบฎเป‰เบญเบ‡เบชเบฐเบซเบกเบฑเบเบšเบฒเบ‡เบšเปˆเบญเบ™เบžเบฒเบเปƒเบ™เบ•เบปเบงเบ‚เบญเบ‡เบกเบฑเบ™เป€เบญเบ‡เบฅเบปเป‰เบกเป€เบซเบฅเบงเป‚เบ”เบเบกเบตเบ‚เปเป‰เบเบปเบเป€เบงเบฑเป‰เบ™, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบเบฒเบ™เป€เบฎเบฑเบ”เบ—เบธเบฅเบฐเบเปเบฒเบชเบฒเบกเบฒเบ”เป€เบ›เบตเบ”เบขเบนเปˆเป€เบ›เบฑเบ™เป€เบงเบฅเบฒเบ”เบปเบ™เบ™เบฒเบ™. เปเบฅเบฐเบ™เบตเป‰เบกเบตเบœเบปเบ™เบเบฐเบ—เบปเบšเป‚เบ”เบเบเบปเบ‡เบ•เปเปˆเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ” PostgreSQL. PostgreSQL เบˆเบฐเบŠเป‰เบฒเบฅเบปเบ‡. เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบกเบฑเบ™เป€เบ›เบฑเบ™เบชเบดเปˆเบ‡เบชเปเบฒเบ„เบฑเบ™เบ—เบตเปˆเบˆเบฐเบ•เบดเบ”เบ•เบฒเบกเบฅเบนเบเบ„เป‰เบฒเบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเปƒเบซเป‰เบ—เบฑเบ™เป€เบงเบฅเบฒเปเบฅเบฐเบšเบฑเบ‡เบ„เบฑเบšเปƒเบซเป‰เบขเบธเบ”เป€เบŠเบปเบฒเบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบ‚เบญเบ‡เบžเบงเบเป€เบ‚เบปเบฒ. เปเบฅเบฐเบ—เปˆเบฒเบ™เบ•เป‰เบญเบ‡เบเบฒเบ™เป€เบžเบตเปˆเบกเบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบšเบ„เปเบฒเบฎเป‰เบญเบ‡เบชเบฐเบซเบกเบฑเบเบ‚เบญเบ‡เบ—เปˆเบฒเบ™เป€เบžเบทเปˆเบญเบšเปเปˆเปƒเบซเป‰เบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเป€เบเบตเบ”เบ‚เบทเป‰เบ™.

เบฅเบนเบเบ„เป‰เบฒเบ—เบตเปˆเบšเปเปˆเบ”เบตเบญเบทเปˆเบ™เป†เปเบกเปˆเบ™เบฅเปเบ–เป‰เบฒเบฅเบนเบเบ„เป‰เบฒ. เปเบ•เปˆเบžเบงเบเป€เบ‚เบปเบฒเบเบฒเบเป€เบ›เบฑเบ™เบ„เบปเบ™เบšเปเปˆเบ”เบตเบเป‰เบญเบ™เบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™. เบชเปเบฒเบฅเบฑเบšเบ•เบปเบงเบขเปˆเบฒเบ‡, เบเบฒเบ™เป€เบฎเบฑเบ”เบ—เบธเบฅเบฐเบเปเบฒเบ—เบตเปˆเบšเปเปˆเบกเบตเบ›เบฐเป‚เบซเบเบ”เบ‡เปˆเบฒเบเป†: เบกเบฑเบ™เบชเบฒเบกเบฒเบ”เป€เบ›เบตเบ”เบเบฒเบ™เป€เบฎเบฑเบ”เบ—เบธเบฅเบฐเบเปเบฒ, เบฅเบฑเบญเบเบšเบฒเบ‡เบชเบฒเบ, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบšเบฒเบ‡เบšเปˆเบญเบ™เปƒเบ™เบฅเบฐเบซเบฑเบ”เบกเบฑเบ™เบˆเบฐเบฅเบปเป‰เบกเป€เบซเบฅเบง, เป€เบฎเบฑเบ”เปƒเบซเป‰เบ—เบธเบฅเบฐเบเปเบฒเบซเป‰เบญเบ. เบฅเบนเบเบ„เป‰เบฒเบญเบตเบเบ„เบปเบ™เบซเบ™เบถเปˆเบ‡เบˆเบฐเบกเบฒเปเบฅเบฐเบฎเป‰เบญเบ‡เบ‚เปเบ‚เปเป‰เบกเบนเบ™เบ”เบฝเบงเบเบฑเบ™, เปเบ•เปˆเบฅเบฒเบงเบˆเบฐเบžเบปเบšเบเบฑเบšเบเบฒเบ™เบฅเบฑเบญเบ, เป€เบžเบฒเบฐเบงเปˆเบฒเบเบฒเบ™เป€เบฎเบฑเบ”เบ—เบธเบฅเบฐเบเปเบฒเบ—เบตเปˆเบซเป‰เบญเบเบ™เบฑเป‰เบ™เบกเบต locks เบขเบนเปˆเบšเบฒเบ‡เปเบ–เบงเบ—เบตเปˆเบ•เป‰เบญเบ‡เบเบฒเบ™. เปเบฅเบฐเบเบฒเบ™เป€เบฎเบฑเบ”เบ—เบธเบฅเบฐเบเปเบฒเบ—เบตเบชเบญเบ‡เบˆเบฐเบ„เป‰เบฒเบ‡เบขเบนเปˆเบฅเปเบ–เป‰เบฒเบเบฒเบ™เป€เบฎเบฑเบ”เบ—เบธเบฅเบฐเบเปเบฒเบ—เปเบฒเบญเบดเบ”เบชเปเบฒเป€เบฅเบฑเบ”เบซเบผเบทเบšเบฑเบ‡เบ„เบฑเบšเปƒเบซเป‰เบ›เบดเบ”เบกเบฑเบ™เป‚เบ”เบเบœเบนเป‰เบšเปเบฅเบดเบซเบฒเบ™. เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบเบฒเบ™เป€เบฎเบฑเบ”เบ—เบธเบฅเบฐเบเปเบฒเบ—เบตเปˆเบเบฑเบ‡เบ„เป‰เบฒเบ‡เบชเบฒเบกเบฒเบ”เบชเบฐเบชเบปเบกเปเบฅเบฐเบ•เบทเปˆเบกเบ‚เปเป‰เบกเบนเบ™เปƒเบชเปˆเบ‚เบญเบšเป€เบ‚เบ”เบˆเปเบฒเบเบฑเบ”เบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™. เปเบฅเบฐเป€เบกเบทเปˆเบญเบ‚เบญเบšเป€เบ‚เบ”เบˆเปเบฒเบเบฑเบ”เป€เบ•เบฑเบก, เปเบญเบฑเบšเบžเบฅเบดเป€เบ„เบŠเบฑเบ™เบšเปเปˆเบชเบฒเบกเบฒเบ”เป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบšเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เป„เบ”เป‰. เบ™เบตเป‰เปเบกเปˆเบ™เบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เบชเบธเบเป€เบชเบตเบ™เบชเปเบฒเบฅเบฑเบšเป‚เบ„เบ‡เบเบฒเบ™เปเบฅเป‰เบง. เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบฅเบนเบเบ„เป‰เบฒเบ—เบตเปˆเบšเปเปˆเบ”เบตเบ•เป‰เบญเบ‡เป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเปเบฅเบฐเบ•เบญเบšเบชเบฐเบซเบ™เบญเบ‡เปƒเบซเป‰เบ—เบฑเบ™เป€เบงเบฅเบฒ.

เบžเบทเป‰เบ™เบ–เบฒเบ™เบ‚เบญเบ‡เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก PostgreSQL. Alexey Lesovsky

เบ•เบปเบงเบขเปˆเบฒเบ‡เบญเบทเปˆเบ™เบ‚เบญเบ‡เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก. เปเบฅเบฐเบกเบต dashboard เบ—เบตเปˆเป€เบซเบกเบฒเบฐเบชเบปเบกเบขเบนเปˆเบ—เบตเปˆเบ™เบตเป‰. เบกเบตเบ‚เปเป‰เบกเบนเบ™เบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบ‚เป‰เบฒเบ‡เป€เบ—เบดเบ‡. เบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆ DB - 8 เบŠเบดเป‰เบ™. เปเบฅเบฐเบกเบฑเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”. เบžเบงเบโ€‹เป€เบฎเบปเบฒโ€‹เบšเปเปˆโ€‹เบกเบตโ€‹เบ‚เปเป‰โ€‹เบกเบนเบ™โ€‹เบเปˆเบฝเบงโ€‹เบเบฑเบšโ€‹เบเบฒเบ™โ€‹เบ—เบตเปˆโ€‹เบฅเบนเบโ€‹เบ„เป‰เบฒโ€‹เบกเบตโ€‹เบเบฒเบ™โ€‹เป€เบ„เบทเปˆเบญเบ™โ€‹เป„เบซเบงโ€‹, เบ—เบตเปˆโ€‹เบฅเบนเบโ€‹เบ„เป‰เบฒโ€‹เบžเบฝเบ‡โ€‹เปเบ•เปˆโ€‹เบขเบนเปˆโ€‹เบšเปเปˆโ€‹เบกเบตโ€‹เบเบฒเบ™โ€‹เป€เบฎเบฑเบ”โ€‹เบซเบเบฑเบ‡โ€‹. เบšเปเปˆเบกเบตเบ‚เปเป‰เบกเบนเบ™เบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เป€เบฎเบฑเบ”เบ—เบธเบฅเบฐเบเปเบฒเบ—เบตเปˆเบเบฑเบ‡เบ„เป‰เบฒเบ‡เปเบฅเบฐเบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบ—เบตเปˆเบเบฑเบ‡เบ„เป‰เบฒเบ‡, i.e. เบ™เบตเป‰เปเบกเปˆเบ™เบ•เบปเบงเป€เบฅเบเบ—เบตเปˆเบชเบฐเปเบ”เบ‡เบˆเปเบฒเบ™เบงเบ™เบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเปเบฅเบฐเบ™เบฑเป‰เบ™เปเบกเปˆเบ™. เปเบฅเบฐเบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เป€เบ”เบปเบฒเบชเปเบฒเบฅเบฑเบšเบ•เบปเบงเบ—เปˆเบฒเบ™เป€เบญเบ‡.
เบžเบทเป‰เบ™เบ–เบฒเบ™เบ‚เบญเบ‡เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก PostgreSQL. Alexey Lesovsky
เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เป€เบžเบทเปˆเบญเป€เบžเบตเปˆเบกเบ‚เปเป‰เบกเบนเบ™เบ™เบตเป‰เป€เบ‚เบปเป‰เบฒเปƒเบ™เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก, เบ—เปˆเบฒเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เป„เบ”เป‰เป€เบ‚เบปเป‰เบฒเบซเบฒเบฅเบฐเบšเบปเบš pg_stat_activity view. เบ–เป‰เบฒเบ—เปˆเบฒเบ™เปƒเบŠเป‰เป€เบงเบฅเบฒเบซเบผเบฒเบเปƒเบ™ PostgreSQL, เบ™เบตเป‰เปเบกเปˆเบ™เบ—เบฑเบ”เบชเบฐเบ™เบฐเบ—เบตเปˆเบ”เบตเบ—เบตเปˆเบ„เบงเบ™เบˆเบฐเป€เบ›เบฑเบ™เป€เบžเบทเปˆเบญเบ™เบ‚เบญเบ‡เบ—เปˆเบฒเบ™, เป€เบžเบฒเบฐเบงเปˆเบฒเบกเบฑเบ™เบชเบฐเปเบ”เบ‡เปƒเบซเป‰เป€เบซเบฑเบ™เป€เบ–เบดเบ‡เบเบดเบ”เบˆเบฐเบเปเบฒเปƒเบ™เบ›เบฐเบˆเบธเบšเบฑเบ™เปƒเบ™ PostgreSQL, i.e. เบชเบดเปˆเบ‡เบ—เบตเปˆเป€เบเบตเบ”เบ‚เบถเป‰เบ™เปƒเบ™เบกเบฑเบ™. เบชเปเบฒเบฅเบฑเบšเปเบ•เปˆเบฅเบฐเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบกเบตเป€เบชเบฑเป‰เบ™เปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบเบ—เบตเปˆเบชเบฐเปเบ”เบ‡เบ‚เปเป‰เบกเบนเบ™เบเปˆเบฝเบงเบเบฑเบšเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบ™เบตเป‰: เบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบ—เบตเปˆเป‚เบฎเบ”เปเบกเปˆเบ™เป€เบฎเบฑเบ”, เบžเบฒเบเปƒเบ•เป‰เบœเบนเป‰เปƒเบŠเป‰เปƒเบ”, เบžเบฒเบเปƒเบ•เป‰เบŠเบทเปˆเปƒเบ”, เป€เบกเบทเปˆเบญเบ—เบธเบฅเบฐเบเปเบฒเป„เบ”เป‰เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™, เบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเปƒเบ”เบเปเบฒเบฅเบฑเบ‡เบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™, เบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเปƒเบ”เบ–เบทเบเบ›เบฐเบ•เบดเบšเบฑเบ”. เปเบฅเบฐ, เบ•เบฒเบกเบ™เบฑเป‰เบ™, เบžเบงเบเป€เบฎเบปเบฒเบชเบฒเบกเบฒเบ”เบ›เบฐเป€เบกเบตเบ™เบชเบฐเบ–เบฒเบ™เบฐเบ‚เบญเบ‡เบฅเบนเบเบ„เป‰เบฒเป‚เบ”เบเปƒเบŠเป‰เบžเบฒเบเบชเบฐเบซเบ™เบฒเบกเบชเบฐเบ–เบดเบ•เบด. เป€เบงเบปเป‰เบฒเบ‚เป‰เบญเบ™เบ‚เป‰เบฒเบ‡, เบžเบงเบเป€เบฎเบปเบฒเบชเบฒเบกเบฒเบ”เบˆเบฑเบ”เบเบธเปˆเบกเป‚เบ”เบเบžเบฒเบเบชเบฐเบซเบ™เบฒเบกเบ™เบตเป‰เปเบฅเบฐเป„เบ”เป‰เบฎเบฑเบšเบชเบฐเบ–เบดเบ•เบดเป€เบซเบผเบปเปˆเบฒเบ™เบฑเป‰เบ™เบ—เบตเปˆเบกเบตเบขเบนเปˆเปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เปเบฅเบฐเบˆเปเบฒเบ™เบงเบ™เบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบ—เบตเปˆเบกเบตเบชเบฐเบ–เบดเบ•เบดเบ™เบตเป‰เบขเบนเปˆเปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™. เปเบฅเบฐเบžเบงเบเป€เบฎเบปเบฒเบชเบฒเบกเบฒเบ”เบชเบปเปˆเบ‡เบ•เบปเบงเป€เบฅเบเบ—เบตเปˆเป„เบ”เป‰เบฎเบฑเบšเปเบฅเป‰เบงเป„เบ›เบซเบฒเบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเปเบฅเบฐเปเบ•เป‰เบกเบเบฒเบŸเป‚เบ”เบเบญเบตเบ‡เปƒเบชเปˆเบžเบงเบเบกเบฑเบ™.
เบกเบฑเบ™เบเบฑเบ‡เบกเบตเบ„เบงเบฒเบกเบชเปเบฒเบ„เบฑเบ™เบ—เบตเปˆเบˆเบฐเบ›เบฐเป€เบกเบตเบ™เป„เบฅเบเบฐเป€เบงเบฅเบฒเบ‚เบญเบ‡เบเบฒเบ™เป€เบฎเบฑเบ”เบ—เบธเบฅเบฐเบเปเบฒ. เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเป„เบ”เป‰เป€เบงเบปเป‰เบฒเปเบฅเป‰เบงเบงเปˆเบฒเบกเบฑเบ™เป€เบ›เบฑเบ™เบชเบดเปˆเบ‡เบชเปเบฒเบ„เบฑเบ™เบ—เบตเปˆเบˆเบฐเบ›เบฐเป€เบกเบตเบ™เป„เบฅเบเบฐเป€เบงเบฅเบฒเบ‚เบญเบ‡เบเบฒเบ™เบชเบนเบ™เบเบฒเบเบฒเบ”, เปเบ•เปˆเบเบฒเบ™เป€เบฎเบฑเบ”เบ—เบธเบฅเบฐเบเปเบฒเบ–เบทเบเบ›เบฐเป€เบกเบตเบ™เปƒเบ™เบ—เบฒเบ‡เบ”เบฝเบงเบเบฑเบ™. เบกเบตเบŠเปˆเบญเบ‡เบ‚เปเป‰เบกเบนเบ™ xact_start เปเบฅเบฐ query_start. เบžเบงเบเป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒ, เป€เบงเบปเป‰เบฒเบ‚เป‰เบญเบ™เบ‚เป‰เบฒเบ‡, เบชเบฐเปเบ”เบ‡เป€เบงเบฅเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ‚เบญเบ‡เบ—เบธเบฅเบฐเบเปเบฒเปเบฅเบฐเป€เบงเบฅเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ‚เบญเบ‡เบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เป. เบžเบงเบเป€เบฎเบปเบฒเปƒเบŠเป‰เบŸเบฑเบ‡เบŠเบฑเบ™ now() เป€เบŠเบดเปˆเบ‡เบชเบฐเปเบ”เบ‡เป€เบงเบฅเบฒเบ›เบฐเบˆเบธเบšเบฑเบ™, เปเบฅเบฐเบซเบฑเบเบฅเบปเบšเบเบฒเบ™เป€เบฎเบฑเบ”เบ—เบธเบฅเบฐเบเปเบฒ เปเบฅเบฐเป€เบงเบฅเบฒเบฎเป‰เบญเบ‡เบ‚เป. เปเบฅเบฐเบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบฎเบฑเบšเป„เบฅเบเบฐเป€เบงเบฅเบฒเบ‚เบญเบ‡เบเบฒเบ™เป€เบฎเบฑเบ”เบ—เบธเบฅเบฐเบเปเบฒ, เป„เบฅเบเบฐเป€เบงเบฅเบฒเบ‚เบญเบ‡เบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เป.

เบ–เป‰เบฒเบžเบงเบเป€เบฎเบปเบฒเป€เบซเบฑเบ™เบเบฒเบ™เป€เบฎเบฑเบ”เบ—เบธเบฅเบฐเบเปเบฒเบเบฒเบง, เบžเบงเบเป€เบฎเบปเบฒเบ„เบงเบ™เบˆเบฐเป€เบฎเบฑเบ”เบชเปเบฒเป€เบฅเบฑเบ”เบกเบฑเบ™เปเบฅเป‰เบง. เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เป‚เบซเบผเบ” OLTP, เบเบฒเบ™เป€เบฎเบฑเบ”เบ—เบธเบฅเบฐเบเปเบฒเบเบฒเบงเปเบกเปˆเบ™เปเบฅเป‰เบงเบซเบผเบฒเบเบเปˆเบงเบฒ 1-2-3 เบ™เบฒเบ—เบต. เบชเปเบฒเบฅเบฑเบšเบงเบฝเบเบ‡เบฒเบ™ OLAP, เบเบฒเบ™เป€เบฎเบฑเบ”เบ—เบธเบฅเบฐเบเปเบฒเบ—เบตเปˆเบเบฒเบงเบ™เบฒเบ™เปเบกเปˆเบ™เป€เบ›เบฑเบ™เป€เบฅเบทเปˆเบญเบ‡เบ›เบปเบเบเบฐเบ•เบด, เปเบ•เปˆเบ–เป‰เบฒเบžเบงเบเป€เบ‚เบปเบฒเปƒเบŠเป‰เป€เบงเบฅเบฒเบซเบผเบฒเบเบเบงเปˆเบฒเบชเบญเบ‡เบŠเบปเปˆเบงเป‚เบกเบ‡เป€เบžเบทเปˆเบญเปƒเบซเป‰เบชเปเบฒเป€เบฅเบฑเบ”, เบ™เบตเป‰เบเปเปˆเป€เบ›เบฑเบ™เบชเบฑเบ™เบเบฒเบ™เบงเปˆเบฒเบžเบงเบเป€เบฎเบปเบฒเบกเบตเบ„เบงเบฒเบกเบšเปเปˆเบชเบฐเบšเบฒเบเบขเบนเปˆเบšเปˆเบญเบ™เปƒเบ”เบšเปˆเบญเบ™เบซเบ™เบถเปˆเบ‡.

เบžเบทเป‰เบ™เบ–เบฒเบ™เบ‚เบญเบ‡เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก PostgreSQL. Alexey Lesovsky
เป€เบกเบทเปˆเบญเบฅเบนเบเบ„เป‰เบฒเป„เบ”เป‰เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบเบฑเบšเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™, เบžเบงเบเป€เบ‚เบปเบฒเป€เบฅเบตเปˆเบกเป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบšเบ‚เปเป‰เบกเบนเบ™เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ. เบžเบงเบเป€เบ‚เบปเบฒเป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡เบ•เบฒเบ•เบฐเบฅเบฒเบ‡, เบžเบงเบเป€เบ‚เบปเบฒเป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡เบ”เบฑเบ”เบชเบฐเบ™เบตเป€เบžเบทเปˆเบญเป€เบญเบปเบฒเบ‚เปเป‰เบกเบนเบ™เบˆเบฒเบเบ•เบฒเบ•เบฐเบฅเบฒเบ‡. เปเบฅเบฐเบกเบฑเบ™เป€เบ›เบฑเบ™เบชเบดเปˆเบ‡เบชเปเบฒเบ„เบฑเบ™เบ—เบตเปˆเบˆเบฐเบ›เบฐเป€เบกเบตเบ™เบงเบดเบ—เบตเบ—เบตเปˆเบฅเบนเบเบ„เป‰เบฒเบžเบปเบงเบžเบฑเบ™เบเบฑเบšเบ‚เปเป‰เบกเบนเบ™เบ™เบตเป‰.

เบ™เบตเป‰เปเบกเปˆเบ™เบชเบดเปˆเบ‡เบˆเปเบฒเป€เบ›เบฑเบ™เป€เบžเบทเปˆเบญเบ›เบฐเป€เบกเบตเบ™เบงเบฝเบเบ‡เบฒเบ™เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเปเบฅเบฐเป€เบ‚เบปเป‰เบฒเปƒเบˆเบ›เบฐเบกเบฒเบ™เบงเปˆเบฒเบ•เบฒเบ•เบฐเบฅเบฒเบ‡เปƒเบ”เปเบกเปˆเบ™ "เบฎเป‰เบญเบ™เบ—เบตเปˆเบชเบธเบ”" เบชเปเบฒเบฅเบฑเบšเบžเบงเบเป€เบฎเบปเบฒ. เบ•เบปเบงเบขเปˆเบฒเบ‡, เบ™เบตเป‰เปเบกเปˆเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เปƒเบ™เบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบ•เป‰เบญเบ‡เบเบฒเบ™เบงเบฒเบ‡เบ•เบฒเบ•เบฐเบฅเบฒเบ‡ "เบฎเป‰เบญเบ™" เปƒเบ™เบšเบฒเบ‡เบ›เบฐเป€เบžเบ”เบ‚เบญเบ‡เบเบฒเบ™เป€เบเบฑเบšเบฎเบฑเบเบชเบฒ SSD เป„เบง. เบ•เบปเบงเบขเปˆเบฒเบ‡, เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เป€เบเบฑเบšเบกเป‰เบฝเบ™เบšเบฒเบ‡เบญเบฑเบ™เบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบšเปเปˆเป„เบ”เป‰เปƒเบŠเป‰เป€เบ›เบฑเบ™เป€เบงเบฅเบฒเบ”เบปเบ™เบ™เบฒเบ™เบชเบฒเบกเบฒเบ”เบ–เบทเบเบเป‰เบฒเบเป„เบ›เบšเปˆเบญเบ™เป€เบเบฑเบšเบกเป‰เบฝเบ™ "เป€เบขเบฑเบ™" เบšเบฒเบ‡เบ›เบฐเป€เบžเบ”, เป„เบ›เบซเบฒ SATA drives เปเบฅเบฐเปƒเบซเป‰เบžเบงเบเป€เบ‚เบปเบฒเบญเบฒเป„เบชเบขเบนเปˆเบ—เบตเปˆเบ™เบฑเป‰เบ™, เบžเบงเบเบกเบฑเบ™เบˆเบฐเบ–เบทเบเป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡เบ•เบฒเบกเบ„เบงเบฒเบกเบ•เป‰เบญเบ‡เบเบฒเบ™.

เบ™เบตเป‰เบเบฑเบ‡เป€เบ›เบฑเบ™เบ›เบฐเป‚เบซเบเบ”เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบเบงเบ”เบชเบญเบšเบ„เบงเบฒเบกเบœเบดเบ”เบ›เบปเบเบเบฐเบ•เบดเบซเบผเบฑเบ‡เบˆเบฒเบเบเบฒเบ™เป€เบ›เบตเบ”เบ•เบปเบงเปเบฅเบฐเบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เปƒเบ”เป†. เปƒเบซเป‰เป€เบงเบปเป‰เบฒเบงเปˆเบฒเป‚เบ„เบ‡เบเบฒเบ™เป„เบ”เป‰เบ›เปˆเบญเบเบญเบญเบเบกเบฒเป€เบกเบทเปˆเบญเบ„เบธเบ™เบ™เบฐเบชเบปเบกเบšเบฑเบ”เปƒเบซเบกเปˆเบšเบฒเบ‡เบขเปˆเบฒเบ‡. เบ•เบปเบงเบขเปˆเบฒเบ‡, เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เป€เบžเบตเปˆเบกเบซเบ™เป‰เบฒเบ—เบตเปˆเปƒเบซเบกเปˆเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบšเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™. เปเบฅเบฐเบ–เป‰เบฒเบžเบงเบเป€เบฎเบปเบฒเบงเบฒเบ‡เปเบœเบ™เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบ•เบฒเบ•เบฐเบฅเบฒเบ‡, เบžเบงเบเป€เบฎเบปเบฒเบชเบฒเบกเบฒเบ”เบเบงเบ”เบžเบปเบšเบ„เบงเบฒเบกเบœเบดเบ”เบ›เบปเบเบเบฐเบ•เบดเปƒเบ™เบเบฒเบŸเป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เป„เบ”เป‰เบขเปˆเบฒเบ‡เบ‡เปˆเบฒเบเบ”เบฒเบ. เบ•เบปเบงเบขเปˆเบฒเบ‡, เบญเบฑเบšเป€เบ”เบ”เบเบฒเบ™เบฅเบฐเป€เบšเบตเบ” เบซเบผเบทเบฅเบถเบšเบเบฒเบ™เบฅเบฐเป€เบšเบตเบ”เบญเบญเบ. เบกเบฑเบ™เบˆเบฐเป€เบซเบฑเบ™เป„เบ”เป‰เบซเบผเบฒเบ.

เบ—เปˆเบฒเบ™เบเบฑเบ‡เบชเบฒเบกเบฒเบ”เบเบงเบ”เบžเบปเบšเบ„เบงเบฒเบกเบœเบดเบ”เบ›เบปเบเบเบฐเบ•เบดเปƒเบ™เบชเบฐเบ–เบดเบ•เบด "เบฅเบญเบเบ•เบปเบง". เบกเบฑเบ™เบซเบกเบฒเบเบ„เบงเบฒเบกเบงเปˆเบฒเปเบ™เบงเปƒเบ”? PostgreSQL เบกเบตเบ•เบปเบงเบเปเบฒเบ™เบปเบ”เบเบฒเบ™เบชเบญเบšเบ–เบฒเบกเบ—เบตเปˆเป€เบ‚เบฑเป‰เบกเปเบ‚เบ‡เปเบฅเบฐเบ”เบตเบซเบผเบฒเบ. เปเบฅเบฐเบ™เบฑเบเบžเบฑเบ”เบ—เบฐเบ™เบฒเป„เบ”เป‰เบญเบธเบ—เบดเบ”เป€เบงเบฅเบฒเบซเบผเบฒเบเปƒเบ™เบเบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒเบ‚เบญเบ‡เบกเบฑเบ™. เบฅเบฒเบงเป€เบฎเบฑเบ”เบงเบฝเบเปเบ™เบงเปƒเบ”? เป€เบžเบทเปˆเบญเป€เบฎเบฑเบ”เปƒเบซเป‰เปเบœเบ™เบเบฒเบ™เบ—เบตเปˆเบ”เบต, PostgreSQL เป€เบเบฑเบšเบเปเบฒเบชเบฐเบ–เบดเบ•เบดเบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เปเบˆเบเบขเบฒเบเบ‚เปเป‰เบกเบนเบ™เปƒเบ™เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เปƒเบ™เบŠเปˆเบงเบ‡เป€เบงเบฅเบฒเบ—เบตเปˆเปเบ™เปˆเบ™เบญเบ™เปเบฅเบฐเบกเบตเบ„เบงเบฒเบกเบ–เบตเปˆเบ—เบตเปˆเปเบ™เปˆเบ™เบญเบ™. เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เปเบกเปˆเบ™เบ„เปˆเบฒเบ—เบปเปˆเบงเป„เบ›เบ—เบตเปˆเบชเบธเบ”: เบˆเปเบฒเบ™เบงเบ™เบกเบนเบ™เบ„เปˆเบฒเบ—เบตเปˆเป€เบ›เบฑเบ™เป€เบญเบเบฐเบฅเบฑเบ, เบ‚เปเป‰เบกเบนเบ™เบเปˆเบฝเบงเบเบฑเบš NULL เปƒเบ™เบ•เบฒเบ•เบฐเบฅเบฒเบ‡, เบ‚เปเป‰เบกเบนเบ™เบˆเปเบฒเบ™เบงเบ™เบซเบฅเบฒเบ.

เบญเบตเบ‡เบ•เบฒเบกเบชเบฐเบ–เบดเบ•เบดเป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰, เบœเบนเป‰เบงเบฒเบ‡เปเบœเบ™เบเปเปˆเบชเป‰เบฒเบ‡เบ„เปเบฒเบ–เบฒเบกเบˆเปเบฒเบ™เบงเบ™เบซเบ™เบถเปˆเบ‡, เป€เบฅเบทเบญเบเบญเบฑเบ™เบ—เบตเปˆเบ”เบตเบ—เบตเปˆเบชเบธเบ”, เปเบฅเบฐเบ™เปเบฒเปƒเบŠเป‰เปเบœเบ™เบเบฒเบ™เบชเบญเบšเบ–เบฒเบกเบ™เบตเป‰เป€เบžเบทเปˆเบญเบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบชเบญเบšเบ–เบฒเบกเบ•เบปเบงเบกเบฑเบ™เป€เบญเบ‡เปเบฅเบฐเบชเบปเปˆเบ‡เบ„เบทเบ™เบ‚เปเป‰เบกเบนเบ™.

เปเบฅเบฐเบกเบฑเบ™เป€เบเบตเบ”เบ‚เบทเป‰เบ™เบงเปˆเบฒเบชเบฐเบ–เบดเบ•เบด "เป€เบฅเบทเปˆเบญเบ™". เบ‚เปเป‰เบกเบนเบ™เบ„เบธเบ™เบ™เบฐเบžเบฒเบšเปเบฅเบฐเบ›เบฐเบฅเบดเบกเบฒเบ™เบกเบตเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบšเบฒเบ‡เบขเปˆเบฒเบ‡เปƒเบ™เบ•เบฒเบ•เบฐเบฅเบฒเบ‡, เปเบ•เปˆเบชเบฐเบ–เบดเบ•เบดเบšเปเปˆเป„เบ”เป‰เป€เบเบฑเบšเบเปเบฒ. เปเบฅเบฐเปเบœเบ™เบเบฒเบ™เบ—เบตเปˆเบชเป‰เบฒเบ‡เบ‚เบถเป‰เบ™เบญเบฒเบ”เบˆเบฐเบšเปเปˆเบ”เบตเบ—เบตเปˆเบชเบธเบ”. เปเบฅเบฐเบ–เป‰เบฒเปเบœเบ™เบเบฒเบ™เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเบเบฒเบเป€เบ›เบฑเบ™เบชเบดเปˆเบ‡เบ—เบตเปˆเบ”เบตเบ—เบตเปˆเบชเบธเบ”เป‚เบ”เบเบญเบตเบ‡เปƒเบชเปˆเบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบ—เบตเปˆเป€เบเบฑเบšเบเปเบฒ, เบญเบตเบ‡เบ•เบฒเบกเบ•เบฒเบ•เบฐเบฅเบฒเบ‡, เบžเบงเบเป€เบฎเบปเบฒเบˆเบฐเบชเบฒเบกเบฒเบ”เป€เบซเบฑเบ™เบ„เบงเบฒเบกเบœเบดเบ”เบ›เบปเบเบเบฐเบ•เบดเป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰. เบ•เบปเบงเบขเปˆเบฒเบ‡, เบšเบฒเบ‡เบšเปˆเบญเบ™เบ‚เปเป‰เบกเบนเบ™เบกเบตเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบ—เบตเปˆเบกเบตเบ„เบธเบ™เบ™เบฐเบžเบฒเบšเปเบฅเบฐเปเบ—เบ™เบ—เบตเปˆเบˆเบฐเบ”เบฑเบ”เบชเบฐเบ™เบต, เบฅเปเบฒเบ”เบฑเบšเบœเปˆเบฒเบ™เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เป€เบฅเบตเปˆเบกเบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰, i.e. เบ–เป‰เบฒเบเบฒเบ™เบชเบญเบšเบ–เบฒเบกเบ•เป‰เบญเบ‡เบเบฒเบ™เบชเบปเปˆเบ‡เบ„เบทเบ™เบžเบฝเบ‡เปเบ•เปˆ 100 เปเบ–เบง (เบกเบตเบ‚เบญเบšเป€เบ‚เบ”เบˆเปเบฒเบเบฑเบ” 100), เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบเบฒเบ™เบ„เบปเป‰เบ™เบซเบฒเบ—เบตเปˆเบชเบปเบกเบšเบนเบ™เบˆเบฐเบ–เบทเบเบ›เบฐเบ•เบดเบšเบฑเบ”เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบชเบญเบšเบ–เบฒเบกเบ™เบตเป‰. เปเบฅเบฐเบ™เบตเป‰เบชเบฐเป€เบซเบกเบตเบกเบตเบœเบปเบ™เบเบฐเบ—เบปเบšเบ—เบตเปˆเบšเปเปˆเบ”เบตเบซเบผเบฒเบเบ•เปเปˆเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”.

เปเบฅเบฐเบžเบงเบเป€เบฎเบปเบฒเบชเบฒเบกเบฒเบ”เป€เบซเบฑเบ™เบ™เบตเป‰เปƒเบ™เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก. เปเบฅเบฐเปเบฅเป‰เบงเป€เบšเบดเปˆเบ‡เบ„เปเบฒเบ–เบฒเบกเบ™เบตเป‰, เบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เบญเบฐเบ—เบดเบšเบฒเบเบชเปเบฒเบฅเบฑเบšเบกเบฑเบ™, เป€เบเบฑเบšเบเปเบฒเบชเบฐเบ–เบดเบ•เบด, เบชเป‰เบฒเบ‡เบ”เบฑเบ”เบชเบฐเบ™เบตเป€เบžเบตเปˆเบกเป€เบ•เบตเบกเปƒเบซเบกเปˆ. เปเบฅเบฐเบ•เบญเบšเบชเบฐเบซเบ™เบญเบ‡เบ•เปเปˆเบšเบฑเบ™เบซเบฒเบ™เบตเป‰เปเบฅเป‰เบง. เบ™เบฑเป‰เบ™เปเบกเปˆเบ™เป€เบซเบ”เบœเบปเบ™เบ—เบตเปˆเบงเปˆเบฒเบกเบฑเบ™เบชเปเบฒเบ„เบฑเบ™.

เบžเบทเป‰เบ™เบ–เบฒเบ™เบ‚เบญเบ‡เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก PostgreSQL. Alexey Lesovsky

เบ•เบปเบงเบขเปˆเบฒเบ‡เบญเบทเปˆเบ™เบ‚เบญเบ‡เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก. เบ‚เป‰เบฒโ€‹เบžเบฐโ€‹เป€เบˆเบปเป‰เบฒโ€‹เบ„เบดเบ”โ€‹เบงเปˆเบฒโ€‹เบ›เบฐโ€‹เบŠเบฒโ€‹เบŠเบปเบ™โ€‹เบˆเปเบฒโ€‹เบ™เบงเบ™โ€‹เบซเบผเบฒเบโ€‹เป„เบ”เป‰โ€‹เบฎเบฑเบšโ€‹เบฎเบนเป‰โ€‹เบ‚เบญเบ‡โ€‹เป€เบ‚เบปเบฒโ€‹เป€เบžเบฒเบฐโ€‹เบงเปˆเบฒโ€‹เบฅเบฒเบงโ€‹เป€เบ›เบฑเบ™โ€‹เบ—เบตเปˆโ€‹เบ™เบดโ€‹เบเบปเบกโ€‹เบซเบผเบฒเบโ€‹. เปƒเบœเปƒเบŠเป‰เบกเบฑเบ™เบขเบนเปˆเปƒเบ™เป‚เบ„เบ‡เบเบฒเบ™เบ‚เบญเบ‡เบžเบงเบเป€เบ‚เบปเบฒ Prometheus? เปƒเบœเปƒเบŠเป‰เบœเบฐเบฅเบดเบ”เบ•เบฐเบžเบฑเบ™เบ™เบตเป‰เบฎเปˆเบงเบกเบเบฑเบš Prometheus? เบ„เบงเบฒเบกเบˆเบดเบ‡เปเบฅเป‰เบงเปเบกเปˆเบ™เบงเปˆเบฒเปƒเบ™เบ„เบฑเบ‡เป€เบเบฑเบšเบกเป‰เบฝเบ™เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™เบ‚เบญเบ‡เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบ™เบตเป‰เบกเบต dashboard เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบš PostgreSQL - postgres_exporter Prometheus. เปเบ•เปˆเบกเบตเบฅเบฒเบเบฅเบฐเบญเบฝเบ”เบ—เบตเปˆเบšเปเปˆเบ”เบตเบญเบฑเบ™เบซเบ™เบถเปˆเบ‡.

เบžเบทเป‰เบ™เบ–เบฒเบ™เบ‚เบญเบ‡เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก PostgreSQL. Alexey Lesovsky

เบกเบตเบซเบผเบฒเบเป€เบชเบฑเป‰เบ™เบชเบฐเปเบ”เบ‡. เปเบฅเบฐ bytes เบ–เบทเบเบฅเบฐเบšเบธเบงเปˆเบฒเป€เบ›เบฑเบ™เบ„เบงเบฒเบกเบชเบฒเบกเบฑเบเบ„เบต, i.e. เบกเบต 5 เบเบฃเบฒเบŸ. เป€เบซเบผเบปเปˆเบฒโ€‹เบ™เบตเป‰โ€‹เปเบกเปˆเบ™โ€‹เบเบฒเบ™โ€‹เปƒเบชเปˆโ€‹เบ‚เปเป‰โ€‹เบกเบนเบ™โ€‹, เบ‚เปเป‰โ€‹เบกเบนเบ™โ€‹เบ›เบฑเบšโ€‹เบ›เบธเบ‡โ€‹, เบฅเบถเบšโ€‹เบ‚เปเป‰โ€‹เบกเบนเบ™โ€‹, เป€เบญเบปเบฒโ€‹เบ‚เปเป‰โ€‹เบกเบนเบ™โ€‹เปเบฅเบฐโ€‹เบเบฑเบšโ€‹เบ„เบทเบ™โ€‹เบ‚เปเป‰โ€‹เบกเบนเบ™โ€‹. เบเบฒเบ™เบงเบฑเบ”เปเบ—เบเบซเบปเบงเปœเปˆเบงเบเปเบกเปˆเบ™ bytes. เปเบ•เปˆเบชเบดเปˆเบ‡เบ—เบตเปˆเป€เบ›เบฑเบ™เบชเบฐเบ–เบดเบ•เบดเปƒเบ™ PostgreSQL เบชเบปเปˆเบ‡เบ„เบทเบ™เบ‚เปเป‰เบกเบนเบ™เปƒเบ™ tuple (เปเบ–เบง). เปเบฅเบฐ, เบ•เบฒเบกเบ„เบงเบฒเบกเป€เบซเบกเบฒเบฐเบชเบปเบก, เบเบฃเบฒเบŸเป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เปเบกเปˆเบ™เบงเบดเบ—เบตเบ—เบตเปˆเบ”เบตเบ—เบตเปˆเบˆเบฐเบ›เบฐเป€เบกเบตเบ™เบ„เปˆเบฒเบงเบฝเบเบ‚เบญเบ‡เป€เบˆเบปเป‰เบฒเบซเบผเบฒเบเป€เบ—เบทเปˆเบญ, เบชเบดเบšเป€เบ—เบทเปˆเบญ, เป€เบžเบฒเบฐเบงเปˆเบฒ tuple เบšเปเปˆเปเบกเปˆเบ™ byte, tuple เปเบกเปˆเบ™เบชเบฒเบ, เบกเบฑเบ™เปเบกเปˆเบ™เบซเบผเบฒเบ bytes เปเบฅเบฐเบกเบฑเบ™เบกเบตเบ„เบงเบฒเบกเบเบฒเบงเบ•เบปเบงเปเบ›เบชเบฐเป€เบซเบกเบต. เบ™เบฑเป‰เบ™เปเบกเปˆเบ™, เบเบฒเบ™เบ„เบดเบ”เป„เบฅเปˆเบ›เบฐเบฅเบดเบกเบฒเบ™เบงเบฝเบเปƒเบ™ bytes เป‚เบ”เบเปƒเบŠเป‰ tuples เปเบกเปˆเบ™เบงเบฝเบเบ‡เบฒเบ™เบ—เบตเปˆเบšเปเปˆเป€เบ›เบฑเบ™เบˆเบดเบ‡เบซเบผเบทเบกเบตเบ„เบงเบฒเบกเบซเบเบธเป‰เบ‡เบเบฒเบเบซเบผเบฒเบ. เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เป€เบกเบทเปˆเบญเบ—เปˆเบฒเบ™เปƒเบŠเป‰ dashboard เบซเบผเบทเบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเปƒเบ™เบ•เบปเบง, เบกเบฑเบ™เป€เบ›เบฑเบ™เบชเบดเปˆเบ‡เบชเปเบฒเบ„เบฑเบ™เบ—เบตเปˆเบˆเบฐเป€เบ‚เบปเป‰เบฒเปƒเบˆเบงเปˆเบฒเบกเบฑเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบขเปˆเบฒเบ‡เบ–เบทเบเบ•เป‰เบญเบ‡เปเบฅเบฐเบชเบปเปˆเบ‡เบ„เบทเบ™เบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเบ–เบทเบเบ›เบฐเป€เบกเบตเบ™เบขเปˆเบฒเบ‡เบ–เบทเบเบ•เป‰เบญเบ‡.

เบžเบทเป‰เบ™เบ–เบฒเบ™เบ‚เบญเบ‡เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก PostgreSQL. Alexey Lesovsky

เบงเบดเบ—เบตเบเบฒเบ™เป€เบญเบปเบฒเบชเบฐเบ–เบดเบ•เบดเปƒเบ™เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰? เบชเปเบฒเบฅเบฑเบšเบˆเบธเบ”เบ›เบฐเบชเบปเบ‡เบ™เบตเป‰, PostgreSQL เบกเบตเบ—เบฑเบ”เบชเบฐเบ™เบฐเบ‚เบญเบ‡เบ„เบญเบšเบ„เบปเบงเบ—เบตเปˆเปเบ™เปˆเบ™เบญเบ™. เปเบฅเบฐเบ—เบฑเบ”เบชเบฐเบ™เบฐเบ•เบปเป‰เบ™เบ•เปเปเบกเปˆเบ™ pg_stat_user_tables. User_tables - เบ™เบตเป‰เบซเบกเบฒเบเบ„เบงเบฒเบกเบงเปˆเบฒเบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบ—เบตเปˆเบชเป‰เบฒเบ‡เบ‚เบถเป‰เบ™เปƒเบ™เบ™เบฒเบกเบ‚เบญเบ‡เบœเบนเป‰เปƒเบŠเป‰. เปƒเบ™เบ—เบฒเบ‡เบเบปเบ‡เบเบฑเบ™เบ‚เป‰เบฒเบก, เบกเบตเบ—เบฑเบ”เบชเบฐเบ™เบฐเบ‚เบญเบ‡เบฅเบฐเบšเบปเบšเบ—เบตเปˆเบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เป‚เบ”เบ PostgreSQL เบ•เบปเบงเบ‚เบญเบ‡เบกเบฑเบ™เป€เบญเบ‡. เปเบฅเบฐเบกเบตเบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบชเบฐเบซเบผเบธเบš Alltables, เป€เบŠเบดเปˆเบ‡เบฅเบงเบกเบกเบตเบ—เบฑเบ‡เบฅเบฐเบšเบปเบšเปเบฅเบฐเบœเบนเป‰เปƒเบŠเป‰. เป€เบˆเบปเป‰เบฒเบชเบฒเบกเบฒเบ”เป€เบฅเบตเปˆเบกเบˆเบฒเบเบญเบฑเบ™เปƒเบ”เบญเบฑเบ™เปœเบถเปˆเบ‡เบ—เบตเปˆเป€เบˆเบปเป‰เบฒเบกเบฑเบเบ—เบตเปˆเบชเบธเบ”.

เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบŠเปˆเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เบ‚เป‰เบฒเบ‡เป€เบ—เบดเบ‡เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบ„เบฒเบ”เบ„เบฐเป€เบ™เบˆเปเบฒเบ™เบงเบ™เบ‚เบญเบ‡เบเบฒเบ™เปƒเบชเปˆ, เบเบฒเบ™เบ›เบฑเบšเบ›เบธเบ‡เปเบฅเบฐเบเบฒเบ™เบฅเบถเบš. เบ•เบปเบงเบขเปˆเบฒเบ‡เบ‚เบญเบ‡ dashboard เบ—เบตเปˆเบ‚เป‰เบญเบเปƒเบŠเป‰เปƒเบŠเป‰เบžเบฒเบเบชเบฐเบซเบ™เบฒเบกเป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เป€เบžเบทเปˆเบญเบ›เบฐเป€เบกเบตเบ™เบ„เบธเบ™เบฅเบฑเบเบชเบฐเบ™เบฐเบ‚เบญเบ‡เบงเบฝเบ. เป€เบžเบฒเบฐเบชเบฐเบ™เบฑเป‰เบ™, เบžเบงเบเป€เบฎเบปเบฒเบเบฑเบ‡เบชเบฒเบกเบฒเบ”เบชเป‰เบฒเบ‡เปƒเบซเป‰เป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒ. เปเบ•เปˆเบกเบฑเบ™เบ„เบธเป‰เบกเบ„เปˆเบฒเบ—เบตเปˆเบˆเบฐเบˆเบทเปˆเป„เบงเป‰เบงเปˆเบฒเป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เปเบกเปˆเบ™ tuples, เบšเปเปˆเปเบกเปˆเบ™ bytes, เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบžเบงเบเป€เบฎเบปเบฒเบšเปเปˆเบชเบฒเบกเบฒเบ”เป€เบฎเบฑเบ”เบกเบฑเบ™เป„เบ”เป‰เปƒเบ™ bytes.

เบญเบตเบ‡เบ•เบฒเบกเบ‚เปเป‰เบกเบนเบ™เบ™เบตเป‰, เบžเบงเบเป€เบฎเบปเบฒเบชเบฒเบกเบฒเบ”เบชเป‰เบฒเบ‡เบญเบฑเบ™เบ—เบตเปˆเป€เบญเบตเป‰เบ™เบงเปˆเบฒเบ•เบฒเบ•เบฐเบฅเบฒเบ‡ TopN. เบ•เบปเบงเบขเปˆเบฒเบ‡, Top-5, Top-10. เปเบฅเบฐเบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบ•เบดเบ”เบ•เบฒเบกเบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบฎเป‰เบญเบ™เป€เบซเบผเบปเปˆเบฒเบ™เบฑเป‰เบ™เบ—เบตเปˆเบ–เบทเบเบ™เปเบฒเบกเบฒเปƒเบŠเป‰เปƒเบซเบกเปˆเบซเบผเบฒเบเบเปˆเบงเบฒเบ„เบปเบ™เบญเบทเปˆเบ™. เบ•เบปเบงเบขเปˆเบฒเบ‡, 5 เบ•เบฒเบ•เบฐเบฅเบฒเบ‡ "เบฎเป‰เบญเบ™" เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เปเบŠเบ. เปเบฅเบฐเบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบ•เบฒเบ•เบฐเบฅเบฒเบ‡ TopN เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เบžเบงเบเป€เบฎเบปเบฒเบ›เบฐเป€เบกเบตเบ™เบงเบฝเบเบ‡เบฒเบ™เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเปเบฅเบฐเบชเบฒเบกเบฒเบ”เบ›เบฐเป€เบกเบตเบ™เบเบฒเบ™เบฅเบฐเป€เบšเบตเบ”เบ‚เบญเบ‡เบงเบฝเบเบซเบผเบฑเบ‡เบˆเบฒเบเบเบฒเบ™เบ›เปˆเบญเบ, เบเบฒเบ™เบ›เบฑเบšเบ›เบธเบ‡, เปเบฅเบฐเบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰.

เบกเบฑเบ™เบเบฑเบ‡เบกเบตเบ„เบงเบฒเบกเบชเปเบฒเบ„เบฑเบ™เบ—เบตเปˆเบˆเบฐเบ›เบฐเป€เบกเบตเบ™เบ‚เบฐเบซเบ™เบฒเบ”เบ‚เบญเบ‡เบ•เบฒเบ•เบฐเบฅเบฒเบ‡, เป€เบžเบฒเบฐเบงเปˆเบฒเบšเบฒเบ‡เบ„เบฑเป‰เบ‡เบ™เบฑเบเบžเบฑเบ”เบ—เบฐเบ™เบฒเป„เบ”เป‰เป€เบ›เบตเบ”เบ•เบปเบงเบฅเบฑเบเบชเบฐเบ™เบฐเปƒเบซเบกเปˆ, เปเบฅเบฐเบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบฅเบตเปˆเบกเบกเบตเบญเบฒเบเบฒเบ™เบšเบงเบกเปƒเบ™เบ‚เบฐเบซเบ™เบฒเบ”เปƒเบซเบเปˆ, เป€เบžเบฒเบฐเบงเปˆเบฒเบžเบงเบเป€เบ‚เบปเบฒเบ•เบฑเบ”เบชเบดเบ™เปƒเบˆเป€เบžเบตเปˆเบกเบˆเปเบฒเบ™เบงเบ™เบ‚เปเป‰เบกเบนเบ™เป€เบžเบตเปˆเบกเป€เบ•เบตเบก, เปเบ•เปˆเบšเปเปˆเป„เบ”เป‰เบ„เบฒเบ”เบ„เบฐเป€เบ™เบงเปˆเบฒเบกเบฑเบ™เบˆเบฐเป€เบ›เบฑเบ™เปเบ™เบงเปƒเบ”. เบœเบปเบ™เบเบฐเบ—เบปเบšเบ•เปเปˆเบ‚เบฐเบซเบ™เบฒเบ”เบ‚เบญเบ‡เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™. เบเปเบฅเบฐเบ™เบตเบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเบเบฑเบ‡เป€เบฎเบฑเบ”เปƒเบซเป‰เบžเบงเบเป€เบฎเบปเบฒเปเบ›เบเปƒเบˆ.

เบžเบทเป‰เบ™เบ–เบฒเบ™เบ‚เบญเบ‡เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก PostgreSQL. Alexey Lesovsky

เปเบฅเบฐเปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™เป€เบ›เบฑเบ™เบ„เปเบฒเบ–เบฒเบกเบ‚เบฐเบซเบ™เบฒเบ”เบ™เป‰เบญเบเบชเปเบฒเบฅเบฑเบšเบ—เปˆเบฒเบ™. เบ„เปเบฒเบ–เบฒเบกเปƒเบ”เบ—เบตเปˆเป€เบเบตเบ”เบ‚เบทเป‰เบ™เปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆเบ—เปˆเบฒเบ™เบชเบฑเบ‡เป€เบเบ”เป€เบซเบฑเบ™เบเบฒเบ™เป‚เบซเบผเบ”เบขเบนเปˆเปƒเบ™เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบ‚เบญเบ‡เบ—เปˆเบฒเบ™? เบ„เบณเบ–เบฒเบกเบ•เปเปˆเป„เบ›เป€เบˆเบปเป‰เบฒเบกเบตเบซเบเบฑเบ‡?

เบžเบทเป‰เบ™เบ–เบฒเบ™เบ‚เบญเบ‡เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก PostgreSQL. Alexey Lesovsky

เปเบ•เปˆโ€‹เปƒเบ™โ€‹เบ„เบงเบฒเบกโ€‹เป€เบ›เบฑเบ™โ€‹เบˆเบดเบ‡โ€‹เบ„เปเบฒโ€‹เบ–เบฒเบกโ€‹เบ—เบตเปˆโ€‹เป€เบเบตเบ”โ€‹เบ‚เบถเป‰เบ™โ€‹เบ”เบฑเปˆเบ‡โ€‹เบ•เปเปˆโ€‹เป„เบ›โ€‹เบ™เบตเป‰โ€‹. เบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเบเบฒเบ™เป‚เบซเบผเบ”เปเบกเปˆเบ™เบซเบเบฑเบ‡? เบ™เบฑเป‰เบ™เปเบกเปˆเบ™, เบกเบฑเบ™เบšเปเปˆเบซเบ™เป‰เบฒเบชเบปเบ™เปƒเบˆเบ—เบตเปˆเบˆเบฐเป€เบšเบดเปˆเบ‡เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบ—เบตเปˆเป€เบเบตเบ”เบˆเบฒเบเบเบฒเบ™เป‚เบซเบผเบ”. เบกเบฑเบ™เป€เบ›เบฑเบ™เบ—เบตเปˆเบŠเบฑเบ”เป€เบˆเบ™เบงเปˆเบฒเบ–เป‰เบฒเป‚เบฎเบ”เบกเบตเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เปเบกเปˆเบ™เปเบฅเปˆเบ™เบขเบนเปˆเบ—เบตเปˆเบ™เบฑเป‰เบ™เปเบฅเบฐเบกเบฑเบ™เป€เบ›เบฑเบ™เบ—เบตเปˆเบŠเบฑเบ”เป€เบˆเบ™เบงเปˆเบฒเบžเบฝเบ‡เปเบ•เปˆเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบˆเบฐเบ–เบทเบเบเปเบฒเบˆเบฑเบ”เบขเบนเปˆเบ—เบตเปˆเบ™เบฑเป‰เบ™. เบ–เป‰เบฒเบžเบงเบเป€เบฎเบปเบฒเป€เบ›เบตเบ” Top, เบžเบงเบเป€เบฎเบปเบฒเบˆเบฐเป€เบซเบฑเบ™เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆเบ‚เบญเบ‡เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เปƒเบ™ PostgreSQL เบ—เบตเปˆเบเปเบฒเบฅเบฑเบ‡เป€เบฎเบฑเบ”เบšเบฒเบ‡เบชเบดเปˆเบ‡เบšเบฒเบ‡เบขเปˆเบฒเบ‡. เบกเบฑเบ™เบˆเบฐเบšเปเปˆเบˆเบฐเปเบˆเป‰เบ‡เบˆเบฒเบเบ—เบฒเบ‡เป€เบ—เบดเบ‡เบงเปˆเบฒเบžเบงเบเป€เบ‚เบปเบฒเป€เบฎเบฑเบ”เบซเบเบฑเบ‡เบขเบนเปˆ.

เบžเบทเป‰เบ™เบ–เบฒเบ™เบ‚เบญเบ‡เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก PostgreSQL. Alexey Lesovsky

เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบ—เปˆเบฒเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบŠเบญเบเบซเบฒเบ„เปเบฒเบ–เบฒเบกเป€เบซเบผเบปเปˆเบฒเบ™เบฑเป‰เบ™เบ—เบตเปˆเป€เบฎเบฑเบ”เปƒเบซเป‰เบเบฒเบ™เป‚เบซเบผเบ”เบชเบนเบ‡เบชเบธเบ”, เป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเบงเปˆเบฒเบเบฒเบ™เบชเบญเบšเบ–เบฒเบก tuning, เบ•เบฒเบกเบเบปเบ”เบฅเบฐเบšเบฝเบš, เปƒเบซเป‰เบเปเบฒเป„เบฅเบซเบผเบฒเบเบเปˆเบงเบฒเบเบฒเบ™เบ›เบฑเบšเปเบ•เปˆเบ‡ PostgreSQL เบซเบผเบทเบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบฅเบฐเบšเบปเบšเบ›เบฐเบ•เบดเบšเบฑเบ”เบ‡เบฒเบ™, เบซเบผเบทเปเบกเป‰เบเบฐเบ—เบฑเป‰เบ‡เบเบฒเบ™เบ›เบฑเบšเปเบ•เปˆเบ‡เบฎเบฒเบ”เปเบง. เบญเบตเบ‡เบ•เบฒเบกเบเบฒเบ™เบ„เบฒเบ”เบ„เบฐเป€เบ™เบ‚เบญเบ‡เบ‚เป‰เบญเบ, เบ™เบตเป‰เปเบกเปˆเบ™เบ›เบฐเบกเบฒเบ™ 80-85-90%. เปเบฅเบฐเบ™เบตเป‰เปเบกเปˆเบ™เป€เบฎเบฑเบ”เป„เบ”เป‰เป„เบงเบ‚เบถเป‰เบ™เบซเบผเบฒเบ. เบกเบฑเบ™เป„เบงเบเบงเปˆเบฒเบ—เบตเปˆเบˆเบฐเปเบเป‰เป„เบ‚เบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเบเปˆเบงเบฒเบเบฒเบ™เปเบเป‰เป„เบ‚เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒ, เบเปเบฒเบ™เบปเบ”เป€เบงเบฅเบฒเบเบฒเบ™เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เปƒเบซเบกเปˆ, เป‚เบ”เบเบชเบฐเป€เบžเบฒเบฐเบ–เป‰เบฒเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบšเปเปˆเบชเบฒเบกเบฒเบ”เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เปƒเบซเบกเปˆ, เบซเบผเบทเป€เบžเบตเปˆเบกเบฎเบฒเบ”เปเบง. เบกเบฑเบ™เบ‡เปˆเบฒเบเบเบงเปˆเบฒเบ—เบตเปˆเบˆเบฐเบ‚เบฝเบ™เบ„เปเบฒเบ–เบฒเบกเบขเบนเปˆเบšเปˆเบญเบ™เปƒเบ”เบšเปˆเบญเบ™เปœเบถเปˆเบ‡ เบซเบผเบทเป€เบžเบตเปˆเบกเบ”เบฑเบ”เบชเบฐเบ™เบตเป€เบžเบทเปˆเบญเปƒเบซเป‰เป„เบ”เป‰เบœเบปเบ™เบ—เบตเปˆเบ”เบตเบเบงเปˆเบฒเบˆเบฒเบเบเบฒเบ™เบชเบญเบšเบ–เบฒเบกเบ™เบตเป‰.

เบžเบทเป‰เบ™เบ–เบฒเบ™เบ‚เบญเบ‡เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก PostgreSQL. Alexey Lesovsky
เบ•เบฒเบกโ€‹เบ™เบฑเป‰เบ™โ€‹เปเบฅเป‰เบง, เบกเบฑเบ™โ€‹เป€เบ›เบฑเบ™โ€‹เบชเบดเปˆเบ‡โ€‹เบˆเบณโ€‹เป€เบ›เบฑเบ™โ€‹เบ—เบตเปˆโ€‹เบˆเบฐโ€‹เบ•เบดเบ”โ€‹เบ•เบฒเบกโ€‹เบ„เบณโ€‹เบฎเป‰เบญเบ‡โ€‹เบ‚เปโ€‹เปเบฅเบฐโ€‹เบ„เบงเบฒเบกโ€‹เบžเบฝเบ‡เบžเปโ€‹เบ‚เบญเบ‡โ€‹เบกเบฑเบ™. เปƒเบซเป‰เป€เบญเบปเบฒเบ•เบปเบงเบขเปˆเบฒเบ‡เบญเบทเปˆเบ™เบ‚เบญเบ‡เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก. เปเบฅเบฐเปƒเบ™เบ—เบตเปˆเบ™เบตเป‰, เป€เบŠเบฑเปˆเบ™เบ”เบฝเบงเบเบฑเบ™, เป€เบšเบดเปˆเบ‡เบ„เบทเบงเปˆเบฒเบกเบตเบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบ—เบตเปˆเบ”เบตเป€เบฅเบตเบ”. เบกเบตเบ‚เปเป‰เบกเบนเบ™เบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เบˆเปเบฒเบฅเบญเบ‡, เบกเบตเบ‚เปเป‰เบกเบนเบ™เบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เบชเบปเปˆเบ‡เบœเปˆเบฒเบ™, เบเบฒเบ™เบ‚เบฑเบ”เบ‚เบงเบฒเบ‡, เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™. เบ—เบธเบเบขเปˆเบฒเบ‡เปเบกเปˆเบ™เบ”เบต, เปเบ•เปˆเบšเปเปˆเบกเบตเบ‚เปเป‰เบกเบนเบ™เบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เป. เบกเบฑเบ™เบšเปเปˆเบŠเบฑเบ”เป€เบˆเบ™เบงเปˆเบฒเบ„เปเบฒเบ–เบฒเบกเปƒเบ”เบเปเบฒเบฅเบฑเบ‡เปเบฅเปˆเบ™เบขเบนเปˆเปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ, เป„เบฅเบเบฐเป€เบงเบฅเบฒเบ—เบตเปˆเบžเบงเบเป€เบ‚เบปเบฒเบเปเบฒเบฅเบฑเบ‡เปเบฅเปˆเบ™, เบˆเปเบฒเบ™เบงเบ™เบเบฒเบ™เบชเบญเบšเบ–เบฒเบกเป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เปเบกเปˆเบ™เป€เบ—เบปเปˆเบฒเปƒเบ”. เบžเบงเบเป€เบฎเบปเบฒเบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบกเบตเบ‚เปเป‰เบกเบนเบ™เบ™เบตเป‰เบขเบนเปˆเปƒเบ™เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเบชเบฐเป€เบซเบกเบต.

เบžเบทเป‰เบ™เบ–เบฒเบ™เบ‚เบญเบ‡เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก PostgreSQL. Alexey Lesovsky

เปเบฅเบฐเป€เบžเบทเปˆเบญเปƒเบซเป‰เป„เบ”เป‰เบฎเบฑเบšเบ‚เปเป‰เบกเบนเบ™เบ™เบตเป‰เบžเบงเบเป€เบฎเบปเบฒเบชเบฒเบกเบฒเบ”เบ™เปเบฒเปƒเบŠเป‰เป‚เบกเบ”เบนเบ™ pg_stat_statements. เบญเบตเบ‡เปƒเบชเปˆเบกเบฑเบ™, เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบชเป‰เบฒเบ‡เบเบฒเบŸเบ—เบตเปˆเบซเบฅเบฒเบเบซเบฅเบฒเบ. เบ•เบปเบงเบขเปˆเบฒเบ‡, เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เป„เบ”เป‰เบฎเบฑเบšเบ‚เปเป‰เบกเบนเบ™เบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เบชเบญเบšเบ–เบฒเบกเบ—เบตเปˆเบžเบปเบšเป€เบฅเบทเป‰เบญเบเบ—เบตเปˆเบชเบธเบ”, เบ™เบฑเป‰เบ™เปเบกเปˆเบ™, เบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เบชเบญเบšเบ–เบฒเบกเบ—เบตเปˆเบ–เบทเบเบ›เบฐเบ•เบดเบšเบฑเบ”เบซเบผเบฒเบเบ—เบตเปˆเบชเบธเบ”. เปเบกเปˆเบ™เปเบฅเป‰เบง, เบซเบผเบฑเบ‡เบˆเบฒเบเบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰, เบกเบฑเบ™เบเบฑเบ‡เป€เบ›เบฑเบ™เบ›เบฐเป‚เบซเบเบ”เบซเบผเบฒเบเบ—เบตเปˆเบˆเบฐเป€เบšเบดเปˆเบ‡เบกเบฑเบ™เปเบฅเบฐเป€เบ‚เบปเป‰เบฒเปƒเบˆเบงเปˆเบฒเบกเบตเบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเป€เบžเบตเปˆเบกเบ‚เบถเป‰เบ™.

เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบ•เบดเบ”เบ•เบฒเบกเบเบฒเบ™เบชเบญเบšเบ–เบฒเบกเบ—เบตเปˆเบเบฒเบงเบ—เบตเปˆเบชเบธเบ”, เบ™เบฑเป‰เบ™เปเบกเปˆเบ™, เบ„เปเบฒเบ–เบฒเบกเป€เบซเบผเบปเปˆเบฒเบ™เบฑเป‰เบ™เปƒเบŠเป‰เป€เบงเบฅเบฒเบ”เบปเบ™เบ—เบตเปˆเบชเบธเบ”เป€เบžเบทเปˆเบญเปƒเบซเป‰เบชเปเบฒเป€เบฅเบฑเบ”. เบžเบงเบเป€เบ‚เบปเบฒเปเบฅเปˆเบ™เบขเบนเปˆเปƒเบ™เป‚เบ›เป€เบŠเบ”เป€เบŠเบต, เบžเบงเบเป€เบ‚เบปเบฒเบšเปเบฅเบดเป‚เบžเบ I/O. เบžเบงเบเป€เบฎเบปเบฒเบเบฑเบ‡เบชเบฒเบกเบฒเบ”เบ›เบฐเป€เบกเบตเบ™เบญเบฑเบ™เบ™เบตเป‰เป‚เบ”เบเปƒเบŠเป‰ fields total_time, mean_time, blk_write_time เปเบฅเบฐ blk_read_time.

เบžเบงเบเป€เบฎเบปเบฒเบชเบฒเบกเบฒเบ”เบ›เบฐเป€เบกเบตเบ™เปเบฅเบฐเบ•เบดเบ”เบ•เบฒเบกเบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเบ—เบตเปˆเบซเบ™เบฑเบเบซเบ™เปˆเบงเบ‡เบ—เบตเปˆเบชเบธเบ”เปƒเบ™เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™, เบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเบญเปˆเบฒเบ™เบˆเบฒเบเปเบœเปˆเบ™, เบ—เบตเปˆเป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบšเบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒ, เบซเบผเบท, เบเบปเบ‡เบเบฑเบ™เบ‚เป‰เบฒเบก, เบชเป‰เบฒเบ‡เบšเบฒเบ‡เบ›เบฐเป€เบžเบ”เบ‚เบญเบ‡เบเบฒเบ™เป‚เบซเบผเบ”.

เบžเบงเบเป€เบฎเบปเบฒเบชเบฒเบกเบฒเบ”เบ›เบฐเป€เบกเบตเบ™เบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเบ—เบตเปˆเป€เบญเบทเป‰เบญเบญเปเบฒเบ™เบงเบเบ—เบตเปˆเบชเบธเบ”. เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เปเบกเปˆเบ™เบ„เปเบฒเบ–เบฒเบกเบ—เบตเปˆเบชเบปเปˆเบ‡เบ„เบทเบ™เบˆเปเบฒเบ™เบงเบ™เปเบ–เบงเบˆเปเบฒเบ™เบงเบ™เบซเบฅเบฒเบ. เบ•เบปเบงเบขเปˆเบฒเบ‡, เบ™เบตเป‰เบญเบฒเบ”เบˆเบฐเป€เบ›เบฑเบ™เบšเบฒเบ‡เบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเบ—เบตเปˆเบžเบงเบเป€เบ‚เบปเบฒเบฅเบทเบกเบเปเบฒเบ™เบปเบ”เบ‚เบญเบšเป€เบ‚เบ”เบˆเปเบฒเบเบฑเบ”. เปเบฅเบฐเบกเบฑเบ™เบžเบฝเบ‡เปเบ•เปˆเบชเบปเปˆเบ‡เบ„เบทเบ™เป€เบ™เบทเป‰เบญเปƒเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”เบ‚เบญเบ‡เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบซเบผเบทเบ„เปเบฒเบ–เบฒเบกเปƒเบ™เบ—เบปเปˆเบงเบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบชเบญเบšเบ–เบฒเบก.

เปเบฅเบฐเบ—เปˆเบฒเบ™เบเบฑเบ‡เบชเบฒเบกเบฒเบ”เบ•เบดเบ”เบ•เบฒเบกเบเบฒเบ™เบชเบญเบšเบ–เบฒเบกเบ—เบตเปˆเปƒเบŠเป‰เป„เบŸเบฅเปŒเบŠเบปเปˆเบงเบ„เบฒเบงเบซเบผเบทเบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบŠเบปเปˆเบงเบ„เบฒเบง.

เบžเบทเป‰เบ™เบ–เบฒเบ™เบ‚เบญเบ‡เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก PostgreSQL. Alexey Lesovsky
เปเบฅเบฐเบžเบงเบเป€เบฎเบปเบฒเบเบฑเบ‡เบกเบตเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบžเบทเป‰เบ™เบ–เบฒเบ™. เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบžเบทเป‰เบ™เบ–เบฒเบ™เปเบกเปˆเบ™เบˆเบธเบ”เบเบงเบ”เบเบฒเบ•เบปเป‰เบ™เบ•เปเบซเบผเบทเบžเบงเบเป€เบ‚เบปเบฒเบเบฑเบ‡เป€เบญเบตเป‰เบ™เบงเปˆเบฒเบ”เปˆเบฒเบ™, เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เปเบกเปˆเบ™ autovacuum เปเบฅเบฐ replication.

เบžเบทเป‰เบ™เบ–เบฒเบ™เบ‚เบญเบ‡เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก PostgreSQL. Alexey Lesovsky

เบ•เบปเบงเบขเปˆเบฒเบ‡เบญเบทเปˆเบ™เบ‚เบญเบ‡เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก. เบกเบตเปเบ–เบš Maintenance เบขเบนเปˆเป€เบšเบทเป‰เบญเบ‡เบŠเป‰เบฒเบ, เป„เบ›เบซเบฒเบกเบฑเบ™เปเบฅเบฐเบซเบงเบฑเบ‡เบงเปˆเบฒเบˆเบฐเป€เบซเบฑเบ™เบšเบฒเบ‡เบชเบดเปˆเบ‡เบšเบฒเบ‡เบขเปˆเบฒเบ‡เบ—เบตเปˆเป€เบ›เบฑเบ™เบ›เบฐเป‚เบซเบเบ”. เปเบ•เปˆเปƒเบ™เบ—เบตเปˆเบ™เบตเป‰เปเบกเปˆเบ™เบžเบฝเบ‡เปเบ•เปˆเป€เบงเบฅเบฒเบ‚เบญเบ‡เบเบฒเบ™เบ”เปเบฒเป€เบ™เบตเบ™เบ‡เบฒเบ™เบชเบนเบ™เบเบฒเบเบฒเบ”เปเบฅเบฐเบเบฒเบ™เป€เบเบฑเบšเบเปเบฒเบชเบฐเบ–เบดเบ•เบด, เบšเปเปˆเบกเบตเบซเบเบฑเบ‡เบซเบผเบฒเบ. เบ™เบตเป‰เปเบกเปˆเบ™เบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเบšเปเปˆเบ”เบตเบซเบผเบฒเบ, เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบžเบงเบเป€เบฎเบปเบฒเบชเบฐเป€เบซเบกเบตเบ•เป‰เบญเบ‡เบกเบตเบ‚เปเป‰เบกเบนเบ™เบเปˆเบฝเบงเบเบฑเบšเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบžเบทเป‰เบ™เบ–เบฒเบ™เบ‚เบญเบ‡เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบขเบนเปˆเปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเปเบฅเบฐเบšเปเปˆเบงเปˆเบฒเบˆเบฐเบกเบตเบšเบฑเบ™เบซเบฒเปƒเบ”เป†เบˆเบฒเบเบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบ‚เบญเบ‡เบžเบงเบเป€เบ‚เบปเบฒ.

เบžเบทเป‰เบ™เบ–เบฒเบ™เบ‚เบญเบ‡เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก PostgreSQL. Alexey Lesovsky

เป€เบกเบทเปˆเบญเบžเบงเบเป€เบฎเบปเบฒเป€เบšเบดเปˆเบ‡เบˆเบธเบ”เบเบงเบ”เบเบฒ, เบžเบงเบเป€เบฎเบปเบฒเบ„เบงเบ™เบˆเบทเปˆเป„เบงเป‰เบงเปˆเบฒเบˆเบธเบ”เบเบงเบ”เบเบฒเบˆเบฐเบฅเป‰เบฒเบ‡เบซเบ™เป‰เบฒเป€เบ›เบทเป‰เบญเบ™เบˆเบฒเบเบžเบทเป‰เบ™เบ—เบตเปˆเบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒเบ—เบตเปˆเบ–เบทเบเปเบšเปˆเบ‡เบ›เบฑเบ™เป„เบ›เบซเบฒเปเบœเปˆเบ™, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบชเป‰เบฒเบ‡เบˆเบธเบ”เบเบงเบ”เบเบฒ. เปเบฅเบฐเบˆเบธเบ”เบเบงเบ”เบเบฒเบ™เบตเป‰เบชเบฒเบกเบฒเบ”เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เป€เบ›เบฑเบ™เบชเบฐเบ–เบฒเบ™เบ—เบตเปˆเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบŸเบทเป‰เบ™เบ•เบปเบงเบ–เป‰เบฒเบซเบฒเบเบงเปˆเบฒ PostgreSQL เป„เบ”เป‰เบ–เบทเบเบขเบธเบ”เป€เบŠเบปเบฒเบขเปˆเบฒเบ‡เบเบฐเบ—เบฑเบ™เบซเบฑเบ™เปƒเบ™เป€เบซเบ”เบชเบธเบเป€เบชเบตเบ™.

เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เป€เบžเบทเปˆเบญเบฅเป‰เบฒเบ‡เบซเบ™เป‰เบฒ "เป€เบ›เบทเป‰เบญเบ™" เบ—เบฑเบ‡เบซเบกเบปเบ”เปƒเบชเปˆเปเบœเปˆเบ™, เบ—เปˆเบฒเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบ‚เบฝเบ™เบˆเปเบฒเบ™เบงเบ™เบ—เบตเปˆเปเบ™เปˆเบ™เบญเบ™. เปเบฅเบฐ, เบ•เบฒเบกเบเบปเบ”เบฅเบฐเบšเบฝเบš, เปƒเบ™เบฅเบฐเบšเบปเบšเบ—เบตเปˆเบกเบตเบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒเบ‚เบฐเบซเบ™เบฒเบ”เปƒเบซเบเปˆ, เบ™เบตเป‰เปเบกเปˆเบ™เบซเบผเบฒเบ. เปเบฅเบฐเบ–เป‰เบฒเบžเบงเบเป€เบฎเบปเบฒเป€เบฎเบฑเบ”เบˆเบธเบ”เบเบงเบ”เบเบฒเป€เบฅเบทเป‰เบญเบเป†เปƒเบ™เป„เบฅเบเบฐเป€เบงเบฅเบฒเบชเบฑเป‰เบ™เป†, เบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบšเบ‚เบญเบ‡เปเบœเปˆเบ™เบˆเบฐเบซเบผเบธเบ”เบฅเบปเบ‡เบขเปˆเบฒเบ‡เบซเบผเบงเบ‡เบซเบผเบฒเบ. เปเบฅเบฐเบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเบ‚เบญเบ‡เบฅเบนเบเบ„เป‰เบฒเบˆเบฐเบ—เบปเบ™เบ—เบธเบเบˆเบฒเบเบเบฒเบ™เบ‚เบฒเบ”เบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™. เบžเบงเบเป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒเบˆเบฐเปเบ‚เปˆเบ‡เบ‚เบฑเบ™เบชเปเบฒเบฅเบฑเบšเบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เปเบฅเบฐเบ‚เบฒเบ”เบœเบปเบ™เบœเบฐเบฅเบดเบ”.

เบ•เบฒเบกเบ™เบฑเป‰เบ™เปเบฅเป‰เบง, เป‚เบ”เบเบœเปˆเบฒเบ™ pg_stat_bgwriter เป‚เบ”เบเปƒเบŠเป‰เบžเบฒเบเบชเบฐเบซเบ™เบฒเบกเบ—เบตเปˆเบเปเบฒเบ™เบปเบ”เบžเบงเบเป€เบฎเบปเบฒเบชเบฒเบกเบฒเบ”เบ•เบดเบ”เบ•เบฒเบกเบˆเปเบฒเบ™เบงเบ™เบ‚เบญเบ‡เบˆเบธเบ”เบเบงเบ”เบเบฒเบ—เบตเปˆเป€เบเบตเบ”เบ‚เบถเป‰เบ™. เปเบฅเบฐเบ–เป‰เบฒเบžเบงเบเป€เบฎเบปเบฒเบกเบตเบˆเบธเบ”เบเบงเบ”เบเบฒเบซเบผเบฒเบเปƒเบ™เป„เบฅเบเบฐเป€เบงเบฅเบฒเบ—เบตเปˆเปเบ™เปˆเบ™เบญเบ™ (เปƒเบ™ 10-15-20 เบ™เบฒเบ—เบต, เปƒเบ™เป€เบ„เบดเปˆเบ‡เบŠเบปเปˆเบงเป‚เบกเบ‡), เบ•เบปเบงเบขเปˆเบฒเบ‡, 3-4-5, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™, เบ™เบตเป‰เบชเบฒเบกเบฒเบ”เป€เบ›เบฑเบ™เบšเบฑเบ™เบซเบฒ. เปเบฅเบฐเบ—เปˆเบฒเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบŠเบญเบเบซเบฒเบขเบนเปˆเปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™, เป€เบšเบดเปˆเบ‡เปƒเบ™เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒ, เบชเบดเปˆเบ‡เบ—เบตเปˆเป€เบฎเบฑเบ”เปƒเบซเป‰เป€เบเบตเบ”เบ„เบงเบฒเบกเบญเบธเบ”เบปเบกเบชเบปเบกเบšเบนเบ™เบ‚เบญเบ‡เบ”เปˆเบฒเบ™. เบšเบฒเบ‡เบ—เบตเบญเบฒเบ”เบกเบตเบเบฒเบ™เบšเบฑเบ™เบ—เบถเบเบญเบฑเบ™เปƒเบซเบเปˆเบญเบฑเบ™เปƒเบ”เบ™เบถเปˆเบ‡เป€เบเบตเบ”เบ‚เบถเป‰เบ™. เบžเบงเบโ€‹เป€เบฎเบปเบฒโ€‹เบชเบฒโ€‹เบกเบฒเบ”โ€‹เบ›เบฐโ€‹เป€เบกเบตเบ™โ€‹เบœเบปเบ™โ€‹เบงเบฝเบโ€‹เบ‡เบฒเบ™โ€‹เป„เบ”เป‰โ€‹เปเบฅเป‰เบง, เป€เบ™เบทเปˆเบญเบ‡โ€‹เบˆเบฒเบโ€‹เบงเปˆเบฒโ€‹เบžเบงเบโ€‹เป€เบฎเบปเบฒโ€‹เป„เบ”เป‰โ€‹เป€เบžเบตเปˆเบกโ€‹เบเบฒโ€‹เบŸเบดเบ workload เปเบฅเป‰เบง. เบžเบงเบเป€เบฎเบปเบฒเบชเบฒเบกเบฒเบ”เบ›เบฑเบšเบ•เบปเบงเบเปเบฒเบ™เบปเบ”เบเบฒเบ™เบเบงเบ”เบเบฒเป„เบ”เป‰เปเบฅเป‰เบงเปเบฅเบฐเปƒเบซเป‰เปเบ™เปˆเปƒเบˆเบงเปˆเบฒเบžเบงเบเบกเบฑเบ™เบšเปเปˆเบกเบตเบœเบปเบ™เบเบฐเบ—เบปเบšเบขเปˆเบฒเบ‡เบซเบผเบงเบ‡เบซเบผเบฒเบเบ•เปเปˆเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบชเบญเบšเบ–เบฒเบก.

เบžเบทเป‰เบ™เบ–เบฒเบ™เบ‚เบญเบ‡เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก PostgreSQL. Alexey Lesovsky

เบ‚เป‰เบญเบเบเบฑเบšเบกเบฒ autovacuum เบญเบตเบเป€เบ—เบทเปˆเบญ เปœเบถเปˆเบ‡, เป€เบžเบฒเบฐเบงเปˆเบฒเบกเบฑเบ™เป€เบ›เบฑเบ™เบชเบดเปˆเบ‡เบ”เบฑเปˆเบ‡เบเปˆเบฒเบง, เบ”เบฑเปˆเบ‡เบ—เบตเปˆเบ‚เป‰เบญเบเป€เบงเบปเป‰เบฒ, เบ—เบตเปˆเบชเบฒเบกเบฒเบ”เป€เบžเบตเปˆเบกเบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบšเบ—เบฑเบ‡ disk เปเบฅเบฐ query, เบชเบฐเบ™เบฑเป‰เบ™เบกเบฑเบ™เป€เบ›เบฑเบ™เบชเบดเปˆเบ‡เบชเปเบฒเบ„เบฑเบ™เบชเบฐ เป€เปเบต เป„เบ›เบ—เบตเปˆเบˆเบฐเบ›เบฐเป€เบกเบตเบ™เบ›เบฐเบฅเบดเบกเบฒเบ™เบ‚เบญเบ‡ autovacuum.

เบˆเปเบฒเบ™เบงเบ™เบžเบฐเบ™เบฑเบเบ‡เบฒเบ™ autovacuum เปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เปเบกเปˆเบ™เบˆเปเบฒเบเบฑเบ”. เป‚เบ”เบเบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™, เบกเบตเบชเบฒเบกเบ„เบปเบ™, เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบ–เป‰เบฒเบžเบงเบเป€เบฎเบปเบฒเบกเบตเบžเบฐเบ™เบฑเบเบ‡เบฒเบ™เบชเบฒเบกเบ„เบปเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบขเบนเปˆเปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™, เบ™เบตเป‰เบซเบกเบฒเบเบ„เบงเบฒเบกเบงเปˆเบฒ autovacuum เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเบšเปเปˆเป„เบ”เป‰เบ–เบทเบเบ•เบฑเป‰เบ‡เบ„เปˆเบฒ, เบžเบงเบเป€เบฎเบปเบฒเบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เป€เบžเบตเปˆเบกเบ‚เบญเบšเป€เบ‚เบ”เบˆเปเบฒเบเบฑเบ”, เบ›เบฑเบšเบ›เบธเบ‡เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒ autovacuum เปเบฅเบฐเป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒ.
เบกเบฑเบ™เป€เบ›เบฑเบ™เบชเบดเปˆเบ‡เบชเปเบฒเบ„เบฑเบ™เบ—เบตเปˆเบˆเบฐเบ›เบฐเป€เบกเบตเบ™เบงเปˆเบฒเบžเบงเบเป€เบฎเบปเบฒเบกเบตเบžเบฐเบ™เบฑเบเบ‡เบฒเบ™เบชเบนเบ™เบเบฒเบเบฒเบ”เปƒเบ”. เบšเปเปˆเบงเปˆเบฒเบกเบฑเบ™เบ–เบทเบเป€เบ›เบตเบ”เบ•เบปเบงเบˆเบฒเบเบœเบนเป‰เปƒเบŠเป‰, DBA เบกเบฒเปเบฅเบฐเป€เบ›เบตเบ”เบ•เบปเบงเบšเบฒเบ‡เบ›เบฐเป€เบžเบ”เบ‚เบญเบ‡เบชเบนเบ™เบเบฒเบเบฒเบ”เบ”เป‰เบงเบเบ•เบปเบ™เป€เบญเบ‡, เปเบฅเบฐเบ™เบตเป‰เบชเป‰เบฒเบ‡เบเบฒเบ™เป‚เบซเบผเบ”. เบžเบงเบเป€เบฎเบปเบฒเบกเบตเบšเบฑเบ™เบซเบฒเบšเบฒเบ‡เบขเปˆเบฒเบ‡. เบซเบผเบทเบ™เบตเป‰เปเบกเปˆเบ™เบˆเปเบฒเบ™เบงเบ™เบ‚เบญเบ‡เบชเบนเบ™เบเบฒเบเบฒเบ”เบ—เบตเปˆ unscrew เบงเบฝเบเบ‡เบฒเบ™เบ•เป‰เบฒเบ™เบเบฒเบ™. เบชเปเบฒเบฅเบฑเบšเบšเบฒเบ‡เบชเบฐเบšเบฑเบšเบ‚เบญเบ‡ PostgreSQL เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เปเบกเปˆเบ™เบชเบนเบ™เบเบฒเบเบฒเบ”เบซเบ™เบฑเบเบซเบผเบฒเบ. เปเบฅเบฐเบžเบงเบเป€เบ‚เบปเบฒเบชเบฒเบกเบฒเบ”เป€เบžเบตเปˆเบกเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เป„เบ”เป‰เบ‡เปˆเบฒเบเบเป‰เบญเบ™เบงเปˆเบฒเบžเบงเบเป€เบ‚เบปเบฒเบญเปˆเบฒเบ™เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบ—เบฑเบ‡เบซเบกเบปเบ”, เบชเบฐเปเบเบ™เบ•เบฑเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”เปƒเบ™เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบ™เบฑเป‰เบ™.

เปเบฅเบฐ, เปเบ™เปˆเบ™เบญเบ™, เป„เบฅเบเบฐเป€เบงเบฅเบฒเบ‚เบญเบ‡เบเบฒเบ™เบชเบนเบ™เบเบฒเบเบฒเบ”. เบ–เป‰เบฒเบžเบงเบเป€เบฎเบปเบฒเบกเบตเบชเบนเบ™เบเบฒเบเบฒเบ”เบ—เบตเปˆเปƒเบŠเป‰เป€เบงเบฅเบฒเบ”เบปเบ™เบ™เบฒเบ™เบ—เบตเปˆเป€เบฎเบฑเบ”เบงเบฝเบเป€เบ›เบฑเบ™เป€เบงเบฅเบฒเบ”เบปเบ™เบ™เบฒเบ™, เบ™เบตเป‰เบซเบกเบฒเบเบ„เบงเบฒเบกเบงเปˆเบฒเบžเบงเบเป€เบฎเบปเบฒเบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เป„เบ”เป‰เป€เบญเบปเบฒเปƒเบˆเปƒเบชเปˆเบญเบตเบเป€เบ—เบทเปˆเบญเบซเบ™เบถเปˆเบ‡เบเบฑเบšเบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบชเบนเบ™เบเบฒเบเบฒเบ”เปเบฅเบฐเบšเบฒเบ‡เบ—เบตเบญเบฒเบ”เบžเบดเบˆเบฒเบฅเบฐเบ™เบฒเบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบ‚เบญเบ‡เบกเบฑเบ™เบ„เบทเบ™เปƒเบซเบกเปˆ. เป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเบงเปˆเบฒเบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เบญเบฒเบ”เบˆเบฐเป€เบเบตเบ”เบ‚เบทเป‰เบ™เปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆเบชเบนเบ™เบเบฒเบเบฒเบ”เป€เบฎเบฑเบ”เบงเบฝเบเบขเบนเปˆเปƒเบ™เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เป€เบ›เบฑเบ™เป€เบงเบฅเบฒเบ”เบปเบ™ (3-4 เบŠเบปเปˆเบงเป‚เบกเบ‡), เปเบ•เปˆเปƒเบ™เป„เบฅเบเบฐเป€เบงเบฅเบฒเบ—เบตเปˆเบชเบนเบ™เบเบฒเบเบฒเบ”เป€เบฎเบฑเบ”เบงเบฝเบ, เบˆเปเบฒเบ™เบงเบ™เบ‚เบฐเบซเบ™เบฒเบ”เปƒเบซเบเปˆเบ‚เบญเบ‡เปเบ–เบงเบ•เบฒเบเบชเบฒเบกเบฒเบ”เบชเบฐเบชเบปเบกเบขเบนเปˆเปƒเบ™เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบญเบตเบเป€เบ—เบทเปˆเบญเบซเบ™เบถเปˆเบ‡. เปเบฅเบฐเบ—เบฑเบ™เบ—เบตเบ—เบตเปˆเบชเบนเบ™เบเบฒเบเบฒเบ”เบชเปเบฒเป€เบฅเบฑเบ”, เบฅเบฒเบงเบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบชเบนเบ™เบเบฒเบเบฒเบ”เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบ™เบตเป‰เบญเบตเบเป€เบ—เบทเปˆเบญเบซเบ™เบถเปˆเบ‡. เปเบฅเบฐเบžเบงเบเป€เบฎเบปเบฒเบกเบฒเบฎเบญเบ”เบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™ - เป€เบ›เบฑเบ™เบชเบนเบ™เบเบฒเบเบฒเบ”เบ—เบตเปˆเบšเปเปˆเบกเบตเบ—เบตเปˆเบชเบดเป‰เบ™เบชเบธเบ”. เปเบฅเบฐเปƒเบ™เบเปเบฅเบฐเบ™เบตเบ™เบตเป‰, เบชเบนเบ™เบเบฒเบเบฒเบ”เบšเปเปˆเป„เบ”เป‰เบฎเบฑเบšเบกเบทเบเบฑเบšเบงเบฝเบเบ‡เบฒเบ™เบ‚เบญเบ‡เบกเบฑเบ™, เปเบฅเบฐเบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบ„เปˆเบญเบเป†เป€เบฅเบตเปˆเบกเบšเบงเบกเบ‚เบฐเบซเบ™เบฒเบ”, เป€เบ–เบดเบ‡เปเบกเปˆเบ™เบงเปˆเบฒเบ›เบฐเบฅเบดเบกเบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเป€เบ›เบฑเบ™เบ›เบฐเป‚เบซเบเบ”เปƒเบ™เบกเบฑเบ™เบเบฑเบ‡เบ„เบปเบ‡เบขเบนเปˆเบ„เบทเบเบฑเบ™. เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เปƒเบ™เป„เบฅเบเบฐเบชเบนเบ™เบเบฒเบเบฒเบ”เบเบฒเบง, เบžเบงเบเป€เบฎเบปเบฒเบชเบฐเป€เบซเบกเบตเป€เบšเบดเปˆเบ‡เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเปเบฅเบฐเบžเบฐเบเบฒเบเบฒเบกเป€เบžเบตเปˆเบกเบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบšเบกเบฑเบ™, เปเบ•เปˆเปƒเบ™เป€เบงเบฅเบฒเบ”เบฝเบงเบเบฑเบ™เป€เบžเบทเปˆเบญเปƒเบซเป‰เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเบ‚เบญเบ‡เบฅเบนเบเบ„เป‰เบฒเบšเปเปˆเบ—เบปเบ™เบ—เบธเบ.

เบžเบทเป‰เบ™เบ–เบฒเบ™เบ‚เบญเบ‡เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก PostgreSQL. Alexey Lesovsky

เปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™เบšเปเปˆเบกเบตเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบ•เบดเบ”เบ•เบฑเป‰เบ‡ PostgreSQL เบ—เบตเปˆเบšเปเปˆเบกเบตเบเบฒเบ™เบˆเปเบฒเบฅเบญเบ‡เบเบฒเบ™เบ–เปˆเบฒเบเบ—เบญเบ”. Replication เปเบกเปˆเบ™เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบ‚เบญเบ‡เบเบฒเบ™เป€เบ„เบทเปˆเบญเบ™เบเป‰เบฒเบเบ‚เปเป‰เบกเบนเบ™เบˆเบฒเบเบ•เบปเป‰เบ™เบชเบฐเบšเบฑเบšเป„เบ›เบซเบฒ replica เป„เบ”เป‰.

Replication เปƒเบ™ PostgreSQL เปเบกเปˆเบ™เป€เบฎเบฑเบ”เบœเปˆเบฒเบ™เบšเบฑเบ™เบ—เบถเบเบเบฒเบ™เป€เบฎเบฑเบ”เบ—เบธเบฅเบฐเบเปเบฒ. เบ•เบปเบงเบŠเปˆเบงเบเบชเป‰เบฒเบ‡เบšเบฑเบ™เบ—เบถเบเบเบฒเบ™เป€เบฎเบฑเบ”เบ—เบธเบฅเบฐเบเปเบฒ. เบšเบฑเบ™เบ—เบถเบเบเบฒเบ™เป€เบฎเบฑเบ”เบ—เบธเบฅเบฐเบเปเบฒเป€เบ”เบตเบ™เบ—เบฒเบ‡เบœเปˆเบฒเบ™เบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเป€เบ„เบทเบญเบ‚เปˆเบฒเบเบเบฑเบš replica, เปเบฅเบฐเบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบกเบฑเบ™เบ–เบทเบเบœเบฐเบฅเบดเบ”เบ„เบทเบ™เปƒเบซเบกเปˆเปƒเบ™ replica. เบกเบฑเบ™เบ‡เปˆเบฒเบเบ”เบฒเบ.

เบ•เบฒเบกเบ™เบฑเป‰เบ™เปเบฅเป‰เบง, เบกเบธเบกเบกเบญเบ‡ pg_stat_replication เบ–เบทเบเปƒเบŠเป‰เป€เบžเบทเปˆเบญเบ•เบดเบ”เบ•เบฒเบกเบ„เบงเบฒเบกเบŠเบฑเบเบŠเป‰เบฒเบ‚เบญเบ‡เบเบฒเบ™เบˆเบณเบฅเบญเบ‡. เปเบ•เปˆเบšเปเปˆเปเบกเปˆเบ™เบ—เบธเบเบชเบดเปˆเบ‡เบ—เบธเบเบขเปˆเบฒเบ‡เปเบกเปˆเบ™เบ‡เปˆเบฒเบเบ”เบฒเบเบเบฑเบšเบ™เบฒเบ‡. เปƒเบ™โ€‹เบชเบฐโ€‹เบšเบฑเบš 10โ€‹, เบเบฒเบ™โ€‹เป€เบšเบดเปˆเบ‡โ€‹เป„เบ”เป‰โ€‹เบกเบตโ€‹เบเบฒเบ™โ€‹เบ›เปˆเบฝเบ™โ€‹เปเบ›เบ‡โ€‹เบˆเปเบฒโ€‹เบ™เบงเบ™โ€‹เบซเบ™เบถเปˆเบ‡โ€‹. เบเปˆเบญเบ™เบญเบทเปˆเบ™ เปเบปเบ”, เบšเบฒเบ‡เบ‚เบปเบ‡เป€เบ‚เบ”เป„เบ”เป‰เบ–เบทเบเบ›เปˆเบฝเบ™เบŠเบทเปˆ. เปเบฅเบฐเบšเบฒเบ‡เบŠเปˆเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เป„เบ”เป‰เบ–เบทเบเป€เบžเบตเปˆเบก. เปƒเบ™เบฎเบธเปˆเบ™ 10, เบ›เบฒเบเบปเบ”เบงเปˆเบฒเบŠเปˆเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบ„เบฒเบ”เบ„เบฐเป€เบ™เบเบฒเบ™เบˆเปเบฒเบฅเบญเบ‡ lag เปƒเบ™เบงเบดเบ™เบฒเบ—เบต. เบกเบฑเบ™เบชเบฐเบ”เบงเบเบชเบฐเบšเบฒเบเบซเบผเบฒเบ. เบเปˆเบญเบ™เบ—เบตเปˆเบˆเบฐเบชเบฐเบšเบฑเบš 10, เบกเบฑเบ™เป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰เบ—เบตเปˆเบˆเบฐเบ„เบฒเบ”เบ„เบฐเป€เบ™เบเบฒเบ™เบˆเปเบฒเบฅเบญเบ‡ lag เปƒเบ™ bytes. เบ•เบปเบงเป€เบฅเบทเบญเบเบ™เบตเป‰เบเบฑเบ‡เบ„เบปเบ‡เบขเบนเปˆเปƒเบ™เบฎเบธเปˆเบ™ 10, i.e. เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เป€เบฅเบทเบญเบเบชเบดเปˆเบ‡เบ—เบตเปˆเบชเบฐเบ”เบงเบเบเบงเปˆเบฒเบชเปเบฒเบฅเบฑเบšเบ—เปˆเบฒเบ™ - เบ„เบฒเบ”เบ„เบฐเป€เบ™เบ„เบงเบฒเบกเบŠเบฑเบเบŠเป‰เบฒเปƒเบ™ bytes เบซเบผเบทเบ„เบฒเบ”เบ„เบฐเป€เบ™เบ„เบงเบฒเบกเบฅเป‰เบฒเป†เปƒเบ™เบงเบดเบ™เบฒเบ—เบต. เบซเบผเบฒเบเบ„เบปเบ™เป€เบฎเบฑเบ”เบ—เบฑเบ‡เบชเบญเบ‡.

เปเบ•เปˆเบขเปˆเบฒเบ‡เปƒเบ”เบเปเปˆเบ•เบฒเบก, เป€เบžเบทเปˆเบญเบ›เบฐเป€เบกเบตเบ™เบ„เบงเบฒเบกเบŠเบฑเบเบŠเป‰เบฒเบ‚เบญเบ‡เบเบฒเบ™เบˆเปเบฒเบฅเบญเบ‡, เบ—เปˆเบฒเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบฎเบนเป‰เบ•เปเบฒเปเบซเบ™เปˆเบ‡เบ‚เบญเบ‡เบšเบฑเบ™เบ—เบถเบเปƒเบ™เบเบฒเบ™เป€เบฎเบฑเบ”เบ—เบธเบฅเบฐเบเปเบฒ. เปเบฅเบฐเบ•เปเบฒเปเปœเปˆเบ‡เบšเบฑเบ™เบ—เบถเบเบเบฒเบ™เป€เบฎเบฑเบ”เบ—เบธเบฅเบฐเบเปเบฒเป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เปเบกเปˆเบ™เบขเบนเปˆเปƒเบ™เบกเบธเบกเป€เบšเบดเปˆเบ‡ pg_stat_replication. เป€เบงเบปเป‰เบฒเบ‚เป‰เบญเบ™เบ‚เป‰เบฒเบ‡, เบžเบงเบเป€เบฎเบปเบฒเบชเบฒเบกเบฒเบ”เป€เบญเบปเบฒเบชเบญเบ‡เบˆเบธเบ”เปƒเบ™เบšเบฑเบ™เบ—เบถเบเบเบฒเบ™เป€เบฎเบฑเบ”เบ—เบธเบฅเบฐเบเปเบฒเป‚เบ”เบเปƒเบŠเป‰เบŸเบฑเบ‡เบŠเบฑเบ™ pg_xlog_location_diff(). เบ„เบดเบ”เป„เบฅเปˆ delta เบฅเบฐเบซเบงเปˆเบฒเบ‡เบžเบงเบเบกเบฑเบ™เปเบฅเบฐเป€เบญเบปเบฒเบเบฒเบ™เบˆเปเบฒเบฅเบญเบ‡ lag เปƒเบ™ bytes. เบกเบฑเบ™เบชเบฐเบ”เบงเบเบซเบผเบฒเบเปเบฅเบฐเบ‡เปˆเบฒเบเบ”เบฒเบ.

เปƒเบ™เบฎเบธเปˆเบ™ 10, เบŸเบฑเบ‡เบŠเบฑเบ™เบ™เบตเป‰เบ–เบทเบเบ›เปˆเบฝเบ™เบŠเบทเปˆเป€เบ›เบฑเบ™ pg_wal_lsn_diff(). เป‚เบ”เบเบ—เบปเปˆเบงเป„เบ›, เปƒเบ™เบ—เบธเบเบซเบ™เป‰เบฒเบ—เบตเปˆ, เบ—เบฑเบ”เบชเบฐเบ™เบฐ, เปเบฅเบฐเบœเบปเบ™เบ›เบฐเป‚เบซเบเบ”เบ—เบตเปˆเบ„เปเบฒเบงเปˆเบฒ "xlog" เป„เบ”เป‰เบ–เบทเบเบžเบปเบšเป€เบซเบฑเบ™, เบกเบฑเบ™เป„เบ”เป‰เบ–เบทเบเปเบ—เบ™เบ—เบตเปˆเบ”เป‰เบงเบเบกเบนเบ™เบ„เปˆเบฒ "wal". เบ™เบตเป‰เปƒเบŠเป‰เบเบฑเบšเบ—เบฑเบ‡เบกเบธเบกเป€เบšเบดเปˆเบ‡เปเบฅเบฐเบซเบ™เป‰เบฒเบ—เบตเปˆ. เบ™เบตเป‰เปเบกเปˆเบ™เบเบฒเบ™เบ›เบฐเบ”เบดเบ”เบชเป‰เบฒเบ‡เบ”เบฑเปˆเบ‡เบเปˆเบฒเบง.

เบ™เบญเบเบˆเบฒเบเบ™เบฑเป‰เบ™, เปƒเบ™เบฎเบธเปˆเบ™ 10, เบชเบฒเบเป„เบ”เป‰เบ–เบทเบเป€เบžเบตเปˆเบกเบ—เบตเปˆเบชเบฐเปเบ”เบ‡เปƒเบซเป‰เป€เบซเบฑเบ™เบ„เบงเบฒเบกเบŠเบฑเบเบŠเป‰เบฒเป‚เบ”เบเบชเบฐเป€เบžเบฒเบฐ. เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เปเบกเปˆเบ™เบเบฒเบ™เบ‚เบฝเบ™ lag, flush lag, replay lag. เบ™เบฑเป‰เบ™เปเบกเปˆเบ™, เบกเบฑเบ™เป€เบ›เบฑเบ™เบชเบดเปˆเบ‡เบชเปเบฒเบ„เบฑเบ™เบ—เบตเปˆเบˆเบฐเบ•เบดเบ”เบ•เบฒเบกเบชเบดเปˆเบ‡เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰. เบ–เป‰เบฒเบžเบงเบเป€เบฎเบปเบฒเป€เบซเบฑเบ™เบงเปˆเบฒเบžเบงเบเป€เบฎเบปเบฒเบกเบตเบ„เบงเบฒเบกเบŠเบฑเบเบŠเป‰เบฒเปƒเบ™เบเบฒเบ™เบˆเปเบฒเบฅเบญเบ‡, เบžเบงเบเป€เบฎเบปเบฒเบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เป„เบ”เป‰เบชเบทเบšเบชเบงเบ™เบงเปˆเบฒเป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบกเบฑเบ™เบ›เบฒเบเบปเบ”, เบกเบฑเบ™เบกเบฒเบˆเบฒเบเปƒเบชเปเบฅเบฐเปเบเป‰เป„เบ‚เบšเบฑเบ™เบซเบฒ.

เบžเบทเป‰เบ™เบ–เบฒเบ™เบ‚เบญเบ‡เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก PostgreSQL. Alexey Lesovsky

เป€เบเบทเบญเบšเบ—เบธเบเบชเบดเปˆเบ‡เบ—เบธเบเบขเปˆเบฒเบ‡เปเบกเปˆเบ™เบขเบนเปˆเปƒเบ™เบ„เปเบฒเบชเบฑเปˆเบ‡เบเบฑเบš metrics เบฅเบฐเบšเบปเบš. เป€เบกเบทเปˆเบญเบเบฒเบ™เบเบงเบ”เบชเบญเบšเปƒเบ”เป†เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™, เบกเบฑเบ™เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ”เป‰เบงเบเบเบฒเบ™เบงเบฑเบ”เปเบ—เบเบฅเบฐเบšเบปเบš. เบ™เบตเป‰เปเบกเปˆเบ™เบเบฒเบ™เบเปเบฒเบˆเบฑเบ”เป‚เบ›เป€เบŠเบ”เป€เบŠเบต, เบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒ, swap, เป€เบ„เบทเบญเบ‚เปˆเบฒเบเปเบฅเบฐเปเบœเปˆเบ™. เบขเปˆเบฒเบ‡เปƒเบ”เบเปเบ•เบฒเบก, เบ•เบปเบงเบเปเบฒเบ™เบปเบ”เบเบฒเบ™เบˆเปเบฒเบ™เบงเบ™เบซเบผเบฒเบเบšเปเปˆเป„เบ”เป‰เบขเบนเปˆเบ—เบตเปˆเบ™เบฑเป‰เบ™เป‚เบ”เบเบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™.

เบ–เป‰เบฒเบ—เบธเบเบชเบดเปˆเบ‡เบ—เบธเบเบขเปˆเบฒเบ‡เบขเบนเปˆเปƒเบ™เบ„เปเบฒเบชเบฑเปˆเบ‡เบเบฑเบšเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบฅเบตเป„เบŠเป€เบ„เบตเบ™, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบกเบตเบšเบฑเบ™เบซเบฒเบเบฑเบšเบเบฒเบ™เบฅเบตเป„เบŠเป€เบ„เบตเบ™เปเบœเปˆเบ™. เบ•เบฒเบกเบเบปเบ”เบฅเบฐเบšเบฝเบš, เบœเบนเป‰เบžเบฑเบ”เบ—เบฐเบ™เบฒเบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเป€เบžเบตเปˆเบกเบ‚เปเป‰เบกเบนเบ™เบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เบชเบปเปˆเบ‡เบ•เปเปˆ. เบกเบฑเบ™เบชเบฒเบกเบฒเบ”เบขเบนเปˆเปƒเบ™ iops เบซเบผเบท bytes. เปเบ•เปˆเบžเบงเบเป€เบ‚เบปเบฒเบฅเบทเบกเบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™ latency เปเบฅเบฐเบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบญเบธเบ›เบฐเบเบญเบ™เปเบœเปˆเบ™. เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เปเบกเปˆเบ™เบ•เบปเบงเบเปเบฒเบ™เบปเบ”เบเบฒเบ™เบ—เบตเปˆเบชเปเบฒเบ„เบฑเบ™เบซเบผเบฒเบเบ—เบตเปˆเบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบžเบงเบเป€เบฎเบปเบฒเป€เบžเบทเปˆเบญเบ›เบฐเป€เบกเบตเบ™เบงเบดเบ—เบตเบเบฒเบ™เป‚เบซเบผเบ”เบ‚เบญเบ‡เปเบœเปˆเบ™เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเปเบกเปˆเบ™เบŠเป‰เบฒเบ›เบฒเบ™เปƒเบ”. เบ–เป‰เบฒเบžเบงเบเป€เบฎเบปเบฒเบกเบต latency เบชเบนเบ‡, เบ™เบตเป‰เบซเบกเบฒเบเบ„เบงเบฒเบกเบงเปˆเบฒเบกเบตเบšเบฑเบ™เบซเบฒเบšเบฒเบ‡เบขเปˆเบฒเบ‡เบเบฑเบšเปเบœเปˆเบ™. เบ–เป‰เบฒเบžเบงเบเป€เบฎเบปเบฒเบกเบตเบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบชเบนเบ‡, เบกเบฑเบ™เบซเบกเบฒเบเบ„เบงเบฒเบกเบงเปˆเบฒเปเบœเปˆเบ™เบ—เบตเปˆเบšเปเปˆเป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบฎเบฑเบšเบกเบทเบเบฑเบš. เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เปเบกเปˆเบ™เบ„เบธเบ™เบฅเบฑเบเบชเบฐเบ™เบฐเบ—เบตเปˆเบ”เบตเบเปˆเบงเบฒเบเบฒเบ™เบชเบปเปˆเบ‡เบœเปˆเบฒเบ™.

เบเบดเปˆเบ‡เป„เบ›เบเบงเปˆเบฒเบ™เบฑเป‰เบ™, เบชเบฐเบ–เบดเบ•เบดเป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เบเบฑเบ‡เบชเบฒเบกเบฒเบ”เป„เบ”เป‰เบฎเบฑเบšเบˆเบฒเบเบฅเบฐเบšเบปเบšเป„เบŸเบฅเปŒ / proc, เบ„เบทเบเบฑเบšเบ—เบตเปˆเป€เบฎเบฑเบ”เบชเปเบฒเบฅเบฑเบšเป‚เบฎเบ‡เบ‡เบฒเบ™เบœเบฐเบฅเบดเบ”เบ„เบทเบ™เปƒเบซเบกเปˆ. เบ‚เป‰เบญเบเบšเปเปˆเบฎเบนเป‰เบงเปˆเบฒเป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบ‚เปเป‰เบกเบนเบ™เบ™เบตเป‰เบšเปเปˆเป„เบ”เป‰เบ–เบทเบเป€เบžเบตเปˆเบกเป€เบ‚เบปเป‰เบฒเปƒเบ™เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก. เปเบ•เปˆเบขเปˆเบฒเบ‡เปƒเบ”เบเปเปˆเบ•เบฒเบก, เบกเบฑเบ™เป€เบ›เบฑเบ™เบชเบดเปˆเบ‡เบชเปเบฒเบ„เบฑเบ™เบ—เบตเปˆเบˆเบฐเบกเบตเบชเบดเปˆเบ‡เบ™เบตเป‰เปƒเบ™เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบ‚เบญเบ‡เบ—เปˆเบฒเบ™.

เบ”เบฝเบงเบเบฑเบ™เปƒเบŠเป‰เบเบฑเบšเบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบšเป€เบ„เบทเบญเบ‚เปˆเบฒเบ. เบกเบตเบ‚เปเป‰เบกเบนเบ™เบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เบชเบปเปˆเบ‡เบœเปˆเบฒเบ™เป€เบ„เบทเบญเบ‚เปˆเบฒเบเปƒเบ™เปเบžเบฑเบเป€เบเบฑเบ”, เปƒเบ™เป„เบšเบ•เปŒ, เปเบ•เปˆเบขเปˆเบฒเบ‡เปƒเบ”เบเปเปˆเบ•เบฒเบก, เบšเปเปˆเบกเบตเบ‚เปเป‰เบกเบนเบ™เบเปˆเบฝเบงเบเบฑเบš latency เปเบฅเบฐเบšเปเปˆเบกเบตเบ‚เปเป‰เบกเบนเบ™เบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰, เป€เบ–เบดเบ‡เปเบกเปˆเบ™เบงเปˆเบฒเบ™เบตเป‰เบเบฑเบ‡เป€เบ›เบฑเบ™เบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเป€เบ›เบฑเบ™เบ›เบฐเป‚เบซเบเบ”.

เบžเบทเป‰เบ™เบ–เบฒเบ™เบ‚เบญเบ‡เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก PostgreSQL. Alexey Lesovsky

เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเปƒเบ”เบเปเปˆเบ•เบฒเบกเบกเบตเบ‚เปเป‰เบšเบปเบเบœเปˆเบญเบ‡. เปเบฅเบฐเบšเปเปˆเบงเปˆเบฒเบ—เปˆเบฒเบ™เบˆเบฐเบ•เบดเบ”เบ•เบฒเบกเปเบšเบšเปƒเบ”เบเปเปˆเบ•เบฒเบก, เบกเบฑเบ™เบˆเบฐเบšเปเปˆเบเบปเบ‡เบเบฑเบšเป€เบ‡เบทเปˆเบญเบ™เป„เบ‚เบšเบฒเบ‡เบขเปˆเบฒเบ‡. เปเบ•เปˆเบขเปˆเบฒเบ‡เปƒเบ”เบเปเปˆเบ•เบฒเบก, เบžเบงเบเป€เบ‚เบปเบฒเบเปเบฒเบฅเบฑเบ‡เบžเบฑเบ”เบ—เบฐเบ™เบฒ, เบฅเบฑเบเบชเบฐเบ™เบฐเปƒเบซเบกเปˆเปเบฅเบฐเบชเบดเปˆเบ‡เปƒเบซเบกเปˆเบเปเบฒเบฅเบฑเบ‡เบ–เบทเบเป€เบžเบตเปˆเบก, เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เป€เบฅเบทเบญเบเบšเบฒเบ‡เบชเบดเปˆเบ‡เบšเบฒเบ‡เบขเปˆเบฒเบ‡เปเบฅเบฐเป€เบฎเบฑเบ”เบชเปเบฒเป€เบฅเบฑเบ”เบกเบฑเบ™.

เปเบฅเบฐเป€เบžเบทเปˆเบญเบชเปเบฒเป€เบฅเบฑเบ”เบฎเบนเบš, เบ—เปˆเบฒเบ™เบชเบฐเป€เบซเบกเบตเบ•เป‰เบญเบ‡เบกเบตเบ„เบงเบฒเบกเบ„เบดเบ”เบ‚เบญเบ‡เบชเบฐเบ–เบดเบ•เบดเบ—เบตเปˆเบชเบฐเบซเบ™เบญเบ‡เปƒเบซเป‰เบซเบกเบฒเบเบ„เบงเบฒเบกเบงเปˆเบฒเปเบ™เบงเปƒเบ”เปเบฅเบฐเบงเบดเบ—เบตเบ—เบตเปˆเบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบ™เปเบฒเปƒเบŠเป‰เบžเบงเบเบกเบฑเบ™เป€เบžเบทเปˆเบญเปเบเป‰เป„เบ‚เบšเบฑเบ™เบซเบฒ.

เปเบฅเบฐเบšเบฒเบ‡เบˆเบธเบ”เบชเปเบฒเบ„เบฑเบ™:

  • เบ—เปˆเบฒเบ™เบ„เบงเบ™เบ•เบดเบ”เบ•เบฒเบกเบ„เบงเบฒเบกเบžเป‰เบญเบกเบขเบนเปˆเบชเบฐ เป€เปเบต เปเบฅเบฐเบกเบต dashboards เป€เบžเบทเปˆเบญเปƒเบซเป‰เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบ›เบฐเป€เบกเบตเบ™เป„เบ”เป‰เป„เบงเบงเปˆเบฒเบ—เบธเบเบชเบดเปˆเบ‡เบ—เบธเบเบขเปˆเบฒเบ‡เบขเบนเปˆเปƒเบ™เบ„เปเบฒเบชเบฑเปˆเบ‡เบเบฑเบšเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™.
  • เบ—เปˆเบฒเบ™เบชเบฐเป€เบซเบกเบตเบ•เป‰เบญเบ‡เบกเบตเบ„เบงเบฒเบกเบ„เบดเบ”เบเปˆเบฝเบงเบเบฑเบšเบชเบดเปˆเบ‡เบ—เบตเปˆเบฅเบนเบเบ„เป‰เบฒเบเปเบฒเบฅเบฑเบ‡เป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบšเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบ‚เบญเบ‡เป€เบˆเบปเป‰เบฒเป€เบžเบทเปˆเบญเบเปเบฒเบˆเบฑเบ”เบฅเบนเบเบ„เป‰เบฒเบ—เบตเปˆเบšเปเปˆเบ”เบตเปเบฅเบฐเบเบดเบ‡เบžเบงเบเป€เบ‚เบปเบฒเบฅเบปเบ‡.
  • เบกเบฑเบ™เป€เบ›เบฑเบ™เบชเบดเปˆเบ‡เบชเปเบฒเบ„เบฑเบ™เบ—เบตเปˆเบˆเบฐเบ›เบฐเป€เบกเบตเบ™เบงเบดเบ—เบตเบ—เบตเปˆเบฅเบนเบเบ„เป‰เบฒเป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบšเบ‚เปเป‰เบกเบนเบ™. เบ—เปˆเบฒเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบกเบตเบ„เบงเบฒเบกเบ„เบดเบ”เบเปˆเบฝเบงเบเบฑเบšเบงเบฝเบเบ‡เบฒเบ™เบ‚เบญเบ‡เบ—เปˆเบฒเบ™.
  • เบกเบฑเบ™เป€เบ›เบฑเบ™เบชเบดเปˆเบ‡เบชเปเบฒเบ„เบฑเบ™เบ—เบตเปˆเบˆเบฐเบ›เบฐเป€เบกเบตเบ™เบงเบดเบ—เบตเบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบ™เบตเป‰, เป‚เบ”เบเบเบฒเบ™เบŠเปˆเบงเบเป€เบซเบผเบทเบญเบ‚เบญเบ‡เบ„เปเบฒเบ–เบฒเบกเปƒเบ”. เบ—เปˆเบฒเบ™โ€‹เบชเบฒโ€‹เบกเบฒเบ”โ€‹เบ›เบฐโ€‹เป€เบกเบตเบ™โ€‹เบœเบปเบ™โ€‹เบเบฒเบ™โ€‹เบชเบญเบšโ€‹เบ–เบฒเบกโ€‹, เบ—เปˆเบฒเบ™โ€‹เบชเบฒโ€‹เบกเบฒเบ”โ€‹เบ›เบฑเบšโ€‹เบ›เบธเบ‡โ€‹เปƒเบซเป‰โ€‹เป€เบ‚เบปเบฒโ€‹เป€เบˆเบปเป‰เบฒโ€‹, refactor เปƒเบซเป‰โ€‹เป€เบ‚เบปเบฒโ€‹เป€เบˆเบปเป‰เบฒโ€‹, เบชเป‰เบฒเบ‡โ€‹เบ”เบฑเบ”โ€‹เบŠเบฐโ€‹เบ™เบตโ€‹เบชเปเบฒโ€‹เบฅเบฑเบšโ€‹เป€เบ‚เบปเบฒโ€‹เป€เบˆเบปเป‰เบฒโ€‹. เบกเบฑเบ™เป€เบ›เบฑเบ™เบชเบดเปˆเบ‡เบชเปเบฒเบ„เบฑเบ™เบซเบผเบฒเบ.
  • เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบžเบทเป‰เบ™เบ–เบฒเบ™เบชเบฒเบกเบฒเบ”เบชเบปเปˆเบ‡เบœเบปเบ™เบเบฐเบ—เบปเบšเบ—เบฒเบ‡เบฅเบปเบšเบ•เปเปˆเบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเบ‚เบญเบ‡เบฅเบนเบเบ„เป‰เบฒ, เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบกเบฑเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบ•เบดเบ”เบ•เบฒเบกเบงเปˆเบฒเบžเบงเบเป€เบ‚เบปเบฒเบšเปเปˆเป„เบ”เป‰เปƒเบŠเป‰เบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เบซเบผเบฒเบเป€เบเบตเบ™เป„เบ›.
  • metrics เบฅเบฐเบšเบปเบšเบŠเปˆเบงเบเปƒเบซเป‰เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบงเบฒเบ‡เปเบœเบ™เบเบฒเบ™เบ‚เบฐเบซเบเบฒเบเปเบฅเบฐเป€เบžเบตเปˆเบกเบ„เบงเบฒเบกเบญเบฒเบ”เบชเบฒเบกเบฒเบ”เบ‚เบญเบ‡เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบ‚เบญเบ‡เบ—เปˆเบฒเบ™, เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบกเบฑเบ™เบเปเปˆเบชเปเบฒเบ„เบฑเบ™เบ—เบตเปˆเบˆเบฐเบ•เบดเบ”เบ•เบฒเบกเปเบฅเบฐเบ›เบฐเป€เบกเบตเบ™เบžเบงเบเบกเบฑเบ™เป€เบŠเบฑเปˆเบ™เบเบฑเบ™.

เบžเบทเป‰เบ™เบ–เบฒเบ™เบ‚เบญเบ‡เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก PostgreSQL. Alexey Lesovsky

เบ–เป‰เบฒเบซเบฒเบเบงเปˆเบฒเบ—เปˆเบฒเบ™เบกเบตเบ„เบงเบฒเบกเบชเบปเบ™เปƒเบˆเปƒเบ™เบซเบปเบงเบ‚เปเป‰เบ™เบตเป‰, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบ›เบฐเบ•เบดเบšเบฑเบ”เบ•เบฒเบกเบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰.
http://bit.do/stats_collector - เบ™เบตเป‰เปเบกเปˆเบ™เป€เบญเบเบฐเบชเบฒเบ™เบขเปˆเบฒเบ‡เป€เบ›เบฑเบ™เบ—เบฒเบ‡เบเบฒเบ™เบˆเบฒเบเบœเบนเป‰เป€เบเบฑเบšเบชเบฐเบ–เบดเบ•เบด. เบกเบตเบฅเบฒเบเบฅเบฐเบญเบฝเบ”เบ‚เบญเบ‡เบชเบฐเบ–เบดเบ•เบดเบเบฒเบ™เป€เบšเบดเปˆเบ‡เบ—เบฑเบ‡เบซเบกเบปเบ”เปเบฅเบฐเบฅเบฒเบเบฅเบฐเบญเบฝเบ”เบ‚เบญเบ‡เบ—เบธเบเบ‚เบปเบ‡เป€เบ‚เบ”. เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบญเปˆเบฒเบ™, เป€เบ‚เบปเป‰เบฒเปƒเบˆเปเบฅเบฐเบงเบดเป€เบ„เบฒเบฐเปƒเบซเป‰เป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒ. เปเบฅเบฐเบญเบตเบ‡เปƒเบชเปˆเบžเบงเบเบกเบฑเบ™, เบชเป‰เบฒเบ‡เบเบฒเบŸเบ‚เบญเบ‡เบ—เปˆเบฒเบ™เปเบฅเบฐเป€เบžเบตเปˆเบกเบžเบงเบเบกเบฑเบ™เป€เบ‚เบปเป‰เบฒเปƒเบ™เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบ‚เบญเบ‡เบ—เปˆเบฒเบ™.

เบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเบ•เบปเบงเบขเปˆเบฒเบ‡:
http://bit.do/dataegret_sql
http://bit.do/lesovsky_sql

เบ™เบตเป‰เปเบกเปˆเบ™เบ„เบฑเบ‡เป€เบเบฑเบšเบ‚เบญเบ‡เบšเปเบฅเบดเบชเบฑเบ”เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเปเบฅเบฐเบ‚เบญเบ‡เบ‚เป‰เบญเบเป€เบญเบ‡. เบžเบงเบเบกเบฑเบ™เบกเบตเบ•เบปเบงเบขเปˆเบฒเบ‡เปเบšเบšเบชเบญเบšเบ–เบฒเบก. เบšเปเปˆโ€‹เบกเบตโ€‹เบเบฒเบ™โ€‹เบชเบญเบšโ€‹เบ–เบฒเบกโ€‹เบˆเบฒเบโ€‹เบเบฒเบ™โ€‹เป€เบฅเบทเบญเบ * เบˆเบฒเบโ€‹เบŠเบธเบ”โ€‹เบ—เบตเปˆโ€‹เบ™เบฑเป‰เบ™โ€‹. เบกเบตเบเบฒเบ™เบชเบญเบšเบ–เบฒเบกเบ—เบตเปˆเบเบฝเบกเบžเป‰เบญเบกเปเบฅเป‰เบงเบเบฑเบš joins, เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบซเบ™เป‰เบฒเบ—เบตเปˆเบ—เบตเปˆเบซเบ™เป‰เบฒเบชเบปเบ™เปƒเบˆเบ—เบตเปˆเบŠเปˆเบงเบเปƒเบซเป‰เบ—เปˆเบฒเบ™เบ›เปˆเบฝเบ™เบ•เบปเบงเป€เบฅเบเบ”เบดเบšเป€เบ›เบฑเบ™เบ„เปˆเบฒเบ—เบตเปˆเบชเบฒเบกเบฒเบ”เบญเปˆเบฒเบ™เป„เบ”เป‰, เบชเบฐเบ”เบงเบ, i.e. เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เปเบกเปˆเบ™ bytes, เป€เบงเบฅเบฒ. เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เป€เบฅเบทเบญเบเป€เบญเบปเบฒเบžเบงเบเบกเบฑเบ™, เป€เบšเบดเปˆเบ‡เบžเบงเบเป€เบ‚เบปเบฒ, เบงเบดเป€เบ„เบฒเบฐ, เป€เบžเบตเปˆเบกเบžเบงเบเบกเบฑเบ™เป€เบ‚เบปเป‰เบฒเปƒเบ™เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบ‚เบญเบ‡เบ—เปˆเบฒเบ™, เบชเป‰เบฒเบ‡เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบ‚เบญเบ‡เบ—เปˆเบฒเบ™เป‚เบ”เบเบญเบตเบ‡เปƒเบชเปˆเบžเบงเบเบกเบฑเบ™.

เบ„เปเบฒเบ–เบฒเบกเบ‚เบญเบ‡เบ—เปˆเบฒเบ™

เบ„เปเบฒเบ–เบฒเบก: เป€เบˆเบปเป‰เบฒเป€เบงเบปเป‰เบฒเบงเปˆเบฒเบ—เปˆเบฒเบ™เบˆเบฐเบšเปเปˆเป‚เบ„เบชเบฐเบ™เบฒเบเบตเปˆเบซเปเป‰, เปเบ•เปˆเบ‚เป‰เบญเบเบเปเปˆเบเบฑเบ‡เบขเบฒเบเบฎเบนเป‰ - เป€เบˆเบปเป‰เบฒเปƒเบŠเป‰ dashboards เบ›เบฐเป€เบžเบ”เปƒเบ”เปƒเบ™เป‚เบ„เบ‡เบเบฒเบ™เบ‚เบญเบ‡เป€เบˆเบปเป‰เบฒ?
เบ„เปเบฒเบ•เบญเบš: เบกเบฑเบ™เปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™. เบกเบฑเบ™เป€เบเบตเบ”เบ‚เบทเป‰เบ™เบงเปˆเบฒเบžเบงเบเป€เบฎเบปเบฒเบกเบฒเบซเบฒเบฅเบนเบเบ„เป‰เบฒเปเบฅเบฐเบฅเบฒเบงเบกเบตเบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบ‚เบญเบ‡เบ•เบปเบ™เป€เบญเบ‡เปเบฅเป‰เบง. เปเบฅเบฐเบžเบงเบเป€เบฎเบปเบฒเปเบ™เบฐเบ™เปเบฒเบฅเบนเบเบ„เป‰เบฒเบเปˆเบฝเบงเบเบฑเบšเบชเบดเปˆเบ‡เบ—เบตเปˆเบ•เป‰เบญเบ‡เบเบฒเบ™เป€เบžเบตเปˆเบกเป€เบ‚เบปเป‰เบฒเปƒเบ™เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบ‚เบญเบ‡เบžเบงเบเป€เบ‚เบปเบฒ. เบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เบ—เบตเปˆเบฎเป‰เบฒเบเปเบฎเบ‡เบ—เบตเปˆเบชเบธเบ”เปเบกเปˆเบ™เบเบฑเบš Zabbix. เป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเบงเปˆเบฒเบกเบฑเบ™เบšเปเปˆเบกเบตเบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เปƒเบ™เบเบฒเบ™เบชเป‰เบฒเบ‡เบเบฒเบŸ TopN. เบžเบงเบเป€เบฎเบปเบฒเป€เบญเบ‡เปƒเบŠเป‰ Okmeter, เป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเบงเปˆเบฒเบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบ›เบถเบเบชเบฒเบซเบฒเบฅเบทเบเบฑเบšเบ„เบปเบ™เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบเบงเบ”เบเบฒ. เบžเบงเบเป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒเป„เบ”เป‰เบ•เบดเบ”เบ•เบฒเบก PostgreSQL เป‚เบ”เบเบญเบตเบ‡เปƒเบชเปˆเบ‚เปเป‰เบกเบนเบ™เบชเบฐเป€เบžเบฒเบฐเบ”เป‰เบฒเบ™เบงเบดเบŠเบฒเบเบฒเบ™เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ. เบ‚เป‰เบญเบเบเปเบฒเบฅเบฑเบ‡เบ‚เบฝเบ™เป‚เบ„เบ‡เบเบฒเบ™เบชเบฑเบ”เบฅเป‰เบฝเบ‡เบ‚เบญเบ‡เบ‚เป‰เบญเบเป€เบญเบ‡, เป€เบŠเบดเปˆเบ‡เป€เบเบฑเบšเบเปเบฒเบ‚เปเป‰เบกเบนเบ™เบœเปˆเบฒเบ™ Prometheus เปเบฅเบฐเป€เบฎเบฑเบ”เปƒเบซเป‰เบกเบฑเบ™เบขเบนเปˆเปƒเบ™ เบเบฃเบฒเบŸเบฒเบ™เบฒ. เบงเบฝเบเบ‡เบฒเบ™เบ‚เบญเบ‡เบ‚เป‰เบญเบเปเบกเปˆเบ™เป€เบžเบทเปˆเบญเบชเป‰เบฒเบ‡เบœเบนเป‰เบชเบปเปˆเบ‡เบญเบญเบเบ‚เบญเบ‡เบ‚เป‰เบญเบเป€เบญเบ‡เปƒเบ™ Prometheus เปเบฅเบฐเบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เปƒเบซเป‰เบ—เบธเบเบชเบดเปˆเบ‡เบ—เบธเบเบขเปˆเบฒเบ‡เบขเบนเปˆเปƒเบ™ Grafana.

เบ„เปเบฒเบ–เบฒเบก: เบกเบตเบเบฒเบ™เบ›เบฝเบšเบ—เบฝเบšเบ‚เบญเบ‡เบšเบปเบ”เบฅเบฒเบเบ‡เบฒเบ™ AWR เบซเบผเบท ... เบเบฒเบ™เบฅเบงเบšเบฅเบงเบกเบšเป? เป€เบˆเบปเป‰เบฒเบฎเบนเป‰เป€เบฅเบทเปˆเบญเบ‡เปเบšเบšเบ™เบตเป‰เบšเป?
เบ„เปเบฒเบ•เบญเบš: เปเบกเปˆเบ™เปเบฅเป‰เบง, เบ‚เป‰เบญเบเบฎเบนเป‰เบงเปˆเบฒ AWR เปเบกเปˆเบ™เบซเบเบฑเบ‡, เบกเบฑเบ™เป€เบ›เบฑเบ™เบชเบดเปˆเบ‡เบ—เบตเปˆเป€เบขเบฑเบ™. เปƒเบ™โ€‹เบ›เบฑเบ”โ€‹เบˆเบธโ€‹เบšเบฑเบ™โ€‹เบกเบตโ€‹เบ„เบงเบฒเบกโ€‹เบซเบผเบฒเบโ€‹เบซเบผเบฒเบโ€‹เบ‚เบญเบ‡โ€‹เบฅเบปเบ”โ€‹เบ–เบตเบšโ€‹เบ—เบตเปˆโ€‹เบ›เบฐโ€‹เบ•เบดโ€‹เบšเบฑเบ”โ€‹เบ›เบฐโ€‹เบกเบฒเบ™โ€‹เบฎเบนเบšโ€‹เปเบšเบšโ€‹เบ”เบฑเปˆเบ‡โ€‹เบ•เปเปˆโ€‹เป„เบ›โ€‹เบ™เบตเป‰โ€‹. เปƒเบ™เบšเบฒเบ‡เบŠเปˆเบงเบ‡เป€เบงเบฅเบฒ, เบšเบฒเบ‡เป€เบชเบฑเป‰เบ™เบžเบทเป‰เบ™เบ–เบฒเบ™เบ–เบทเบเบ‚เบฝเบ™เปƒเบชเปˆ PostgreSQL เบ”เบฝเบงเบเบฑเบ™ เบซเบผเบทเปƒเบชเปˆเบšเปˆเบญเบ™เป€เบเบฑเบšเบ‚เปเป‰เบกเบนเบ™เปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบ. เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ” google เปƒเบซเป‰เป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒเปƒเบ™เบญเบดเบ™เป€เบ•เบตเป€เบ™เบฑเบ”, เบžเบงเบเป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒเบขเบนเปˆเบ—เบตเปˆเบ™เบฑเป‰เบ™. เบซเบ™เบถเปˆเบ‡เปƒเบ™เบ™เบฑเบเบžเบฑเบ”เบ—เบฐเบ™เบฒเบ‚เบญเบ‡เบชเบดเปˆเบ‡เบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเบเปเบฒเบฅเบฑเบ‡เบ™เบฑเปˆเบ‡เบขเบนเปˆเปƒเบ™เป€เบงเบ—เบต sql.ru เปƒเบ™เบเบฐเบ—เบนเป‰ PostgreSQL. เป€เบˆเบปเป‰เบฒเบชเบฒเบกเบฒเบ”เบˆเบฑเบšเบฅเบฒเบงเบขเบนเปˆเบ—เบตเปˆเบ™เบฑเป‰เบ™. เปเบกเปˆเบ™เปเบฅเป‰เบง, เบกเบตเบชเบดเปˆเบ‡เบ”เบฑเปˆเบ‡เบเปˆเบฒเบง, เบžเบงเบเป€เบ‚เบปเบฒเบชเบฒเบกเบฒเบ”เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰. เบšเบงเบเบขเบนเปˆเปƒเบ™เบ‚เบญเบ‡เบกเบฑเบ™ pgCenter เบ‚เป‰เบญเบเบเบฑเบ‡เบ‚เบฝเบ™เบชเบดเปˆเบ‡เบ—เบตเปˆเบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบ—เปˆเบฒเบ™เป€เบฎเบฑเบ”เบชเบดเปˆเบ‡เบ”เบฝเบงเบเบฑเบ™.

PS1 เบ–เป‰เบฒเบ—เปˆเบฒเบ™เบเปเบฒเบฅเบฑเบ‡เปƒเบŠเป‰ postgres_exporter, เบ—เปˆเบฒเบ™เบเปเบฒเบฅเบฑเบ‡เปƒเบŠเป‰ dashboard เปƒเบ”? เบกเบตเบซเบผเบฒเบเบ‚เบญเบ‡เบžเบงเบเป€เบ‚เบปเบฒ. เบžเบงเบเบกเบฑเบ™เบฅเป‰เบฒเบชเบฐเป„เบซเบกเปเบฅเป‰เบง. เบšเบฒเบ‡เบ—เบตเบŠเบธเบกเบŠเบปเบ™เบˆเบฐเบชเป‰เบฒเบ‡เปเบกเปˆเปเบšเบšเบ—เบตเปˆเบกเบตเบเบฒเบ™เบ›เบฑเบšเบ›เบธเบ‡เบšเป?

PS2 เบ–เบญเบ™ pganalze เป€เบžเบฒเบฐเบงเปˆเบฒเบกเบฑเบ™เป€เบ›เบฑเบ™เบเบฒเบ™เบชเบฐเป€เบซเบ™เบต SaaS เบ—เบตเปˆเป€เบ›เบฑเบ™เป€เบˆเบปเป‰เบฒเบ‚เบญเบ‡เป€เบŠเบดเปˆเบ‡เป€เบ™เบฑเป‰เบ™เปƒเบชเปˆเบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เปเบฅเบฐเบเบฒเบ™เปเบ™เบฐเบ™เปเบฒเบเบฒเบ™เบ›เบฑเบšเบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”.

เบžเบฝเบ‡เปเบ•เปˆเบœเบนเป‰เปƒเบŠเป‰เบฅเบปเบ‡เบ—เบฐเบšเบฝเบ™เบชเบฒเบกเบฒเบ”เป€เบ‚เบปเป‰เบฒเบฎเปˆเบงเบกเปƒเบ™เบเบฒเบ™เบชเปเบฒเบซเบผเบงเบ”. เป€เบ‚เบปเป‰เบฒโ€‹เบชเบนเปˆโ€‹เบฅเบฐโ€‹เบšเบปเบšเบเบฐเบฅเบธเบ™เบฒ.

เบเบฒเบ™เบเบงเบ”เบชเบญเบš postgresql เบ—เบตเปˆเป€เบ›เบฑเบ™เป€เบˆเบปเป‰เบฒเบžเบฒเบšเบ‚เบญเบ‡เบ•เบปเบ™เป€เบญเบ‡ (เบเบฑเบš dashboard) เบ—เปˆเบฒเบ™เบžเบดเบˆเบฒเบฅเบฐเบ™เบฒเบ—เบตเปˆเบ”เบตเบ—เบตเปˆเบชเบธเบ”?

  • 30,0%Zabbix + เป€เบžเบตเปˆเบกเป€เบ•เบตเบกเบˆเบฒเบ Alexey Lesovsky เบซเบผเบท 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

เป€เบžเบตเปˆเบกเบ„เบงเบฒเบกเบ„เบดเบ”เป€เบซเบฑเบ™