αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‚αŸ’αžšαžΉαŸ‡αž“αŸƒαž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™ PostgreSQL αŸ” Alexey Lesovsky

αžαŸ’αž‰αž»αŸ†αžŸαŸ’αž“αžΎαž±αŸ’αž™αž’αŸ’αž“αž€αž’αžΆαž“αž”αŸ’αžšαžαž·αž…αžΆαžšαž·αž€αž“αŸƒαžšαž”αžΆαž™αž€αžΆαžšαžŽαŸαžŠαŸ„αž™ Alexey Lesovsky αž–αžΈ Data Egret "αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‚αŸ’αžšαžΉαŸ‡αž“αŸƒαž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™ PostgreSQL"

αž“αŸ…αž€αŸ’αž“αž»αž„αžšαž”αžΆαž™αž€αžΆαžšαžŽαŸαž“αŸαŸ‡ Alexey Lesovsky αž“αžΉαž„αž“αž·αž™αžΆαž™αž’αŸ†αž–αžΈαž…αŸ†αžŽαž»αž…αžŸαŸ†αžαžΆαž“αŸ‹αŸ—αž“αŸƒαžŸαŸ’αžαž·αžαž·αž€αŸ’αžšαŸ„αž™αž€αžΆαžšαžˆαŸ’αž›αžΆαž“αž–αžΆαž“ αžαžΎαž–αž½αž€αž‚αŸαž˜αžΆαž“αž“αŸαž™αž™αŸ‰αžΆαž„αžŽαžΆ αž“αž·αž„αž αŸαžαž»αž’αŸ’αžœαžΈαž”αžΆαž“αž‡αžΆαž–αž½αž€αž‚αŸαž‚αž½αžšαžαŸ‚αž˜αžΆαž“αžœαžαŸ’αžαž˜αžΆαž“αž€αŸ’αž“αž»αž„αž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αŸ” αž’αŸ†αž–αžΈαž€αŸ’αžšαžΆαž αŸ’αžœαžŠαŸ‚αž›αž‚αž½αžšαžŸαŸ’αžαž·αžαž“αŸ…αž€αŸ’αž“αž»αž„αž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™ αžšαž”αŸ€αž”αž”αž“αŸ’αžαŸ‚αž˜αž–αž½αž€αžœαžΆ αž“αž·αž„αžšαž”αŸ€αž”αž”αž€αžŸαŸ’αžšαžΆαž™αžœαžΆαŸ” αžšαž”αžΆαž™αž€αžΆαžšαžŽαŸαž“αŸαŸ‡αž“αžΉαž„αž˜αžΆαž“αž”αŸ’αžšαž™αŸ„αž‡αž“αŸαž…αŸ†αž–αŸ„αŸ‡αž’αŸ’αž“αž€αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™ αž’αŸ’αž“αž€αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αž”αŸ’αžšαž–αŸαž“αŸ’αž’ αž“αž·αž„αž’αŸ’αž“αž€αž’αž—αž·αžœαžŒαŸ’αžαž“αŸαžŠαŸ‚αž›αž…αžΆαž”αŸ‹αž’αžΆαžšαž˜αŸ’αž˜αžŽαŸαž›αžΎαž€αžΆαžšαžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž”αž‰αŸ’αž αžΆ PostgresαŸ”

αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‚αŸ’αžšαžΉαŸ‡αž“αŸƒαž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™ PostgreSQL αŸ” Alexey Lesovsky

αžˆαŸ’αž˜αŸ„αŸ‡αžšαž”αžŸαŸ‹αžαŸ’αž‰αž»αŸ†αž‚αžΊ Alexey Lesovsky αžαŸ’αž‰αž»αŸ†αžαŸ†αžŽαžΆαž„αž±αŸ’αž™αž€αŸ’αžšαž»αž˜αž αŸŠαž»αž“ Data Egret αŸ”

αž–αžΆαž€αŸ’αž™αž–αžΈαžšαž”αžΈαž’αŸ†αž–αžΈαžαŸ’αž›αž½αž“αžαŸ’αž‰αž»αŸ†αŸ” αžαŸ’αž‰αž»αŸ†αž”αžΆαž“αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αžαžΆαŸ†αž„αž–αžΈαž™αžΌαžšαž™αžΆαžšαžŽαžΆαžŸαŸ‹αž˜αž€αž αžΎαž™αž€αŸ’αž“αž»αž„αž“αžΆαž˜αž‡αžΆαž’αŸ’αž“αž€αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αž”αŸ’αžšαž–αŸαž“αŸ’αž’αŸ”

αžαŸ’αž‰αž»αŸ†αž”αžΆαž“αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αž‚αŸ’αžšαž”αŸ‹αž”αŸ’αžšαž—αŸαž‘αž“αŸƒαž”αŸ’αžšαž–αŸαž“αŸ’αž’αž›αžΈαž“αž»αž…αž•αŸ’αžŸαŸαž„αŸ—αž‚αŸ’αž“αžΆ αž’αŸ’αžœαžΎαž€αžΆαžšαž›αžΎαž’αŸ’αžœαžΈαŸ—αž•αŸ’αžŸαŸαž„αŸ—αžŠαŸ‚αž›αž‘αžΆαž€αŸ‹αž‘αž„αž“αžΉαž„αž›αžΈαž“αž»αž… αž–αŸ„αž›αž‚αžΊαž“αž·αž˜αŸ’αž˜αž·αž αž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™ αž’αŸ’αžœαžΎαž€αžΆαžšαž‡αžΆαž˜αž½αž™αž”αŸ’αžšαžΌαž€αžŸαŸŠαžΈαŸ” αžαŸ’αž‰αž»αŸ†αž–αž·αžαž‡αžΆαž…αžΌαž›αž…αž·αžαŸ’αžαž‚αžΆαžαŸ‹αžŽαžΆαžŸαŸ‹αŸ” αž αžΎαž™αž“αŸ…αž…αŸ†αžŽαž»αž…αžαŸ’αž›αŸ‡αžαŸ’αž‰αž»αŸ†αž”αžΆαž“αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αž’αŸ’αžœαžΎαž€αžΆαžšαž›αžΎ PostgreSQL αž—αžΆαž‚αž…αŸ’αžšαžΎαž“αž“αŸƒαž–αŸαž›αžœαŸαž›αžΆαž’αŸ’αžœαžΎαž€αžΆαžšαžšαž”αžŸαŸ‹αžαŸ’αž‰αž»αŸ†αŸ” αžŠαžΌαž…αŸ’αž“αŸαŸ‡αž”αž“αŸ’αžαž·αž…αž˜αŸ’αžαž„αžαŸ’αž‰αž»αŸ†αž”αžΆαž“αž€αŸ’αž›αžΆαž™αž‡αžΆ PostgreSQL DBA αŸ”

αž αžΎαž™αž–αŸαž‰αž˜αž½αž™αž’αžΆαž‡αžΈαž–αžšαž”αžŸαŸ‹αžαŸ’αž‰αž»αŸ† αžαŸ’αž‰αž»αŸ†αžαŸ‚αž„αžαŸ‚αž…αžΆαž”αŸ‹αž’αžΆαžšαž˜αŸ’αž˜αžŽαŸαž›αžΎαž”αŸ’αžšαž’αžΆαž“αž”αž‘αž“αŸƒαžŸαŸ’αžαž·αžαž· αž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™ αž“αž·αž„αž‘αžΌαžšαž›αŸαžαŸ” αž αžΎαž™αž“αŸ…αž–αŸαž›αžŠαŸ‚αž›αžαŸ’αž‰αž»αŸ†αž‡αžΆαž’αŸ’αž“αž€αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αž”αŸ’αžšαž–αŸαž“αŸ’αž’ αžαŸ’αž‰αž»αŸ†αž”αžΆαž“αž’αŸ’αžœαžΎαž€αžΆαžšαž™αŸ‰αžΆαž„αž‡αž·αžαžŸαŸ’αž“αž·αž‘αŸ’αž’αž‡αžΆαž˜αž½αž™ Zabbix αŸ” αž αžΎαž™αžαŸ’αž‰αž»αŸ†αž”αžΆαž“αžŸαžšαžŸαŸαžšαžŸαŸ†αžŽαž»αŸ†αžαžΌαž…αž˜αž½αž™αž“αŸƒαžŸαŸ’αž‚αŸ’αžšαžΈαž”αžŠαžΌαž…αž‡αžΆ zabbix-αž•αŸ’αž“αŸ‚αž€αž”αž“αŸ’αžαŸ‚αž˜. αž‚αžΆαžαŸ‹αž˜αžΆαž“αž”αŸ’αžšαž‡αžΆαž”αŸ’αžšαž·αž™αž—αžΆαž–αžαŸ’αž›αžΆαŸ†αž„αž“αŸ…αžŸαž˜αŸαž™αžšαž”αžŸαŸ‹αž‚αžΆαžαŸ‹αŸ” αž αžΎαž™αž“αŸ…αž‘αžΈαž“αŸ„αŸ‡ αžœαžΆαž’αžΆαž…αžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αžœαžαŸ’αžαž»αžŸαŸ†αžαžΆαž“αŸ‹αŸ—αž•αŸ’αžŸαŸαž„αŸ—αž‚αŸ’αž“αžΆ αž˜αž·αž“αžαŸ’αžšαžΉαž˜αžαŸ‚αž›αžΈαž“αž»αž…αž”αŸ‰αž»αžŽαŸ’αžŽαŸ„αŸ‡αž‘αŸ αžαŸ‚αž˜αž‘αžΆαŸ†αž„αž˜αžΆαž“αžŸαž˜αžΆαžŸαž’αžΆαžαž»αž•αŸ’αžŸαŸαž„αŸ—αž‘αŸ€αžαž•αž„αŸ”

αž₯αž‘αžΌαžœαž“αŸαŸ‡αžαŸ’αž‰αž»αŸ†αž€αŸ†αž–αž»αž„αž’αŸ’αžœαžΎαž€αžΆαžšαž›αžΎ PostgreSQL αŸ” αžαŸ’αž‰αž»αŸ†αž€αŸ†αž–αž»αž„αžŸαžšαžŸαŸαžšαžšαžΏαž„αž˜αž½αž™αž‘αŸ€αžαžŠαŸ‚αž›αž’αž“αž»αž‰αŸ’αž‰αžΆαžαž±αŸ’αž™αž’αŸ’αž“αž€αž’αŸ’αžœαžΎαž€αžΆαžšαž‡αžΆαž˜αž½αž™αžŸαŸ’αžαž·αžαž· PostgreSQL αŸ” αžœαžΆβ€‹αž αŸ…αžαžΆ pgCenter (αž’αžαŸ’αžαž”αž‘αž’αŸ†αž–αžΈ Habre - αžŸαŸ’αžαž·αžαž·αž€αŸ’αžšαŸ„αž™αž€αžΆαžšαž†αŸ’αž›αž„αžŠαŸ„αž™αž‚αŸ’αž˜αžΆαž“αžŸαžšαžŸαŸƒαž”αŸ’αžšαžŸαžΆαž‘ αž“αž·αž„αž—αžΆαž–αžαžΆαž“αžαžΉαž„).

αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‚αŸ’αžšαžΉαŸ‡αž“αŸƒαž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™ PostgreSQL αŸ” Alexey Lesovsky

αžŸαŸαž…αž€αŸ’αžαžΈαž•αŸ’αžαžΎαž˜αž”αž“αŸ’αžαž·αž…αŸ” αžαžΎαž’αžαž·αžαž·αž‡αž“αžšαž”αžŸαŸ‹αž™αžΎαž„ αž’αžαž·αžαž·αž‡αž“αžšαž”αžŸαŸ‹αž™αžΎαž„αž˜αžΆαž“αžŸαŸ’αžαžΆαž“αž—αžΆαž–αž”αŸ‚αž”αžŽαžΆ? αž˜αžΆαž“αž§αž”αž‘αŸ’αž‘αžœαž αŸαžαž»αž˜αž½αž™αž…αŸ†αž“αž½αž“αž‘αžΆαž€αŸ‹αž‘αž„αž“αžΉαž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αŸ” αž αžΎαž™αž“αŸ…αž–αŸαž›αžŠαŸ‚αž›αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αžαŸ’αžšαžΌαžœαž”αžΆαž“αžŸαŸ’αžŠαžΆαžšαž‘αžΎαž„αžœαž·αž‰αžšαž½αž…αž αžΎαž™ αž”αŸ’αžšαž’αžΆαž“αž“αžΆαž™αž€αžŠαŸ’αž‹αžΆαž“ αž¬αž”αŸ’αžšαž’αžΆαž“αž•αŸ’αž“αŸ‚αž€αž’αž—αž·αžœαžŒαŸ’αžαž“αŸαž”αžΆαž“αž˜αž€ αž αžΎαž™αž“αž·αž™αžΆαž™αžαžΆαŸ– "αž˜αž·αžαŸ’αžαž—αŸαž€αŸ’αžαž· αž™αžΎαž„αžαŸ’αžšαžΌαžœαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™ αž–αŸ’αžšαŸ„αŸ‡αž˜αžΆαž“αžšαžΏαž„αž’αžΆαž€αŸ’αžšαž€αŸ‹αž”αžΆαž“αž€αžΎαžαž‘αžΎαž„ αž αžΎαž™αž™αžΎαž„αžαŸ’αžšαžΌαžœαž€αžΆαžšαž–αžΆαžšαž€αž»αŸ†αž±αŸ’αž™αžœαžΆαž€αžΎαžαž‘αžΎαž„αž“αŸ…αž–αŸαž›αž’αž“αžΆαž‚αž"αŸ” αž αžΎαž™αž“αŸ…αž‘αžΈαž“αŸαŸ‡αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž‚αž½αžšαž±αŸ’αž™αž…αžΆαž”αŸ‹αž’αžΆαžšαž˜αŸ’αž˜αžŽαŸαž€αŸ’αž“αž»αž„αž€αžΆαžšαž‡αŸ’αžšαžΎαžŸαžšαžΎαžŸαž”αŸ’αžšαž–αŸαž“αŸ’αž’αžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™ αž¬αžŸαž˜αŸ’αžšαž”αž”αŸ’αžšαž–αŸαž“αŸ’αž’αžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αžŠαŸ‚αž›αž˜αžΆαž“αžŸαŸ’αžšαžΆαž”αŸ‹ αžŠαžΌαž…αŸ’αž“αŸαŸ‡αž’αŸ’αž“αž€αž’αžΆαž…αžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αžšαž”αžŸαŸ‹αž’αŸ’αž“αž€ - PostgreSQL, MySQL αž¬αž˜αž½αž™αž…αŸ†αž“αž½αž“αž•αŸ’αžŸαŸαž„αž‘αŸ€αžαŸ” αž αžΎαž™αžŸαž αžŸαŸαžœαž·αž€αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αž•αŸ’αžαž›αŸ‹αž™αŸ„αž”αž›αŸ‹αžαžΆ β€œαžαŸ’αž‰αž»αŸ†αž”αžΆαž“αž›αžΊαžαžΆαž˜αžΆαž“αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž”αŸ‚αž”αž“αŸαŸ‡αŸ” αžαŸ„αŸ‡β€‹αž”αŸ’αžšαžΎβ€‹αžœαžΆΒ»αŸ” αž˜αž·αžαŸ’αžαžšαž½αž˜αž€αžΆαžšαž„αžΆαžšαž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αžˆαŸ’αž›αŸ„αŸ‡αž‚αŸ’αž“αžΆαŸ” αž αžΎαž™αž“αŸ…αž‘αžΈαž”αž‰αŸ’αž…αž”αŸ‹αžœαžΆαž”αŸ’αžšαŸ‚αžαžΆαž™αžΎαž„αž‡αŸ’αžšαžΎαžŸαžšαžΎαžŸαž”αŸ’αžšαž—αŸαž‘αž“αŸƒαž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž˜αž½αž™αž…αŸ†αž“αž½αž“αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™ PostgreSQL αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž„αŸ’αž αžΆαž‰αž“αŸ…αž€αŸ’αž“αž»αž„αžœαžΆαž˜αž·αž“αžŸαžΌαžœαž›αŸ’αž’αž αžΎαž™αž™αžΎαž„αžαŸ‚αž„αžαŸ‚αžαŸ’αžšαžΌαžœαž”αž“αŸ’αžαŸ‚αž˜αž’αŸ’αžœαžΈαž˜αž½αž™αŸ” αž™αž€αžƒαŸ’αž›αžΆαŸ†αž„αžαŸ’αž›αŸ‡αž–αžΈ GitHub αž€αŸ’αž›αžΌαž“αž–αž½αž€αžœαžΆ αžŸαž˜αŸ’αžšαž”αžŸαŸ’αž‚αŸ’αžšαžΈαž” αž“αž·αž„αž”αŸ’αžŠαžΌαžšαžαžΆαž˜αž”αŸ†αžŽαž„αŸ” αž αžΎαž™αž“αŸ…αž‘αžΈαž”αž‰αŸ’αž…αž”αŸ‹αžœαžΆαž”αž‰αŸ’αž…αž”αŸ‹αž‘αŸ…αž‡αžΆαž”αŸ’αžšαž—αŸαž‘αž“αŸƒαž€αžΆαžšαž„αžΆαžšαžŠαŸ„αž™αžŠαŸƒαž˜αž½αž™αž…αŸ†αž“αž½αž“αŸ”

αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‚αŸ’αžšαžΉαŸ‡αž“αŸƒαž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™ PostgreSQL αŸ” Alexey Lesovsky

αžŠαžΌαž…αŸ’αž“αŸαŸ‡αž αžΎαž™ αž“αŸ…αž€αŸ’αž“αž»αž„αž€αžΆαžšαž–αž·αž—αžΆαž€αŸ’αžŸαžΆαž“αŸαŸ‡ αžαŸ’αž‰αž»αŸ†αž“αžΉαž„αž–αŸ’αž™αžΆαž™αžΆαž˜αž•αŸ’αžŠαž›αŸ‹αž±αŸ’αž™αž’αŸ’αž“αž€αž“αžΌαžœαž…αŸ†αžŽαŸαŸ‡αžŠαžΉαž„αž˜αž½αž™αž…αŸ†αž“αž½αž“αž’αŸ†αž–αžΈαžšαž”αŸ€αž”αž‡αŸ’αžšαžΎαžŸαžšαžΎαžŸαž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αž˜αž·αž“αžαŸ’αžšαžΉαž˜αžαŸ‚αžŸαž˜αŸ’αžšαžΆαž”αŸ‹ PostgreSQL αž”αŸ‰αž»αžŽαŸ’αžŽαŸ„αŸ‡αž‘αŸ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž•αž„αžŠαŸ‚αžšαŸ” αž αžΎαž™αž•αŸ’αžαž›αŸ‹αž±αŸ’αž™αž’αŸ’αž“αž€αž“αžΌαžœαž…αŸ†αžŽαŸαŸ‡αžŠαžΉαž„αžŠαŸ‚αž›αž“αžΉαž„αž’αž“αž»αž‰αŸ’αž‰αžΆαžαž±αŸ’αž™αž’αŸ’αž“αž€αž”αŸ†αž–αŸαž‰αž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αžšαž”αžŸαŸ‹αž’αŸ’αž“αž€ αžŠαžΎαž˜αŸ’αž”αžΈαž‘αž‘αž½αž›αž”αžΆαž“αž’αžαŸ’αžαž”αŸ’αžšαž™αŸ„αž‡αž“αŸαž˜αž½αž™αž…αŸ†αž“αž½αž“αž–αžΈαžœαžΆ αžŠαžΌαž…αŸ’αž“αŸαŸ‡αž’αŸ’αž“αž€αž’αžΆαž…αžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αž‡αžΆαž˜αž½αž™αž“αžΉαž„αž’αžαŸ’αžαž”αŸ’αžšαž™αŸ„αž‡αž“αŸ αžŠαžΎαž˜αŸ’αž”αžΈαž€αžΆαžšαž–αžΆαžšαž—αŸ’αž›αžΆαž˜αŸ—αž“αžΌαžœαžŸαŸ’αžαžΆαž“αž—αžΆαž–αž’αžΆαžŸαž“αŸ’αž“αžŠαŸ‚αž›αž’αžΆαž…αž€αžΎαžαž‘αžΎαž„αž“αžΆαž–αŸαž›αžαžΆαž„αž˜αž»αžαŸ”

αž αžΎαž™β€‹αž‚αŸ†αž“αž·αžβ€‹αžŠαŸ‚αž›β€‹αž“αžΉαž„β€‹αž˜αžΆαž“β€‹αž“αŸ…β€‹αž€αŸ’αž“αž»αž„β€‹αžšαž”αžΆαž™β€‹αž€αžΆαžšαžŽαŸβ€‹αž“αŸαŸ‡β€‹αž’αžΆαž…β€‹αžαŸ’αžšαžΌαžœβ€‹αž”αžΆαž“β€‹αžŸαž˜αŸ’αžšαž”β€‹αžŠαŸ„αž™β€‹αž•αŸ’αž‘αžΆαž›αŸ‹β€‹αž‘αŸ…β€‹αž“αžΉαž„β€‹αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“β€‹αž‘αž·αž“αŸ’αž“αž“αŸαž™β€‹αžŽαžΆβ€‹αž˜αž½αž™ αž˜αž·αž“β€‹αžαžΆβ€‹αžœαžΆβ€‹αž‡αžΆ DBMS ឬ noSQL αž‘αŸαŸ” αžŠαžΌαž…αŸ’αž“αŸαŸ‡αž αžΎαž™ αžœαžΆαž˜αž·αž“αžαŸ’αžšαžΉαž˜αžαŸ‚αž˜αžΆαž“ PostgreSQL αž”αŸ‰αž»αžŽαŸ’αžŽαŸ„αŸ‡αž‘αŸ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αžœαžΆαž“αžΉαž„αž˜αžΆαž“αžšαžΌαž”αž˜αž“αŸ’αžαž‡αžΆαž…αŸ’αžšαžΎαž“αž’αŸ†αž–αžΈαžšαž”αŸ€αž”αž’αŸ’αžœαžΎαžœαžΆαž“αŸ…αž€αŸ’αž“αž»αž„ PostgreSQL αŸ” αžœαžΆαž“αžΉαž„αž˜αžΆαž“αž§αž‘αžΆαž αžšαžŽαŸαž“αŸƒαžŸαŸ†αžŽαž½αžšαž§αž‘αžΆαž αžšαžŽαŸαž“αŸƒαž’αž„αŸ’αž‚αž—αžΆαž–αžŠαŸ‚αž› PostgreSQL αž˜αžΆαž“αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αŸ” αž αžΎαž™αž”αŸ’αžšαžŸαž·αž“αž”αžΎ DBMS αžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αž˜αžΆαž“αžšαž”αžŸαŸ‹αžŠαžΌαž…αž‚αŸ’αž“αžΆαžŠαŸ‚αž›αž’αž“αž»αž‰αŸ’αž‰αžΆαžαž±αŸ’αž™αž’αŸ’αž“αž€αžŠαžΆαž€αŸ‹αž–αž½αž€αžœαžΆαž€αŸ’αž“αž»αž„αž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™ αž’αŸ’αž“αž€αž€αŸαž’αžΆαž…αžŸαž˜αŸ’αžšαž”αž–αž½αž€αžœαžΆ αž”αž“αŸ’αžαŸ‚αž˜αž–αž½αž€αžœαžΆ αž αžΎαž™αžœαžΆαž“αžΉαž„αž›αŸ’αž’αŸ”

αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‚αŸ’αžšαžΉαŸ‡αž“αŸƒαž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™ PostgreSQL αŸ” Alexey LesovskyαžαŸ’αž‰αž»αŸ†αž“αžΉαž„αž˜αž·αž“αž“αŸ…αž€αŸ’αž“αž»αž„αžšαž”αžΆαž™αž€αžΆαžšαžŽαŸαž‘αŸαŸ”
αž“αž·αž™αžΆαž™αž’αŸ†αž–αžΈαžšαž”αŸ€αž”αž…αŸ‚αž€αž…αžΆαž™ αž“αž·αž„αžšαž€αŸ’αžŸαžΆαž‘αž»αž€αž˜αŸ‰αŸ‚αžαŸ’αžšαŸ” αžαŸ’αž‰αž»αŸ†αž“αžΉαž„αž˜αž·αž“αž“αž·αž™αžΆαž™αž’αŸ’αžœαžΈαž’αŸ†αž–αžΈαž€αŸ’αžšαŸ„αž™αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž‘αž·αž“αŸ’αž“αž“αŸαž™ αž“αž·αž„αž”αž„αŸ’αž αžΆαž‰αžœαžΆαžŠαž›αŸ‹αž’αŸ’αž“αž€αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž“αŸ„αŸ‡αž‘αŸαŸ” αž αžΎαž™αžαŸ’αž‰αž»αŸ†αž“αžΉαž„αž˜αž·αž“αž“αž·αž™αžΆαž™αž’αŸ’αžœαžΈαž’αŸ†αž–αžΈαž€αžΆαžšαž‡αžΌαž“αžŠαŸ†αžŽαžΉαž„αž‘αŸαŸ”
αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž“αŸ…αž–αŸαž›αžŠαŸ‚αž›αžšαžΏαž„αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž‘αŸ…αž˜αž»αž αžαŸ’αž‰αž»αŸ†αž“αžΉαž„αž”αž„αŸ’αž αžΆαž‰αžšαžΌαž”αžαžαž’αŸαž€αŸ’αžšαž„αŸ‹αž•αŸ’αžŸαŸαž„αŸ—αž‚αŸ’αž“αžΆαž“αŸƒαž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αžŠαŸ‚αž›αž˜αžΆαž“αžŸαŸ’αžšαžΆαž”αŸ‹ αž αžΎαž™αž’αŸ’αžœαžΎαž€αžΆαžšαžšαž·αŸ‡αž‚αž“αŸ‹αž–αž½αž€αž‚αŸαŸ” αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž™αŸ‰αžΆαž„αžŽαžΆαž€αŸαžŠαŸ„αž™ αžαŸ’αž‰αž»αŸ†αž“αžΉαž„αž–αŸ’αž™αžΆαž™αžΆαž˜αž˜αž·αž“αžŠαžΆαž€αŸ‹αžˆαŸ’αž˜αŸ„αŸ‡αž˜αŸ‰αžΆαž€αž™αžΈαž αŸ„ αžŠαžΎαž˜αŸ’αž”αžΈαž€αž»αŸ†αž±αŸ’αž™αž”αž„αŸ’αž€αžΎαžαž€αžΆαžšαž•αŸ’αžŸαžΆαž™αž–αžΆαžŽαž·αž‡αŸ’αž‡αž€αž˜αŸ’αž˜ αž¬αž”αŸ’αžšαž†αžΆαŸ†αž„αž€αžΆαžšαž•αŸ’αžŸαžΆαž™αž–αžΆαžŽαž·αž‡αŸ’αž‡αž€αž˜αŸ’αž˜αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž•αž›αž·αžαž•αž›αž‘αžΆαŸ†αž„αž“αŸαŸ‡αŸ” αžŠαžΌαž…αŸ’αž“αŸαŸ‡ αž—αžΆαž–αž…αŸƒαžŠαž“αŸ’αž™αž‘αžΆαŸ†αž„αž’αžŸαŸ‹αž‚αžΊαž…αŸƒαžŠαž“αŸ’αž™ αž αžΎαž™αž‘αž»αž€αž‡αžΆαž€αžΆαžšαžŸαŸ’αžšαž˜αžΎαž›αžŸαŸ’αžšαž˜αŸƒαžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αŸ”
αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‚αŸ’αžšαžΉαŸ‡αž“αŸƒαž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™ PostgreSQL αŸ” Alexey Lesovsky
αž‡αžΆαžŠαŸ†αž”αžΌαž„ αž…αžΌαžšαž™αžΎαž„αžŸαŸ’αžœαŸ‚αž„αž™αž›αŸ‹αžαžΆαžαžΎαž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αž‚αžΊαž‡αžΆαž’αŸ’αžœαžΈαŸ” αž€αžΆαžšβ€‹αžαžΆαž˜β€‹αžŠαžΆαž“β€‹αž‡αžΆβ€‹αžšαžΏαž„β€‹αžŸαŸ†αžαžΆαž“αŸ‹β€‹αžŽαžΆαžŸαŸ‹β€‹αžŠαŸ‚αž›β€‹αžαŸ’αžšαžΌαžœβ€‹αž˜αžΆαž“αŸ” αž˜αž“αž»αžŸαŸ’αžŸαž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αž“αžΆαž™αž›αŸ‹αž–αžΈαžšαžΏαž„αž“αŸαŸ‡αŸ” αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž€αŸ’αž“αž»αž„αž–αŸαž›αž‡αžΆαž˜αž½αž™αž‚αŸ’αž“αžΆαž“αŸαŸ‡ αž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αž˜αž·αž“αž‘αžΆαž€αŸ‹αž‘αž„αž“αžΉαž„αž•αž›αž·αžαž•αž›αž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αž‘αŸ αž αžΎαž™αž˜αž·αž“αž”αŸ‰αŸ‡αž–αžΆαž›αŸ‹αž•αŸ’αž‘αžΆαž›αŸ‹αžŠαž›αŸ‹αž”αŸ’αžšαžΆαž€αŸ‹αž…αŸ†αžŽαŸαž‰αžšαž”αžŸαŸ‹αž€αŸ’αžšαž»αž˜αž αŸŠαž»αž“αž‘αŸ αžŠαžΌαž…αŸ’αž“αŸαŸ‡αž–αŸαž›αžœαŸαž›αžΆαžαŸ‚αž„αžαŸ‚αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αŸ‚αž„αž…αŸ‚αž€αž‘αŸ…αž±αŸ’αž™αž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αž›αžΎαž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αžŸαŸ†αžŽαž›αŸ‹αŸ” αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž™αžΎαž„αž˜αžΆαž“αž–αŸαž› αž“αŸ„αŸ‡αž™αžΎαž„αž’αŸ’αžœαžΎαž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™ αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž™αžΎαž„αž˜αž·αž“αž˜αžΆαž“αž–αŸαž›αž‘αŸ αž“αŸ„αŸ‡αž™αž›αŸ‹αž–αŸ’αžšαž˜ αž™αžΎαž„αž“αžΉαž„αžŠαžΆαž€αŸ‹αžœαžΆαž“αŸ…αž€αŸ’αž“αž»αž„ backlog αž αžΎαž™αžαŸ’αž„αŸƒαžŽαžΆαž˜αž½αž™ αž™αžΎαž„αž“αžΉαž„αžαŸ’αžšαž›αž”αŸ‹αž‘αŸ…αž€αž·αž…αŸ’αž…αž€αžΆαžšαž‘αžΆαŸ†αž„αž“αŸαŸ‡αžœαž·αž‰αŸ”

αžŠαžΌαž…αŸ’αž“αŸαŸ‡ αž–αžΈαž€αžΆαžšαž’αž“αž»αžœαžαŸ’αžαžšαž”αžŸαŸ‹αž™αžΎαž„ αž“αŸ…αž–αŸαž›αžŠαŸ‚αž›αž™αžΎαž„αž˜αž€αžšαž€αž’αžαž·αžαž·αž‡αž“ αž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αž‡αžΆαž‰αžΉαž€αž‰αžΆαž”αŸ‹αž˜αž·αž“αž–αŸαž‰αž›αŸαž‰ αž αžΎαž™αž˜αž·αž“αž˜αžΆαž“αž’αŸ’αžœαžΈαžŠαŸ‚αž›αž‚αž½αžšαž±αŸ’αž™αž…αžΆαž”αŸ‹αž’αžΆαžšαž˜αŸ’αž˜αžŽαŸαžŠαŸ‚αž›αž“αžΉαž„αž‡αž½αž™αž™αžΎαž„αž±αŸ’αž™αž’αŸ’αžœαžΎαž€αžΆαžšαž„αžΆαžšαž€αžΆαž“αŸ‹αžαŸ‚αž”αŸ’αžšαžŸαžΎαžšαž‡αžΆαž˜αž½αž™αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αŸ” αžŠαžΌαž…αŸ’αž“αŸαŸ‡αž αžΎαž™ αž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αžαŸ‚αž„αžαŸ‚αžαŸ’αžšαžΌαžœαž€αžΆαžšαž”αž‰αŸ’αž…αž”αŸ‹αŸ”

αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž‚αžΊαž‡αžΆαžšαžΏαž„αžŠαŸαžŸαŸ’αž˜αž»αž‚αžŸαŸ’αž˜αžΆαž‰αžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαžαŸ‚αžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αž•αž„αžŠαŸ‚αžš αž–αžΈαž–αŸ’αžšαŸ„αŸ‡αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž‚αžΊαž‡αžΆαžƒαŸ’αž›αžΆαŸ†αž„αž•αŸ’αž‘αž»αž€αž–αŸαžαŸŒαž˜αžΆαž“αŸ” αž αžΎαž™αž–αŸαžαŸŒαž˜αžΆαž“αž˜αžΆαž“αžŸαžΆαžšαŸˆαžŸαŸ†αžαžΆαž“αŸ‹αžŽαžΆαžŸαŸ‹αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αŸ’αžšαž»αž˜αž αŸŠαž»αž“ αžœαžΆαž˜αž·αž“αž’αžΆαž…αž”αžΆαžαŸ‹αž”αž„αŸ‹αžαžΆαž˜αž˜αž’αŸ’αž™αŸ„αž”αžΆαž™αžŽαžΆαž˜αž½αž™αž‘αžΎαž™αŸ” αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž“αŸ…αž–αŸαž›αž‡αžΆαž˜αž½αž™αž‚αŸ’αž“αžΆαž“αŸ„αŸ‡ αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž‚αžΊαž‡αžΆαž•αŸ’αž“αŸ‚αž€αžŠαŸαžŸαŸ’αž˜αž»αž‚αžŸαŸ’αž˜αžΆαž‰αž“αŸƒαž€αž˜αŸ’αž˜αžœαž·αž’αžΈαŸ” αž–αž½αž€αžœαžΆαž˜αžΆαž“αžŸαž˜αžΆαžŸαž’αžΆαžαž»αž˜αž½αž™αž…αŸ†αž“αž½αž“αž’αŸ†αŸ” αž αžΎαž™αžŸαž˜αžΆαžŸαž’αžΆαžαž»αž‘αžΆαŸ†αž„αž“αŸαŸ‡αž‡αžΆαž…αŸ’αžšαžΎαž“αž…αžΆαŸ†αž”αžΆαž…αŸ‹αžαŸ’αžšαžΌαžœαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αŸ”

αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‚αŸ’αžšαžΉαŸ‡αž“αŸƒαž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™ 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

αž αžΎαž™αž‘αžΆαŸ†αž„αž’αžŸαŸ‹αž“αŸαŸ‡αž“αŸ…αž€αŸ’αž“αž»αž„αž›αž€αŸ’αžαžαžŽαŸ’αžŒαž“αŸƒαž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž“αŸ…αžαŸ‚αž˜αžΆαž“αž“αŸ…αž€αŸ’αž“αž»αž„αž”αŸ’αžšαž–αŸαž“αŸ’αž’αž˜αŸ‰αŸ‚αžαŸ’αžšαŸ” αž”αŸ‰αž»αž“αŸ’αžαŸ‚β€‹αžŠαŸ„αž™β€‹αž–αž·αž…αžΆαžšαžŽαžΆβ€‹αžαžΆβ€‹αž αŸαžŠαŸ’αž‹αžΆαžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’β€‹αž—αžΆαž‚αž…αŸ’αžšαžΎαž“β€‹αžšαž”αžŸαŸ‹β€‹αž™αžΎαž„β€‹αž€αŸ†αž–αž»αž„β€‹αž•αŸ’αž›αžΆαžŸαŸ‹β€‹αž‘αžΈβ€‹αž‘αŸ…β€‹αž›αžΎβ€‹αž–αž–αž€β€‹αž“αŸ„αŸ‡ αžšαž„αŸ’αžœαžΆαžŸαŸ‹β€‹αž”αŸ’αžšαž–αŸαž“αŸ’αž’β€‹αž“αŸƒβ€‹αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“β€‹αž”αž»αž‚αŸ’αž‚αž›β€‹αžαŸ‚αž„αžαŸ‚β€‹αž’αŸ’αž›αžΆαž€αŸ‹β€‹αž…αž»αŸ‡β€‹αž€αŸ’αž“αž»αž„β€‹αž•αŸ’αž‘αŸƒβ€‹αžαžΆαž„β€‹αž€αŸ’αžšαŸ„αž™αŸ” αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž–αž½αž€αž‚αŸαž“αŸ…αžαŸ‚αž–αžΆαž€αŸ‹αž–αŸαž“αŸ’αž’ αž αžΎαž™αž‡αžΆαž€αžΆαžšαž–αž·αžαžŽαžΆαžŸαŸ‹ αžœαžΆαž€αŸαž…αžΆαŸ†αž”αžΆαž…αŸ‹αž€αŸ’αž“αž»αž„αž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αž”αŸ’αžšαž–αŸαž“αŸ’αž’αž˜αŸ‰αŸ‚αžαŸ’αžšαž•αž„αžŠαŸ‚αžšαŸ”

αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‚αŸ’αžšαžΉαŸ‡αž“αŸƒαž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™ PostgreSQL αŸ” Alexey Lesovsky

αž’αŸ’αžœαžΈαž‚αŸ’αžšαž”αŸ‹αž™αŸ‰αžΆαž„αž‚αžΊαž›αŸ’αž’αž…αŸ’αžšαžΎαž“ αž¬αžαž·αž…αž‡αžΆαž˜αž½αž™αž“αžΉαž„αžšαž„αŸ’αžœαžΆαžŸαŸ‹αž”αŸ’αžšαž–αŸαž“αŸ’αž’ αž”αŸ’αžšαž–αŸαž“αŸ’αž’αžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αž‘αŸ†αž“αžΎαž”αž‘αžΆαŸ†αž„αž’αžŸαŸ‹αž‚αžΆαŸ†αž‘αŸ’αžšαžšαž„αŸ’αžœαžΆαžŸαŸ‹αž‘αžΆαŸ†αž„αž“αŸαŸ‡αžšαž½αž…αž αžΎαž™ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž‡αžΆαž‘αžΌαž‘αŸ… αžŸαž˜αžΆαžŸαž’αžΆαžαž»αž˜αž½αž™αž…αŸ†αž“αž½αž“αž“αŸ…αžαŸ‚αž˜αž·αž“αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαžΆαž“αŸ‹ αž αžΎαž™αž’αŸ’αžœαžΈαŸ—αžαŸ’αž›αŸ‡αžαŸ’αžšαžΌαžœαž”αž“αŸ’αžαŸ‚αž˜αŸ” αžαŸ’αž‰αž»αŸ†αž€αŸαž“αžΉαž„αž”αŸ‰αŸ‡αž–αž½αž€αžœαžΆαžŠαŸ‚αžš αžœαžΆαž“αžΉαž„αž˜αžΆαž“αžŸαŸ’αž›αžΆαž™αž‡αžΆαž…αŸ’αžšαžΎαž“αž’αŸ†αž–αžΈαž–αž½αž€αž‚αŸαŸ”

αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‚αŸ’αžšαžΉαŸ‡αž“αŸƒαž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™ PostgreSQL αŸ” Alexey Lesovsky
αž…αŸ†αžŽαž»αž…αžŠαŸ†αž”αžΌαž„αž“αŸƒαž•αŸ‚αž“αž€αžΆαžšαž‚αžΊαž—αžΆαž–αž„αžΆαž™αžŸαŸ’αžšαž½αž›αŸ” αžαžΎαž’αŸ’αžœαžΈαž‡αžΆαž—αžΆαž–αž„αžΆαž™αžŸαŸ’αžšαž½αž›? αž—αžΆαž–αž’αžΆαž…αžšαž€αž”αžΆαž“αž“αŸ…αž€αŸ’αž“αž»αž„αž€αžΆαžšαž™αž›αŸ‹αžŠαžΉαž„αžšαž”αžŸαŸ‹αžαŸ’αž‰αž»αŸ†αž‚αžΊαž‡αžΆαžŸαž˜αžαŸ’αžαž—αžΆαž–αž“αŸƒαž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αŸ…αž“αžΉαž„αž€αžΆαžšαžαž—αŸ’αž‡αžΆαž”αŸ‹αžŸαŸαžœαžΆαž€αž˜αŸ’αž˜ αž–αŸ„αž›αž‚αžΊαž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αžαŸ’αžšαžΌαžœαž”αžΆαž“αž›αžΎαž€αž‘αžΎαž„ αžœαžΆαžŠαžΌαž…αž‡αžΆαžŸαŸαžœαžΆαž€αž˜αŸ’αž˜αž˜αž½αž™ αž‘αž‘αž½αž›αž™αž€αž€αžΆαžšαžαž—αŸ’αž‡αžΆαž”αŸ‹αž–αžΈαž’αžαž·αžαž·αž‡αž“αŸ” αž αžΎαž™αž›αž‘αŸ’αž’αž—αžΆαž–αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž“αŸαŸ‡αž’αžΆαž…αžαŸ’αžšαžΌαžœαž”αžΆαž“αžœαžΆαž™αžαž˜αŸ’αž›αŸƒαžŠαŸ„αž™αž›αž€αŸ’αžαžŽαŸˆαž‡αžΆαž€αŸ‹αž›αžΆαž€αŸ‹αŸ” αžœαžΆαž„αžΆαž™αžŸαŸ’αžšαž½αž›αžŽαžΆαžŸαŸ‹αž€αŸ’αž“αž»αž„αž€αžΆαžšαž”αž„αŸ’αž αžΆαž‰αž›αž€αŸ’αžαžŽαŸˆαž‘αžΆαŸ†αž„αž“αŸαŸ‡αž“αŸ…αž›αžΎαž•αŸ’αž‘αžΆαŸ†αž„αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αŸ”

αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‚αŸ’αžšαžΉαŸ‡αž“αŸƒαž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™ PostgreSQL αŸ” Alexey Lesovsky
αž˜αž“αž»αžŸαŸ’αžŸαž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αž“αžΆαžŠαžΉαž„αžαžΆαž•αŸ’αž‘αžΆαŸ†αž„αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αž‚αžΊαž‡αžΆαž’αŸ’αžœαžΈαŸ” αž“αŸαŸ‡αž‚αžΊαž‡αžΆαž–αŸαž›αžŠαŸ‚αž›αž’αŸ’αž“αž€αž˜αžΎαž›αž’αŸαž€αŸ’αžšαž„αŸ‹αž˜αž½αž™ αžŠαŸ‚αž›αž–αŸαžαŸŒαž˜αžΆαž“αž…αžΆαŸ†αž”αžΆαž…αŸ‹αžαŸ’αžšαžΌαžœαž”αžΆαž“αžŸαž„αŸ’αžαŸαž”αŸ” αž αžΎαž™αž’αŸ’αž“αž€αž’αžΆαž…αž€αŸ†αžŽαžαŸ‹αž—αŸ’αž›αžΆαž˜αŸ—αžαžΆαžαžΎαž˜αžΆαž“αž”αž‰αŸ’αž αžΆαž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž¬αž’αžαŸ‹αŸ”
αžŠαžΌαž…αŸ’αž“αŸ„αŸ‡αž αžΎαž™ αž—αžΆαž–αž’αžΆαž…αžšαž€αž”αžΆαž“αž“αŸƒαž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™ αž“αž·αž„αž›αž€αŸ’αžαžŽαŸˆαžŸαŸ†αžαžΆαž“αŸ‹αŸ—αž•αŸ’αžŸαŸαž„αž‘αŸ€αžαž‚αž½αžšαžαŸ‚αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž„αŸ’αž αžΆαž‰αž“αŸ…αž›αžΎαž•αŸ’αž‘αžΆαŸ†αž„αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αž‡αžΆαž“αž·αž…αŸ’αž… αžŠαžΌαž…αŸ’αž“αŸαŸ‡αž–αŸαžαŸŒαž˜αžΆαž“αž“αŸαŸ‡αž‚αžΊαž“αŸ…αž“αžΉαž„αžŠαŸƒ αž αžΎαž™αžαŸ‚αž„αžαŸ‚αž˜αžΆαž“αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž’αŸ’αž“αž€αŸ” αž–αŸαžαŸŒαž˜αžΆαž“αž›αž˜αŸ’αž’αž·αžαž”αž“αŸ’αžαŸ‚αž˜αž˜αž½αž™αž…αŸ†αž“αž½αž“αžŠαŸ‚αž›αž‡αž½αž™αž€αŸ’αž“αž»αž„αž€αžΆαžšαžŸαŸŠαžΎαž”αž’αž„αŸ’αž€αŸαžαž§αž”αŸ’αž”αžαŸ’αžαž·αž αŸαžαž»αžšαž½αž…αž αžΎαž™ αž“αŸ…αž–αŸαž›αžŸαŸŠαžΎαž”αž’αž„αŸ’αž€αŸαžαžŸαŸ’αžαžΆαž“αž—αžΆαž–αž’αžΆαžŸαž“αŸ’αž“αž˜αž½αž™αž…αŸ†αž“αž½αž“ αž–αž½αž€αžœαžΆαžαŸ’αžšαžΌαžœαžŠαžΆαž€αŸ‹αž“αŸ…αž›αžΎαž•αŸ’αž‘αžΆαŸ†αž„αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž”αž“αŸ’αžŸαŸ†αžšαž½αž…αž αžΎαž™ αž¬αž›αžΆαž€αŸ‹αž“αŸ…αž€αŸ’αž“αž»αž„αžαŸ†αžŽαž—αŸ’αž‡αžΆαž”αŸ‹αžαž½αž„αžŠαŸ‚αž›αž“αžΆαŸ†αž‘αŸ…αžŠαž›αŸ‹αž”αŸ’αžšαž–αŸαž“αŸ’αž’αžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αž—αžΆαž‚αžΈαž‘αžΈαž”αžΈαŸ”

αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‚αŸ’αžšαžΉαŸ‡αž“αŸƒαž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™ PostgreSQL αŸ” Alexey Lesovsky

αž§αž‘αžΆαž αžšαžŽαŸαž“αŸƒαž”αŸ’αžšαž–αŸαž“αŸ’αž’αžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αžŠαŸαž›αŸ’αž”αžΈαž˜αž½αž™αŸ” αž“αŸαŸ‡αž‚αžΊαž‡αžΆαž”αŸ’αžšαž–αŸαž“αŸ’αž’αžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αžŠαŸαžαŸ’αžšαž‡αžΆαž€αŸ‹αž”αŸ†αž•αž»αžαŸ” αž“αžΆαž„αž”αŸ’αžšαž˜αžΌαž›αž‘αž·αž“αŸ’αž“αž“αŸαž™αž‡αžΆαž…αŸ’αžšαžΎαž“ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αžαžΆαž˜αž‘αžŸαŸ’αžŸαž“αŸˆαžšαž”αžŸαŸ‹αžαŸ’αž‰αž»αŸ† αž“αžΆαž„αž˜αžΆαž“αž‚αŸ†αž“αž·αžαž…αž˜αŸ’αž›αŸ‚αž€αž“αŸƒαž•αŸ’αž‘αžΆαŸ†αž„αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αŸ” αž˜αžΆαž“αžαŸ†αžŽαž—αŸ’αž‡αžΆαž”αŸ‹αž‘αŸ… "αž”αž„αŸ’αž€αžΎαžαž•αŸ’αž‘αžΆαŸ†αž„αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„" αŸ” αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž“αŸ…αž–αŸαž›αž’αŸ’αž“αž€αž”αž„αŸ’αž€αžΎαžαž•αŸ’αž‘αžΆαŸ†αž„αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„ αž’αŸ’αž“αž€αž”αž„αŸ’αž€αžΎαžαž”αž‰αŸ’αž‡αžΈαž‡αž½αžšαžˆαžšαž–αžΈαžš αž”αž‰αŸ’αž‡αžΈαž€αŸ’αžšαžΆαž αŸ’αžœαŸ” αž αžΎαž™αž“αŸ…αž–αŸαž›αžŠαŸ‚αž›αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαž˜αžΎαž›αž’αŸ’αžœαžΈαž˜αž½αž™ αž’αŸ’αž“αž€αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αž…αž»αž…αž€αžŽαŸ’αžŠαž»αžš αžšαž˜αžΌαžšαžšαž€αž˜αžΎαž›αžαžΆαžšαžΆαž„αžŠαŸ‚αž›αž…αž„αŸ‹αž”αžΆαž“αŸ” αž αžΎαž™αžœαžΆαžαŸ’αžšαžΌαžœαž€αžΆαžšαž–αŸαž›αžœαŸαž›αžΆ αž–αŸ„αž›αž‚αžΊαž˜αž·αž“αž˜αžΆαž“αž•αŸ’αž‘αžΆαŸ†αž„αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αž”αŸ‚αž”αž“αŸαŸ‡αž‘αŸαŸ” αž˜αžΆαž“αžαŸ‚αž”αž‰αŸ’αž‡αžΈαžαžΆαžšαžΆαž„αž”αŸ‰αž»αžŽαŸ’αžŽαŸ„αŸ‡αŸ”

αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‚αŸ’αžšαžΉαŸ‡αž“αŸƒαž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™ PostgreSQL αŸ” Alexey Lesovsky

αžαžΎαž’αŸ’αž“αž€αž‚αž½αžšαž”αž“αŸ’αžαŸ‚αž˜αž’αŸ’αžœαžΈαž‘αŸ…αž•αŸ’αž‘αžΆαŸ†αž„αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αž‘αžΆαŸ†αž„αž“αŸαŸ‡? αž’αŸ’αž“αž€αž’αžΆαž…αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αž‡αžΆαž˜αž½αž™αž“αžΉαž„αž›αž€αŸ’αžαžŽαŸˆαžŠαžΌαž…αž‡αžΆαž–αŸαž›αžœαŸαž›αžΆαž†αŸ’αž›αžΎαž™αžαž”αŸ” PostgreSQL αž˜αžΆαž“αž‘αž·αžŠαŸ’αž‹αž—αžΆαž– pg_stat_statements αŸ” αžœαžΆαžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž·αž‘αžαžΆαž˜αž›αŸ†αž“αžΆαŸ†αžŠαžΎαž˜ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αžœαžΆαž‚αžΊαž‡αžΆαž‘αž·αžŠαŸ’αž‹αž—αžΆαž–αž”αŸ’αžšαž–αŸαž“αŸ’αž’αžŠαŸαžŸαŸ†αžαžΆαž“αŸ‹αž˜αž½αž™αžŠαŸ‚αž›αž‚αž½αžšαžαŸ‚αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αžΎαž€ αž“αž·αž„αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž‡αžΆαž“αž·αž…αŸ’αž…αŸ” αžœαžΆαž•αŸ’αž‘αž»αž€αž–αŸαžαŸŒαž˜αžΆαž“αž’αŸ†αž–αžΈαžŸαŸ†αžŽαž½αžšαžŠαŸ‚αž›αž€αŸ†αž–αž»αž„αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž‘αžΆαŸ†αž„αž’αžŸαŸ‹αžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αŸ”

αžŠαžΌαž…αŸ’αž“αŸ„αŸ‡αž αžΎαž™ αž™αžΎαž„αž’αžΆαž…αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αž–αžΈαž€αžΆαžšαž–αž·αžαžŠαŸ‚αž›αžαžΆαž™αžΎαž„αž’αžΆαž…αž™αž€αž–αŸαž›αžœαŸαž›αžΆαž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αžŸαžšαž»αž”αž“αŸƒαžŸαŸ†αžŽαžΎαž‘αžΆαŸ†αž„αž’αžŸαŸ‹ αž αžΎαž™αž”αŸ‚αž„αž…αŸ‚αž€αžœαžΆαžŠαŸ„αž™αž…αŸ†αž“αž½αž“αžŸαŸ†αžŽαžΎαžŠαŸ„αž™αž”αŸ’αžšαžΎαžœαžΆαž›αžαžΆαž„αž›αžΎαŸ” αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž“αŸαŸ‡αž‚αžΊαž‡αžΆαžŸαžΈαžαž»αžŽαŸ’αž αž—αžΆαž–αž‡αžΆαž˜αž’αŸ’αž™αž˜αž“αŸ…αž€αŸ’αž“αž»αž„αž˜αž“αŸ’αž‘αžΈαžšαž–αŸαž‘αŸ’αž™αŸ” αž™αžΎαž„αž’αžΆαž…αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αž–αžΈαžœαžΆαž›αž•αŸ’αžŸαŸαž„αž‘αŸ€αž - αž–αŸαž›αžœαŸαž›αžΆαž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αžŸαŸ†αžŽαž½αžšαž’αž”αŸ’αž”αž”αžšαž˜αžΆ αž’αžαž·αž”αžšαž˜αžΆ αž“αž·αž„αž˜αž’αŸ’αž™αž˜αŸ” αž αžΎαž™αž™αžΎαž„αžαŸ‚αž˜αž‘αžΆαŸ†αž„αž’αžΆαž…αž”αž„αŸ’αž€αžΎαžαž—αžΆαž‚αžšαž™αž”αžΆαž“ PostgreSQL αž˜αžΆαž“αž˜αž»αžαž„αžΆαžšαžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž‚αŸ’αž“αžΆαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžšαžΏαž„αž“αŸαŸ‡αŸ” αž αžΎαž™αž™αžΎαž„αž’αžΆαž…αž‘αž‘αž½αž›αž”αžΆαž“αž›αŸαžαž˜αž½αž™αž…αŸ†αž“αž½αž“αžŠαŸ‚αž›αž€αŸ†αžŽαžαŸ‹αž›αž€αŸ’αžαžŽαŸˆαž–αŸαž›αžœαŸαž›αžΆαž†αŸ’αž›αžΎαž™αžαž”αž“αŸƒαž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αžšαž”αžŸαŸ‹αž™αžΎαž„αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžŸαŸ†αžŽαžΎαžŠαŸ‚αž›αž”αžΆαž“αž”αž‰αŸ’αž…αž”αŸ‹αžšαž½αž…αž αžΎαž™ αž–αŸ„αž›αž‚αžΊαž™αžΎαž„αž˜αž·αž“αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αžŸαŸ†αžŽαžΎαž€αŸ’αž›αŸ‚αž„αž€αŸ’αž›αžΆαž™ 'αž‡αŸ’αžšαžΎαžŸαžšαžΎαžŸ 1' αž αžΎαž™αž˜αžΎαž›αž–αŸαž›αžœαŸαž›αžΆαž†αŸ’αž›αžΎαž™αžαž”αž‘αŸ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž™αžΎαž„αžœαž·αž—αžΆαž‚αž–αŸαž›αžœαŸαž›αžΆαž†αŸ’αž›αžΎαž™αžαž”αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžŸαŸ†αžŽαžΎαžŠαŸ‚αž›αž”αžΆαž“αž”αŸ†αž–αŸαž‰αžšαž½αž…αž αžΎαž™ αž“αž·αž„αž‚αžΌαžšαŸ” αž‘αžΆαŸ†αž„αžαž½αž›αŸαžαžŠαžΆαž…αŸ‹αžŠαŸ„αž™αž‘αŸ‚αž€ αž¬αž™αžΎαž„αž”αž„αŸ’αž€αžΎαžαž€αŸ’αžšαžΆαž αŸ’αžœαžŠαŸ„αž™αž•αŸ’αž’αŸ‚αž€αž›αžΎαžœαžΆαŸ”

αžœαžΆαž€αŸαžŸαŸ†αžαžΆαž“αŸ‹αž•αž„αžŠαŸ‚αžšαž€αŸ’αž“αž»αž„αž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αž…αŸ†αž“αž½αž“αž€αŸ†αž αž»αžŸαžŠαŸ‚αž›αž”αž…αŸ’αž…αž»αž”αŸ’αž”αž“αŸ’αž“αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž„αŸ’αž€αžΎαžαžŠαŸ„αž™αž”αŸ’αžšαž–αŸαž“αŸ’αž’αŸ” αž αžΎαž™αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžœαžΆαž’αŸ’αž“αž€αž’αžΆαž…αž”αŸ’αžšαžΎαž‘αž·αžŠαŸ’αž‹αž—αžΆαž– pg_stat_database αŸ” αž™αžΎαž„αž•αŸ’αžαŸ„αžαž›αžΎαžœαžΆαž› xact_rollback αŸ” αžœαžΆαž›αž“αŸαŸ‡αž”αž„αŸ’αž αžΆαž‰αž˜αž·αž“αžαŸ’αžšαžΉαž˜αžαŸ‚αž…αŸ†αž“αž½αž“αž“αŸƒαž€αžΆαžšαžœαž·αž›αžαŸ’αžšαž‘αž”αŸ‹αž˜αž€αžœαž·αž‰αžŠαŸ‚αž›αž€αžΎαžαž‘αžΎαž„αž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž”αŸ‰αž»αžŽαŸ’αžŽαŸ„αŸ‡αž‘αŸ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αžαŸ‚αž˜αž‘αžΆαŸ†αž„αž‚αž·αžαžŠαž›αŸ‹αž…αŸ†αž“αž½αž“αž€αŸ†αž αž»αžŸαž•αž„αžŠαŸ‚αžšαŸ” αž”αžΎαž“αž·αž™αžΆαž™αž‘αžΆαž€αŸ‹αž‘αž„αž‚αŸ’αž“αžΆ αž™αžΎαž„αž’αžΆαž…αž”αž„αŸ’αž αžΆαž‰αžαž½αž›αŸαžαž“αŸαŸ‡αž“αŸ…αž€αŸ’αž“αž»αž„αž•αŸ’αž‘αžΆαŸ†αž„αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αžšαž”αžŸαŸ‹αž™αžΎαž„ αž αžΎαž™αž˜αžΎαž›αžαžΆαžαžΎαž™αžΎαž„αž˜αžΆαž“αž€αŸ†αž αž»αžŸαž”αŸ‰αž»αž“αŸ’αž˜αžΆαž“αž“αžΆαž–αŸαž›αž”αž…αŸ’αž…αž»αž”αŸ’αž”αž“αŸ’αž“αž“αŸαŸ‡αŸ” αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž˜αžΆαž“αž€αŸ†αž αž»αžŸαž…αŸ’αžšαžΎαž“ αž“αŸ„αŸ‡αž‚αžΊαž‡αžΆαž αŸαžαž»αž•αž›αžŠαŸαž›αŸ’αž’αž˜αž½αž™αžŠαžΎαž˜αŸ’αž”αžΈαž–αž·αž“αž·αžαŸ’αž™αž˜αžΎαž›αž€αŸ†αžŽαžαŸ‹αž αŸαžαž» αž“αž·αž„αž˜αžΎαž›αžαžΆαžαžΎαžœαžΆαž˜αžΆαž“αž€αŸ†αž αž»αžŸαž”αŸ’αžšαž—αŸαž‘αžŽαžΆ αž αžΎαž™αž αŸαžαž»αž’αŸ’αžœαžΈαž”αžΆαž“αž‡αžΆαžœαžΆαž€αžΎαžαž‘αžΎαž„ αž αžΎαž™αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž˜αž€αžœαž·αž“αž·αž™αŸ„αž‚ αž“αž·αž„αžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αžœαžΆαŸ”

αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‚αŸ’αžšαžΉαŸ‡αž“αŸƒαž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™ PostgreSQL αŸ” Alexey Lesovsky

αž’αŸ’αž“αž€αž’αžΆαž…αž”αž“αŸ’αžαŸ‚αž˜αžœαžαŸ’αžαž»αžŠαžΌαž…αž‡αžΆ Tachometer αŸ” αž‘αžΆαŸ†αž„αž“αŸαŸ‡αž‚αžΊαž‡αžΆαž…αŸ†αž“αž½αž“αž“αŸƒαž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαž€αŸ’αž“αž»αž„αž˜αž½αž™αžœαž·αž“αžΆαž‘αžΈ αž“αž·αž„αž…αŸ†αž“αž½αž“αžŸαŸ†αžŽαžΎαž€αŸ’αž“αž»αž„αž˜αž½αž™αžœαž·αž“αžΆαž‘αžΈαŸ” αž“αž·αž™αžΆαž™αžŠαŸ„αž™αž‘αžΆαž€αŸ‹αž‘αž„αž‚αŸ’αž“αžΆ αž’αŸ’αž“αž€αž’αžΆαž…αž”αŸ’αžšαžΎαž›αŸαžαž‘αžΆαŸ†αž„αž“αŸαŸ‡αž‡αžΆαž€αžΆαžšαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž”αž…αŸ’αž…αž»αž”αŸ’αž”αž“αŸ’αž“αž“αŸƒαž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αžšαž”αžŸαŸ‹αž’αŸ’αž“αž€ αž αžΎαž™αžŸαž„αŸ’αž€αŸαžαž˜αžΎαž›αžαžΆαžαžΎαž˜αžΆαž“αž€αž˜αŸ’αžšαž·αžαžαŸ’αž–αžŸαŸ‹αž€αŸ’αž“αž»αž„αžŸαŸ†αžŽαžΎ αž€αž˜αŸ’αžšαž·αžαžαŸ’αž–αžŸαŸ‹αž€αŸ’αž“αž»αž„αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžš αž¬αž•αŸ’αž‘αž»αž™αž‘αŸ…αžœαž·αž‰αžαžΆαžαžΎαž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αžαŸ’αžšαžΌαžœαž”αžΆαž“αž•αŸ’αž‘αž»αž€αžŠαŸ„αž™αžŸαžΆαžšαž•αŸ’αž“αŸ‚αž€αžαžΆαž„αž€αŸ’αžšαŸ„αž™αž˜αž½αž™αž…αŸ†αž“αž½αž“αž”αžΆαž“αž”αžšαžΆαž‡αŸαž™αŸ” αžœαžΆαž‡αžΆαžšαžΏαž„αžŸαŸ†αžαžΆαž“αŸ‹αžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž˜αžΎαž›αžαž½αž›αŸαžαž“αŸαŸ‡αž‡αžΆαž“αž·αž…αŸ’αž… αž αžΎαž™αž…αž„αž…αžΆαŸ†αžαžΆαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž‚αž˜αŸ’αžšαŸ„αž„αžšαž”αžŸαŸ‹αž™αžΎαž„ αž”αŸ’αžšαž—αŸαž‘αž“αŸƒαž€αžΆαžšαž’αž“αž»αžœαžαŸ’αžαž“αŸαŸ‡αž‚αžΊαž’αž˜αŸ’αž˜αžαžΆ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αžαž˜αŸ’αž›αŸƒαžαžΆαž„αž›αžΎ αž“αž·αž„αžαžΆαž„αž€αŸ’αžšαŸ„αž˜αž‚αžΊαž‡αžΆαž”αŸ’αžšαž—αŸαž‘αž“αŸƒαž”αž‰αŸ’αž αžΆ αž“αž·αž„αž˜αž·αž“αž’αžΆαž…αž™αž›αŸ‹αž”αžΆαž“αžšαž½αž…αž‘αŸ…αž αžΎαž™ αžŠαŸ‚αž›αž˜αžΆαž“αž“αŸαž™αžαžΆαž™αžΎαž„αžαŸ’αžšαžΌαžœαž–αž·αž“αž·αžαŸ’αž™αž˜αžΎαž›αžαžΆαž αŸαžαž»αž’αŸ’αžœαžΈαž”αžΆαž“αž‡αžΆαž›αŸαžαž‘αžΆαŸ†αž„αž“αŸαŸ‡ αžαŸ’αž–αžŸαŸ‹β€‹αžŽαžΆαžŸαŸ‹αŸ”

αžŠαžΎαž˜αŸ’αž”αžΈαž”αŸ‰αžΆαž“αŸ‹αž”αŸ’αžšαž˜αžΆαžŽαž…αŸ†αž“αž½αž“αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžš αž™αžΎαž„αž’αžΆαž…αž™αŸ„αž„αž‘αŸ…αž›αžΎαž‘αž·αžŠαŸ’αž‹αž—αžΆαž– pg_stat_database αž˜αŸ’αžαž„αž‘αŸ€αžαŸ” αž™αžΎαž„αž’αžΆαž…αž”αž“αŸ’αžαŸ‚αž˜αž…αŸ†αž“αž½αž“αž“αŸƒ commits αž“αž·αž„αž…αŸ†αž“αž½αž“ rollbacks αž“αž·αž„αž‘αž‘αž½αž›αž”αžΆαž“αž…αŸ†αž“αž½αž“αž“αŸƒαž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαž€αŸ’αž“αž»αž„αž˜αž½αž™αžœαž·αž“αžΆαž‘αžΈαŸ”

αžαžΎαž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αž“αžΆαž™αž›αŸ‹αžαžΆαžŸαŸ†αžŽαžΎαž‡αžΆαž…αŸ’αžšαžΎαž“αž’αžΆαž…αžŸαž˜αž“αžΉαž„αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαžαŸ‚αž˜αž½αž™αž‘αŸ? αžŠαžΌαž…αŸ’αž“αŸαŸ‡ TPS αž“αž·αž„ QPS αž‚αžΊαžαž»αžŸαž‚αŸ’αž“αžΆαž”αž“αŸ’αžαž·αž…αž”αž“αŸ’αžαž½αž…αŸ”

αž…αŸ†αž“αž½αž“αžŸαŸ†αžŽαžΎαž€αŸ’αž“αž»αž„αž˜αž½αž™αžœαž·αž“αžΆαž‘αžΈαž’αžΆαž…αž‘αž‘αž½αž›αž”αžΆαž“αž–αžΈ pg_stat_statements αž αžΎαž™αž‚αŸ’αžšαžΆαž“αŸ‹αžαŸ‚αž‚αžŽαž“αžΆαž•αž›αž”αžΌαž€αž“αŸƒαžŸαŸ†αžŽαžΎαžŠαŸ‚αž›αž”αžΆαž“αž”αž‰αŸ’αž…αž”αŸ‹αž‘αžΆαŸ†αž„αž’αžŸαŸ‹αŸ” αžœαžΆαž…αŸ’αž”αžΆαžŸαŸ‹αžŽαžΆαžŸαŸ‹αžαžΆαž™αžΎαž„αž”αŸ’αžšαŸ€αž”αž’αŸ€αž”αžαž˜αŸ’αž›αŸƒαž”αž…αŸ’αž…αž»αž”αŸ’αž”αž“αŸ’αž“αž‡αžΆαž˜αž½αž™αžαž˜αŸ’αž›αŸƒαž˜αž»αž“ αžŠαž€αžœαžΆ αž‘αž‘αž½αž›αž”αžΆαž“αžŠαžΈαžŸαžŽαŸ’αž αž“αž·αž„αž‘αž‘αž½αž›αž”αžΆαž“αž”αžšαž·αž˜αžΆαžŽαŸ”

αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‚αŸ’αžšαžΉαŸ‡αž“αŸƒαž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™ PostgreSQL αŸ” Alexey Lesovsky

αž’αŸ’αž“αž€β€‹αž’αžΆαž…β€‹αž”αž“αŸ’αžαŸ‚αž˜β€‹αž˜αŸ‰αŸ‚αžαŸ’αžšβ€‹αž”αž“αŸ’αžαŸ‚αž˜β€‹αž”αŸ’αžšαžŸαž·αž“β€‹αž”αžΎβ€‹αž…αž„αŸ‹β€‹αž”αžΆαž“ αžŠαŸ‚αž›β€‹αž€αŸβ€‹αž‡αž½αž™β€‹αžœαžΆαž™β€‹αžαž˜αŸ’αž›αŸƒβ€‹αž—αžΆαž–β€‹αž’αžΆαž…β€‹αžšαž€β€‹αž”αžΆαž“β€‹αž“αŸƒβ€‹αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“β€‹αž‘αž·αž“αŸ’αž“αž“αŸαž™β€‹αžšαž”αžŸαŸ‹β€‹αž™αžΎαž„ αž“αž·αž„β€‹αžαžΆαž˜β€‹αžŠαžΆαž“β€‹αžαžΆβ€‹αžαžΎβ€‹αž˜αžΆαž“β€‹αž€αžΆαžšβ€‹αž’αŸ’αž›αžΆαž€αŸ‹β€‹αž…αž»αŸ‡β€‹αž¬β€‹αž’αžαŸ‹αŸ”

αž˜αž½αž™αž€αŸ’αž“αž»αž„αž…αŸ†αž“αŸ„αž˜αžšαž„αŸ’αžœαžΆαžŸαŸ‹αž‘αžΆαŸ†αž„αž“αŸαŸ‡αž‚αžΊαž˜αŸ‰αŸ„αž„αž’αŸ’αžœαžΎαž€αžΆαžšαŸ” αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž˜αŸ‰αŸ„αž„αž’αŸ’αžœαžΎαž€αžΆαžšαž“αŸ…αž€αŸ’αž“αž»αž„ PostgreSQL αž‚αžΊαž–αž·αž”αžΆαž€αž”αž“αŸ’αžαž·αž…αŸ” αžαŸ’αž‰αž»αŸ†αž“αžΉαž„αž”αŸ’αžšαžΆαž”αŸ‹αž’αŸ’αž“αž€αž–αžΈαž˜αžΌαž›αž αŸαžαž»αŸ” αž“αŸ…αž–αŸαž›αžŠαŸ‚αž› PostgreSQL αž”αžΆαž“αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜ αž–αŸαž›αžœαŸαž›αžΆαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αžšαžΆαž™αž€αžΆαžšαžŽαŸαŸ” αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž“αŸ…αž…αŸ†αžŽαž»αž…αž˜αž½αž™αž…αŸ†αž“αž½αž“ αž§αž‘αžΆαž αžšαžŽαŸ αž€αž·αž…αŸ’αž…αž€αžΆαžšαž˜αž½αž™αž…αŸ†αž“αž½αž“αž€αŸ†αž–αž»αž„αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž“αŸ…αž–αŸαž›αž™αž”αŸ‹ αžƒαžΆαžαž€αžš OOM αž”αžΆαž“αž˜αž€ αž αžΎαž™αž”αž„αŸ’αžαŸ†αž±αŸ’αž™αž”αž‰αŸ’αž…αž”αŸ‹αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž€αžΌαž“ PostgreSQL αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž˜αž€αž€αŸ’αž“αž»αž„αž€αžšαžŽαžΈαž“αŸαŸ‡ PostgreSQL αž”αž‰αŸ’αž…αž”αŸ‹αž€αžΆαžšαžαž—αŸ’αž‡αžΆαž”αŸ‹αžšαž”αžŸαŸ‹αž’αžαž·αžαž·αž‡αž“αž‘αžΆαŸ†αž„αž’αžŸαŸ‹ αž€αŸ†αžŽαžαŸ‹αžαŸ†αž”αž“αŸ‹αž’αž„αŸ’αž‚αž…αž„αž…αžΆαŸ†αžŠαŸ‚αž›αž”αžΆαž“αžšαž»αŸ‡αžšαžΎαž‘αžΎαž„αžœαž·αž‰ αž αžΎαž™αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αž€αžΆαžšαž„αžΎαž”αž‘αžΎαž„αžœαž·αž‰αž–αžΈ αž”αŸ‰αž»αžŸαŸ’αžαž·αŸαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αž…αž»αž„αž€αŸ’αžšαŸ„αž™αŸ” αž αžΎαž™αžαžŽαŸˆαž–αŸαž›αžŠαŸ‚αž›αž€αžΆαžšαž„αžΎαž”αž‘αžΎαž„αžœαž·αž‰αž–αžΈαž…αŸ†αžŽαž»αž…αžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αž“αŸαŸ‡αž˜αžΆαž“αžšαž™αŸˆαž–αŸαž› αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž˜αž·αž“αž‘αž‘αž½αž›αž™αž€αž€αžΆαžšαžαž—αŸ’αž‡αžΆαž”αŸ‹αž‘αŸ αž–αŸ„αž›αž‚αžΊαžŸαŸ’αžαžΆαž“αž—αžΆαž–αž“αŸαŸ‡αž’αžΆαž…αžαŸ’αžšαžΌαžœαž”αžΆαž“αž‚αŸαžœαžΆαž™αžαž˜αŸ’αž›αŸƒαžαžΆαž‡αžΆαž–αŸαž›αžœαŸαž›αžΆαžšαž„αž…αžΆαŸ†αŸ” αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž€αžΆαžšαžšαžΆαž”αŸ‹αž˜αŸ‰αŸ„αž„αž’αŸ’αžœαžΎαž€αžΆαžšαž“αžΉαž„αž˜αž·αž“αžαŸ’αžšαžΌαžœαž”αžΆαž“αž€αŸ†αžŽαžαŸ‹αž‘αžΎαž„αžœαž·αž‰αž‘αŸ αž–αŸ’αžšαŸ„αŸ‡αžœαžΆαž‚αž·αžαž–αžΈαž–αŸαž›αžœαŸαž›αžΆαž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αž˜αŸαž”αŸ’αžšαŸƒαžŸαžŽαžΈαž™αŸαž…αžΆαž”αŸ‹αž–αžΈαž–αŸαž›αžŠαŸ†αž”αžΌαž„αŸ” αžŠαžΌαž…αŸ’αž“αŸαŸ‡αžŸαŸ’αžαžΆαž“αž—αžΆαž–αž”αŸ‚αž”αž“αŸαŸ‡αž’αžΆαž…αžαŸ’αžšαžΌαžœαž”αžΆαž“αžšαŸ†αž›αž„αŸ”

αž’αŸ’αž“αž€αž€αŸαž‚αž½αžšαžαžΆαž˜αžŠαžΆαž“αž…αŸ†αž“αž½αž“αž’αŸ’αž“αž€αž’αŸ’αžœαžΎαž€αžΆαžšαž”αžΌαž˜αž’αžΌαž›αžΈαž•αž„αžŠαŸ‚αžšαŸ” αžαžΎαž’αŸ’αž“αž€αž‘αžΆαŸ†αž„αž’αžŸαŸ‹αž‚αŸ’αž“αžΆαžŠαžΉαž„αžαžΆ autovacuum αž‡αžΆαž’αŸ’αžœαžΈαž“αŸ…αž€αŸ’αž“αž»αž„ PostgreSQL αž‘αŸ? αž“αŸαŸ‡αž‚αžΊαž‡αžΆαž”αŸ’αžšαž–αŸαž“αŸ’αž’αžšαž„αž‚αž½αžšαž±αŸ’αž™αž…αžΆαž”αŸ‹αž’αžΆαžšαž˜αŸ’αž˜αžŽαŸαž“αŸ…αž€αŸ’αž“αž»αž„ PostgreSQL αŸ” αž’αžαŸ’αžαž”αž‘αž‡αžΆαž…αŸ’αžšαžΎαž“αžαŸ’αžšαžΌαžœαž”αžΆαž“αžŸαžšαžŸαŸαžšαž’αŸ†αž–αžΈαž“αžΆαž„ αžšαž”αžΆαž™αž€αžΆαžšαžŽαŸαž‡αžΆαž…αŸ’αžšαžΎαž“αžαŸ’αžšαžΌαžœαž”αžΆαž“αž’αŸ’αžœαžΎαž‘αžΎαž„αŸ” αž˜αžΆαž“αž€αžΆαžšαž–αž·αž—αžΆαž€αŸ’αžŸαžΆαž‡αžΆαž…αŸ’αžšαžΎαž“αž’αŸ†αž–αžΈαž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αž”αžΌαž˜αž’αžΌαž›αžΈ αž“αž·αž„αžšαž”αŸ€αž”αžŠαŸ‚αž›αžœαžΆαž‚αž½αžšαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαŸ” αž˜αž“αž»αžŸαŸ’αžŸαž‡αžΆαž…αŸ’αžšαžΎαž“αž…αžΆαžαŸ‹αž‘αž»αž€αžœαžΆαž‡αžΆαž’αŸ†αž–αžΎαž’αžΆαž€αŸ’αžšαž€αŸ‹αž…αžΆαŸ†αž”αžΆαž…αŸ‹αŸ” αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž“αŸ„αŸ‡αž αžΎαž™αž‡αžΆαžšαž”αŸ€αž”αžŠαŸ‚αž›αžœαžΆαž‚αžΊαž‡αžΆαŸ” αž“αŸαŸ‡αž‚αžΊαž‡αžΆαž”αŸ’αžšαž—αŸαž‘αž“αŸƒ analogue αžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αž”αŸ’αžšαž˜αžΌαž›αžŸαŸ†αžšαžΆαž˜αžŠαŸ‚αž›αžŸαž˜αŸ’αž’αžΆαžαž‡αž½αžšαžŠαŸ‚αž›αž αž½αžŸαžŸαž˜αŸαž™αžŠαŸ‚αž›αž˜αž·αž“αžαŸ’αžšαžΌαžœαž€αžΆαžšαžŠαŸ„αž™αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαžŽαžΆαž˜αž½αž™ αž αžΎαž™αž”αž„αŸ’αž€αžΎαž“αž‘αŸ†αž αŸ†αž‘αŸ†αž“αŸαžšαž“αŸ…αž€αŸ’αž“αž»αž„αžαžΆαžšαžΆαž„ αž“αž·αž„αž›αž·αž”αž·αž€αŸ’αžšαž˜αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž‡αž½αžšαžαŸ’αž˜αžΈαŸ”

αž αŸαžαž»αž’αŸ’αžœαžΈαž”αžΆαž“αž‡αžΆαž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαž€αžΆαžšαžαžΆαž˜αžŠαžΆαž“αžœαžΆ? αž–αŸ’αžšαŸ„αŸ‡β€‹αž–αŸαž›β€‹αžαŸ’αž›αŸ‡β€‹αž€αžΆαžšβ€‹αžαŸ’αžœαŸ‡β€‹αž…αž“αŸ’αž›αŸ„αŸ‡β€‹αžˆαžΊβ€‹αžαŸ’αž›αžΆαŸ†αž„αŸ” αžœαžΆαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž’αž“αž’αžΆαž“αž™αŸ‰αžΆαž„αž…αŸ’αžšαžΎαž“ αž αžΎαž™αžŸαŸ†αžŽαžΎαžšαž”αžŸαŸ‹αž’αžαž·αžαž·αž‡αž“αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αžšαž„αž‘αž»αž€αŸ’αžαž‡αžΆαž›αž‘αŸ’αž’αž•αž›αŸ”

αž αžΎαž™αžœαžΆαž‚αž½αžšαžαŸ‚αžαŸ’αžšαžΌαžœαž”αžΆαž“αžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αžαžΆαž˜αžšαž™αŸˆαž‘αž·αžŠαŸ’αž‹αž—αžΆαž– pg_stat_activity αžŠαŸ‚αž›αžαŸ’αž‰αž»αŸ†αž“αžΉαž„αž“αž·αž™αžΆαž™αž’αŸ†αž–αžΈαž“αŸ…αž€αŸ’αž“αž»αž„αž•αŸ’αž“αŸ‚αž€αž”αž“αŸ’αž‘αžΆαž”αŸ‹αŸ” αž‘αž·αžŠαŸ’αž‹αž—αžΆαž–αž“αŸαŸ‡αž”αž„αŸ’αž αžΆαž‰αž–αžΈαžŸαž€αž˜αŸ’αž˜αž—αžΆαž–αž”αž…αŸ’αž…αž»αž”αŸ’αž”αž“αŸ’αž“αž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αŸ” αž αžΎαž™αžαžΆαž˜αžšαž™αŸˆαžŸαž€αž˜αŸ’αž˜αž—αžΆαž–αž“αŸαŸ‡ αž™αžΎαž„αž’αžΆαž…αžαžΆαž˜αžŠαžΆαž“αž…αŸ†αž“αž½αž“αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αž”αžΌαž˜αž’αžΌαž›αžΈαžŠαŸ‚αž›αž€αŸ†αž–αž»αž„αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž“αŸ…αž–αŸαž›αž“αŸαŸ‡αŸ” αž™αžΎαž„αž’αžΆαž…αžαžΆαž˜αžŠαžΆαž“αž€αžΆαžšαžαŸ’αžœαŸ‡αž…αž“αŸ’αž›αŸ„αŸ‡ αž αžΎαž™αžƒαžΎαž‰αžαžΆαž”αŸ’αžšαžŸαž·αž“αž”αžΎαž™αžΎαž„αž›αžΎαžŸαžŠαŸ‚αž“αž€αŸ†αžŽαžαŸ‹αž“αŸ„αŸ‡ αž“αŸαŸ‡αž‡αžΆαž αŸαžαž»αž•αž›αžŠαžΎαž˜αŸ’αž”αžΈαž–αž·αž“αž·αžαŸ’αž™αž˜αžΎαž›αž€αžΆαžšαž€αŸ†αžŽαžαŸ‹ PostgreSQL αž“αž·αž„αž’αžΆαž…αž”αž„αŸ’αž€αžΎαž“αž”αŸ’αžšαžŸαž·αž‘αŸ’αž’αž—αžΆαž–αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαžšαž”αžŸαŸ‹αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αž”αžΌαž˜αž’αžΌαž›αžΈαŸ”

αžšαžΏαž„αž˜αž½αž™αž‘αŸ€αžαž’αŸ†αž–αžΈ PostgreSQL αž‚αžΊαžαžΆ PostgreSQL αžˆαžΊαžαŸ’αž›αžΆαŸ†αž„αž…αŸ†αž–αŸ„αŸ‡αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαž™αžΌαžšαŸ” αž‡αžΆαž–αž·αžŸαŸαžŸαž–αžΈαž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαžŠαŸ‚αž›αž–αŸ’αž™αž½αžšαž“αŸ…αž‡αž»αŸ†αžœαž·αž‰αžšαž™αŸˆαž–αŸαž›αž™αžΌαžšαž“αž·αž„αž˜αž·αž“αž’αŸ’αžœαžΎαž’αŸ’αžœαžΈαžŸαŸ„αŸ‡αŸ” αž“αŸαŸ‡αž‚αžΊαž‡αžΆαž’αŸ’αžœαžΈαžŠαŸ‚αž›αž αŸ…αžαžΆ stat idle-in-transactionαŸ” αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαž”αŸ‚αž”αž“αŸαŸ‡αžšαž€αŸ’αžŸαžΆαžŸαŸ„ αž“αž·αž„αž€αžΆαžšαž–αžΆαžšαž€αžΆαžšαžαŸ’αžœαŸ‡αž…αž“αŸ’αž›αŸ„αŸ‡αž˜αž·αž“αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαŸ” αž αžΎαž™αž‡αžΆαž›αž‘αŸ’αž’αž•αž›αžαžΆαžšαžΆαž„αž αžΎαž˜αž“αž·αž„αž”αž„αŸ’αž€αžΎαž“αž‘αŸ†αž αŸ†αŸ” αž αžΎαž™αžŸαŸ†αžŽαž½αžšαžŠαŸ‚αž›αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž‡αžΆαž˜αž½αž™αžαžΆαžšαžΆαž„αž‘αžΆαŸ†αž„αž“αŸαŸ‡αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž™αžΊαžαž‡αžΆαž„αž˜αž»αž“ αž–αžΈαž–αŸ’αžšαŸ„αŸ‡αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαžšαž»αž‰αž‡αž½αžšαž…αžΆαžŸαŸ‹αž‘αžΆαŸ†αž„αž’αžŸαŸ‹αž–αžΈαž’αž„αŸ’αž‚αž…αž„αž…αžΆαŸ†αž‘αŸ…αžαžΆαžŸ αž“αž·αž„αžαžΆαž„αž€αŸ’αžšαŸ„αž™αŸ” αžŠαžΌαž…αŸ’αž“αŸαŸ‡ αž–αŸαž›αžœαŸαž›αžΆ αžšαž™αŸˆαž–αŸαž›αž“αŸƒαž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαžŠαŸαžœαŸ‚αž„αž”αŸ†αž•αž»αž αžŸαŸ†αžŽαžΎαž”αžΌαž˜αž’αžΌαž›αžΈαžœαŸ‚αž„αž”αŸ†αž•αž»αž αž€αŸαžαŸ’αžšαžΌαžœαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αž•αž„αžŠαŸ‚αžšαŸ” αž αžΎαž™αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž™αžΎαž„αžƒαžΎαž‰αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž˜αž½αž™αž…αŸ†αž“αž½αž“αžŠαŸ‚αž›αž”αžΆαž“αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž’αžŸαŸ‹αžšαž™αŸˆαž–αŸαž›αž‡αžΆαž™αžΌαžšαž˜αž€αž αžΎαž™ αž›αžΎαžŸαž–αžΈ 10-20-30 αž“αžΆαž‘αžΈαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αžΆαžšαž•αŸ’αž‘αž»αž€ OLTP αž“αŸ„αŸ‡ αž™αžΎαž„αžαŸ’αžšαžΌαžœαž™αž€αž…αž·αžαŸ’αžαž‘αž»αž€αžŠαžΆαž€αŸ‹αž›αžΎαž–αž½αž€αžœαžΆ αž αžΎαž™αž”αž·αž‘αžœαžΆαžŠαŸ„αž™αž”αž„αŸ’αžαŸ† αž¬αž”αž„αŸ’αž€αžΎαž“αž”αŸ’αžšαžŸαž·αž‘αŸ’αž’αž—αžΆαž–αž€αž˜αŸ’αž˜αžœαž·αž’αžΈαžŠαžΎαž˜αŸ’αž”αžΈαž±αŸ’αž™αž–αž½αž€αž‚αŸ αž˜αž·αž“αžαŸ’αžšαžΌαžœαž”αžΆαž“αž αŸ…αž αžΎαž™αž€αž»αŸ†αž–αŸ’αž™αž½αžšαž™αžΌαžšαŸ” αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž”αž“αŸ’αž‘αž»αž€αž€αžΆαžšαž„αžΆαžšαžœαž·αž—αžΆαž‚ 10-20-30 αž“αžΆαž‘αžΈαž‚αžΊαž’αž˜αŸ’αž˜αžαžΆ αž αžΎαž™αž€αŸαž˜αžΆαž“αž€αžΆαžšαž„αžΆαžšαžœαŸ‚αž„αž‡αžΆαž„αž“αŸαŸ‡αž•αž„αžŠαŸ‚αžšαŸ”

αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‚αŸ’αžšαžΉαŸ‡αž“αŸƒαž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™ PostgreSQL αŸ” Alexey Lesovsky
αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž™αžΎαž„αž˜αžΆαž“αž‡αž˜αŸ’αžšαžΎαžŸαž‡αžΆαž˜αž½αž™αž’αžαž·αžαž·αž‡αž“αžŠαŸ‚αž›αž”αžΆαž“αž—αŸ’αž‡αžΆαž”αŸ‹αŸ” αž“αŸ…αž–αŸαž›αžŠαŸ‚αž›αž™αžΎαž„αž”αžΆαž“αž”αž„αŸ’αž€αžΎαžαž•αŸ’αž‘αžΆαŸ†αž„αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αžšαž½αž…αž αžΎαž™ αž“αž·αž„αž”αžΆαž“αž”αž„αŸ’αž αŸ„αŸ‡αž€αžΆαžšαžœαžΆαžŸαŸ‹αžœαŸ‚αž„αž—αžΆαž–αž’αžΆαž…αžšαž€αž”αžΆαž“αžŸαŸ†αžαžΆαž“αŸ‹αŸ—αž“αŸ…αž›αžΎαžœαžΆ αž™αžΎαž„αž€αŸαž’αžΆαž…αž”αž“αŸ’αžαŸ‚αž˜αž–αŸαžαŸŒαž˜αžΆαž“αž”αž“αŸ’αžαŸ‚αž˜αž’αŸ†αž–αžΈαž’αžαž·αžαž·αž‡αž“αžŠαŸ‚αž›αž”αžΆαž“αž—αŸ’αž‡αžΆαž”αŸ‹αž“αŸ…αž‘αžΈαž“αŸ„αŸ‡αž•αž„αžŠαŸ‚αžšαŸ”

αž–αŸαžαŸŒαž˜αžΆαž“αž’αŸ†αž–αžΈαž’αžαž·αžαž·αž‡αž“αžŠαŸ‚αž›αž”αžΆαž“αž—αŸ’αž‡αžΆαž”αŸ‹αž‚αžΊαž˜αžΆαž“αžŸαžΆαžšαŸˆαžŸαŸ†αžαžΆαž“αŸ‹αž–αžΈαž–αŸ’αžšαŸ„αŸ‡αžαžΆαž˜αž‘αžŸαŸ’αžŸαž“αŸˆαžšαž”αžŸαŸ‹ PostgreSQL αž’αžαž·αžαž·αž‡αž“αž‚αžΊαžαž»αžŸαž‚αŸ’αž“αžΆαŸ” αž˜αžΆαž“αž’αžαž·αžαž·αž‡αž“αž›αŸ’αž’ αž“αž·αž„αž˜αžΆαž“αž’αžαž·αžαž·αž‡αž“αž˜αž·αž“αž›αŸ’αž’αŸ”

αž§αž‘αžΆαž αžšαžŽαŸαžŸαžΆαž˜αž‰αŸ’αž‰αž˜αž½αž™αŸ” αžŠαŸ„αž™αž’αžαž·αžαž·αž‡αž“αžαŸ’αž‰αž»αŸ†αž™αž›αŸ‹αž–αžΈαž€αž˜αŸ’αž˜αžœαž·αž’αžΈαŸ” αž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž”αžΆαž“αž—αŸ’αž‡αžΆαž”αŸ‹αž‘αŸ…αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™ αž αžΎαž™αž—αŸ’αž›αžΆαž˜αŸ—αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αž•αŸ’αž‰αžΎαžŸαŸ†αžŽαžΎαžšαž”αžŸαŸ‹αžœαžΆαž“αŸ…αž‘αžΈαž“αŸ„αŸ‡ αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αžŠαŸ†αžŽαžΎαžšαž€αžΆαžš αž“αž·αž„αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž–αž½αž€αžœαžΆ αž αžΎαž™αž”αž‰αŸ’αž‡αžΌαž“αž›αž‘αŸ’αž’αž•αž›αž‘αŸ…αž’αžαž·αžαž·αž‡αž“αžœαž·αž‰αŸ” αž‘αžΆαŸ†αž„αž“αŸαŸ‡αž‚αžΊαž‡αžΆαž’αžαž·αžαž·αž‡αž“αž›αŸ’αž’ αž“αž·αž„αžαŸ’αžšαžΉαž˜αžαŸ’αžšαžΌαžœαŸ”

αž˜αžΆαž“αžŸαŸ’αžαžΆαž“αž—αžΆαž–αž“αŸ…αž–αŸαž›αžŠαŸ‚αž›αž’αžαž·αžαž·αž‡αž“αž”αžΆαž“αž—αŸ’αž‡αžΆαž”αŸ‹ αžœαžΆαžšαž€αŸ’αžŸαžΆαž€αžΆαžšαž—αŸ’αž‡αžΆαž”αŸ‹αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž˜αž·αž“αž’αŸ’αžœαžΎαž’αŸ’αžœαžΈαžŸαŸ„αŸ‡αŸ” αžœαžΆαžŸαŸ’αžαž·αžαž“αŸ…αž€αŸ’αž“αž»αž„αžŸαŸ’αžαžΆαž“αž—αžΆαž–αž‘αŸ†αž“αŸαžšαŸ”

αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž˜αžΆαž“αž’αžαž·αžαž·αž‡αž“αž’αžΆαž€αŸ’αžšαž€αŸ‹αŸ” αž§αž‘αžΆαž αžšαžŽαŸ αž’αžαž·αžαž·αž‡αž“αžŠαžΌαž…αž‚αŸ’αž“αžΆαž”αžΆαž“αž—αŸ’αž‡αžΆαž”αŸ‹ αž”αžΎαž€αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžš αž’αŸ’αžœαžΎαž’αŸ’αžœαžΈαž˜αž½αž™αž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™ αž αžΎαž™αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž˜αž€αž…αžΌαž›αž‘αŸ…αž€αŸ’αž“αž»αž„αž€αžΌαžŠ αž§αž‘αžΆαž αžšαžŽαŸ αžŠαžΎαž˜αŸ’αž”αžΈαž…αžΌαž›αž”αŸ’αžšαžΎαž”αŸ’αžšαž—αž–αžαžΆαž„αž€αŸ’αžšαŸ… αž¬αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž‘αž·αž“αŸ’αž“αž“αŸαž™αžŠαŸ‚αž›αž‘αž‘αž½αž›αž”αžΆαž“αž“αŸ…αž‘αžΈαž“αŸ„αŸ‡αŸ” αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž‚αžΆαžαŸ‹αž˜αž·αž“αž”αžΆαž“αž”αž·αž‘αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαž‘αŸαŸ” αž αžΎαž™αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαž–αŸ’αž™αž½αžšαž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™ αž αžΎαž™αžαŸ’αžšαžΌαžœαž”αžΆαž“αž…αžΆαž€αŸ‹αžŸαŸ„αžšαž“αŸ…αž›αžΎαž”αž“αŸ’αž‘αžΆαžαŸ‹αŸ” αž“αŸαŸ‡αž‚αžΊαž‡αžΆαžŸαŸ’αžαžΆαž“αž—αžΆαž–αž˜αž·αž“αž›αŸ’αž’αŸ” αž αžΎαž™αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž—αŸ’αž›αžΆαž˜αŸ—αž“αŸ„αŸ‡αž€αž˜αŸ’αž˜αžœαž·αž’αžΈαžŽαžΆαž˜αž½αž™αž“αŸ…αž€αŸ’αž“αž»αž„αžαŸ’αž›αž½αž“αžœαžΆαž”αžšαžΆαž‡αŸαž™αžŠαŸ„αž™αž˜αžΆαž“αž€αžšαžŽαžΈαž›αžΎαž€αž›αŸ‚αž„ αž“αŸ„αŸ‡αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαž’αžΆαž…αž“αŸ…αžαŸ‚αž”αžΎαž€αž€αŸ’αž“αž»αž„αžšαž™αŸˆαž–αŸαž›αž™αžΌαžšαŸ” αž αžΎαž™αž“αŸαŸ‡αž”αŸ‰αŸ‡αž–αžΆαž›αŸ‹αžŠαž›αŸ‹αžŠαŸ†αžŽαžΎαžšαž€αžΆαžš PostgreSQL αžŠαŸ„αž™αž•αŸ’αž‘αžΆαž›αŸ‹αŸ” PostgreSQL αž“αžΉαž„αž™αžΊαžαž‡αžΆαž„αŸ” αžŠαžΌαž…αŸ’αž“αŸαŸ‡ αžœαžΆαž˜αžΆαž“αžŸαžΆαžšαŸˆαžŸαŸ†αžαžΆαž“αŸ‹αžŽαžΆαžŸαŸ‹αž€αŸ’αž“αž»αž„αž€αžΆαžšαžαžΆαž˜αžŠαžΆαž“αž’αžαž·αžαž·αž‡αž“αž”αŸ‚αž”αž“αŸαŸ‡αž±αŸ’αž™αž”αžΆαž“αž‘αžΆαž“αŸ‹αž–αŸαž›αžœαŸαž›αžΆ αž“αž·αž„αž”αž‰αŸ’αžˆαž”αŸ‹αž€αžΆαžšαž„αžΆαžšαžšαž”αžŸαŸ‹αž–αž½αž€αž‚αŸαžŠαŸ„αž™αž”αž„αŸ’αžαŸ†αŸ” αž αžΎαž™αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαž”αž„αŸ’αž€αžΎαž“αž”αŸ’αžšαžŸαž·αž‘αŸ’αž’αž—αžΆαž–αž€αž˜αŸ’αž˜αžœαž·αž’αžΈαžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αžŠαžΎαž˜αŸ’αž”αžΈαž€αž»αŸ†αž±αŸ’αž™αžŸαŸ’αžαžΆαž“αž—αžΆαž–αž”αŸ‚αž”αž“αŸαŸ‡αž€αžΎαžαž‘αžΎαž„αŸ”

αž’αžαž·αžαž·αž‡αž“αž’αžΆαž€αŸ’αžšαž€αŸ‹αž•αŸ’αžŸαŸαž„αž‘αŸ€αžαž€αŸ†αž–αž»αž„αžšαž„αŸ‹αž…αžΆαŸ†αž’αžαž·αžαž·αž‡αž“αŸ” αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž–αž½αž€αž‚αŸαž€αŸ’αž›αžΆαž™αž‡αžΆαž’αžΆαž€αŸ’αžšαž€αŸ‹αžŠαŸ„αž™αžŸαžΆαžšαžαŸ‚αž€αžΆαž›αŸˆαž‘αŸαžŸαŸˆαŸ” αž§αž‘αžΆαž αžšαžŽαŸ αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαž‘αŸ†αž“αŸαžšαžŸαžΆαž˜αž‰αŸ’αž‰αŸ– αžœαžΆαž’αžΆαž…αž”αžΎαž€αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžš αž…αžΆαž€αŸ‹αžŸαŸ„αžšαž›αžΎαž”αž“αŸ’αž‘αžΆαžαŸ‹αž˜αž½αž™αž…αŸ†αž“αž½αž“ αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž˜αž€αž€αž“αŸ’αž›αŸ‚αž„αžŽαžΆαž˜αž½αž™αž“αŸƒαž€αžΌαžŠαžœαžΆαž“αžΉαž„αž”αžšαžΆαž‡αŸαž™ αžŠαŸ„αž™αž”αž“αŸ’αžŸαž›αŸ‹αž‘αž»αž€αž“αžΌαžœαž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαž–αŸ’αž™αž½αžšαŸ” αž’αžαž·αžαž·αž‡αž“αž•αŸ’αžŸαŸαž„αž‘αŸ€αžαž“αžΉαž„αž˜αž€αžŸαŸ’αž“αžΎαžŸαž»αŸ†αž‘αž·αž“αŸ’αž“αž“αŸαž™αžŠαžΌαž…αž‚αŸ’αž“αžΆ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž‚αžΆαžαŸ‹αž“αžΉαž„αž‡αž½αž”αž”αŸ’αžšαž‘αŸ‡αž“αžΉαž„αž€αžΆαžšαž…αžΆαž€αŸ‹αžŸαŸ„αžš αž–αžΈαž–αŸ’αžšαŸ„αŸ‡αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαž–αŸ’αž™αž½αžšαž“αŸ„αŸ‡αž”αžΆαž“αž…αžΆαž€αŸ‹αžŸαŸ„αžšαž“αŸ…αž›αžΎαž‡αž½αžšαžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž€αžΆαžšαž˜αž½αž™αž…αŸ†αž“αž½αž“αžšαž½αž…αž αžΎαž™αŸ” αž αžΎαž™αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαž‘αžΈαž–αžΈαžšαž“αžΉαž„αžšαž„αŸ‹αž…αžΆαŸ†αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαžŠαŸ†αž”αžΌαž„αž”αž‰αŸ’αž…αž”αŸ‹ αž¬αž”αž„αŸ’αžαŸ†αž±αŸ’αž™αž”αž·αž‘αžœαžΆαžŠαŸ„αž™αž’αŸ’αž“αž€αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αŸ” αžŠαžΌαž…αŸ’αž“αŸαŸ‡ αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαžŠαŸ‚αž›αž˜αž·αž“αž‘αžΆαž“αŸ‹αžŸαž˜αŸ’αžšαŸαž…αž’αžΆαž…αž€αž€αž€αž»αž‰ αž“αž·αž„αž”αŸ†αž–αŸαž‰αžŠαŸ‚αž“αž€αŸ†αžŽαžαŸ‹αž“αŸƒαž€αžΆαžšαžαž—αŸ’αž‡αžΆαž”αŸ‹αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αŸ” αž αžΎαž™αž“αŸ…αž–αŸαž›αžŠαŸ‚αž›αžŠαŸ‚αž“αž€αŸ†αžŽαžαŸ‹αž–αŸαž‰ αž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž˜αž·αž“αž’αžΆαž…αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž‡αžΆαž˜αž½αž™αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž”αžΆαž“αž‘αŸαŸ” αž“αŸαŸ‡αž‚αžΊαž‡αžΆαžŸαŸ’αžαžΆαž“αž—αžΆαž–αž”αž“αŸ’αž‘αžΆαž“αŸ‹αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž‚αž˜αŸ’αžšαŸ„αž„αžšαž½αž…αž αžΎαž™αŸ” αžŠαžΌαž…αŸ’αž“αŸαŸ‡β€‹αž’αžαž·αžαž·αž‡αž“β€‹αž˜αž·αž“β€‹αž›αŸ’αž’β€‹αžαŸ’αžšαžΌαžœβ€‹αžαžΆαž˜αžŠαžΆαž“ αž“αž·αž„β€‹αž†αŸ’αž›αžΎαž™αžαž”β€‹αž‘αžΆαž“αŸ‹β€‹αž–αŸαž›β€‹αžœαŸαž›αžΆαŸ”

αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‚αŸ’αžšαžΉαŸ‡αž“αŸƒαž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™ PostgreSQL αŸ” Alexey Lesovsky

αž§αž‘αžΆαž αžšαžŽαŸαž˜αž½αž™αž‘αŸ€αžαž“αŸƒαž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αŸ” αž αžΎαž™αž˜αžΆαž“αž•αŸ’αž‘αžΆαŸ†αž„αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αžŸαž˜αžšαž˜αŸ’αž™αž“αŸ…αž‘αžΈαž“αŸαŸ‡αžšαž½αž…αž αžΎαž™αŸ” αž˜αžΆαž“αž–αŸαžαŸŒαž˜αžΆαž“αž’αŸ†αž–αžΈαž€αžΆαžšαžαž—αŸ’αž‡αžΆαž”αŸ‹αžαžΆαž„αž›αžΎαŸ” αž€αžΆαžšαžαž—αŸ’αž‡αžΆαž”αŸ‹ DB - 8 αž”αŸ†αžŽαŸ‚αž€αŸ” αž αžΎαž™αžœαžΆαž‘αžΆαŸ†αž„αž’αžŸαŸ‹αŸ” αž™αžΎαž„β€‹αž˜αž·αž“β€‹αž˜αžΆαž“β€‹αž–αŸαžαŸŒαž˜αžΆαž“β€‹αž’αŸ†αž–αžΈβ€‹αž’αžαž·αžαž·αž‡αž“β€‹αžŽαžΆβ€‹αžŠαŸ‚αž›β€‹αžŸαž€αž˜αŸ’αž˜ αž’αžαž·αžαž·αž‡αž“β€‹αžŽαžΆβ€‹αžŠαŸ‚αž›β€‹αž‚αŸ’αžšαžΆαž“αŸ‹αžαŸ‚β€‹αž“αŸ…β€‹αž‘αŸ†αž“αŸαžš αž˜αž·αž“β€‹αž’αŸ’αžœαžΎβ€‹αž’αŸ’αžœαžΈβ€‹αž‘αžΎαž™αŸ” αž˜αž·αž“αž˜αžΆαž“αž–αŸαžαŸŒαž˜αžΆαž“αž’αŸ†αž–αžΈαž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαžŠαŸ‚αž›αž€αŸ†αž–αž»αž„αžšαž„αŸ‹αž…αžΆαŸ† αž“αž·αž„αž€αžΆαžšαž—αŸ’αž‡αžΆαž”αŸ‹αžŠαŸ‚αž›αž˜αž·αž“αž‘αžΆαž“αŸ‹αžŸαž˜αŸ’αžšαŸαž…αž“αŸ„αŸ‡αž‘αŸ αž–αŸ„αž›αž‚αžΊαž“αŸαŸ‡αž‚αžΊαž‡αžΆαžαž½αž›αŸαžαžŠαŸ‚αž›αž”αž„αŸ’αž αžΆαž‰αž–αžΈαž…αŸ†αž“αž½αž“αž“αŸƒαž€αžΆαžšαžαž—αŸ’αž‡αžΆαž”αŸ‹ αž αžΎαž™αž“αŸ„αŸ‡αž‡αžΆαžœαžΆαŸ” αž αžΎαž™αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž˜αž€αž‘αžΆαž™αžŠαŸ„αž™αžαŸ’αž›αž½αž“αž―αž„αŸ”
αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‚αŸ’αžšαžΉαŸ‡αž“αŸƒαž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™ PostgreSQL αŸ” Alexey Lesovsky
αžŠαžΌαž…αŸ’αž“αŸ„αŸ‡αž αžΎαž™ αžŠαžΎαž˜αŸ’αž”αžΈαž”αž“αŸ’αžαŸ‚αž˜αž–αŸαžαŸŒαž˜αžΆαž“αž“αŸαŸ‡αž‘αŸ…αž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™ αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαž…αžΌαž›αž‘αŸ…αž€αžΆαž“αŸ‹αž‘αž·αžŠαŸ’αž‹αž—αžΆαž–αž”αŸ’αžšαž–αŸαž“αŸ’αž’ pg_stat_activity αŸ” αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž’αŸ’αž“αž€αž…αŸ†αžŽαžΆαž™αž–αŸαž›αž…αŸ’αžšαžΎαž“αž“αŸ…αž€αŸ’αž“αž»αž„ PostgreSQL αž“αŸ„αŸ‡αž“αŸαŸ‡αž‚αžΊαž‡αžΆαž‘αž·αžŠαŸ’αž‹αž—αžΆαž–αž›αŸ’αž’αžŽαžΆαžŸαŸ‹αžŠαŸ‚αž›αž‚αž½αžšαžαŸ‚αž€αŸ’αž›αžΆαž™αž‡αžΆαž˜αž·αžαŸ’αžαžšαž”αžŸαŸ‹αž’αŸ’αž“αž€ αž–αŸ’αžšαŸ„αŸ‡αžœαžΆαž”αž„αŸ’αž αžΆαž‰αž–αžΈαžŸαž€αž˜αŸ’αž˜αž—αžΆαž–αž”αž…αŸ’αž…αž»αž”αŸ’αž”αž“αŸ’αž“αž“αŸ…αž€αŸ’αž“αž»αž„ PostgreSQL αž–αŸ„αž›αž‚αžΊαž’αŸ’αžœαžΈαžŠαŸ‚αž›αž€αŸ†αž–αž»αž„αž€αžΎαžαž‘αžΎαž„αž“αŸ…αž€αŸ’αž“αž»αž„αž“αŸ„αŸ‡αŸ” αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž“αžΈαž˜αž½αž™αŸ—αž˜αžΆαž“αž”αž“αŸ’αž‘αžΆαžαŸ‹αžŠαžΆαž…αŸ‹αžŠαŸ„αž™αž‘αŸ‚αž€αžŠαŸ‚αž›αž”αž„αŸ’αž αžΆαž‰αž–αŸαžαŸŒαž˜αžΆαž“αž’αŸ†αž–αžΈαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž“αŸαŸ‡αŸ– αž–αžΈαž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αžŽαžΆαžŠαŸ‚αž›αž€αžΆαžšαžαž—αŸ’αž‡αžΆαž”αŸ‹αžαŸ’αžšαžΌαžœαž”αžΆαž“αž’αŸ’αžœαžΎαž‘αžΎαž„ αž€αŸ’αžšαŸ„αž˜αž’αŸ’αž“αž€αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹ αž€αŸ’αžšαŸ„αž˜αžˆαŸ’αž˜αŸ„αŸ‡αž’αŸ’αžœαžΈ αž“αŸ…αž–αŸαž›αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαžαŸ’αžšαžΌαžœαž”αžΆαž“αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜ αžŸαŸ†αžŽαžΎαž’αŸ’αžœαžΈαžŠαŸ‚αž›αž€αŸ†αž–αž»αž„αžŠαŸ†αžŽαžΎαžšαž€αžΆαžš αžŸαŸ†αžŽαžΎαž’αŸ’αžœαžΈαžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž…αž»αž„αž€αŸ’αžšαŸ„αž™αŸ” αž αžΎαž™αžαžΆαž˜αž“αŸ„αŸ‡ αž™αžΎαž„αž’αžΆαž…αžœαžΆαž™αžαž˜αŸ’αž›αŸƒαžŸαŸ’αžαžΆαž“αž—αžΆαž–αžšαž”αžŸαŸ‹αž’αžαž·αžαž·αž‡αž“αžŠαŸ„αž™αž”αŸ’αžšαžΎαžœαžΆαž›αžŸαŸ’αžαž·αžαž·αŸ” αž“αž·αž™αžΆαž™αžŠαŸ„αž™αž‘αžΆαž€αŸ‹αž‘αž„αž‚αŸ’αž“αžΆ αž™αžΎαž„αž’αžΆαž…αžŠαžΆαž€αŸ‹αž‡αžΆαž€αŸ’αžšαž»αž˜αžαžΆαž˜αžœαžΆαž›αž“αŸαŸ‡ αž“αž·αž„αž‘αž‘αž½αž›αž”αžΆαž“αžŸαŸ’αžαž·αžαž·αž‘αžΆαŸ†αž„αž“αŸ„αŸ‡αžŠαŸ‚αž›αž”αž…αŸ’αž…αž»αž”αŸ’αž”αž“αŸ’αž“αž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™ αž“αž·αž„αž…αŸ†αž“αž½αž“αž“αŸƒαž€αžΆαžšαžαž—αŸ’αž‡αžΆαž”αŸ‹αžŠαŸ‚αž›αž˜αžΆαž“αžŸαŸ’αžαž·αžαž·αž“αŸαŸ‡αž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αŸ” αž αžΎαž™β€‹αž™αžΎαž„β€‹αž’αžΆαž…β€‹αž•αŸ’αž‰αžΎβ€‹αž›αŸαžβ€‹αžŠαŸ‚αž›β€‹αž”αžΆαž“β€‹αž‘αž‘αž½αž›β€‹αžšαž½αž…β€‹αž‘αŸ…β€‹αž€αžΆαž“αŸ‹β€‹αž€αžΆαžšβ€‹αžαŸ’αžšαž½αžβ€‹αž–αž·αž“αž·αžαŸ’αž™β€‹αžšαž”αžŸαŸ‹β€‹αž™αžΎαž„ αž“αž·αž„β€‹αž‚αžΌαžšβ€‹αž€αŸ’αžšαžΆαž αŸ’αžœβ€‹αžŠαŸ„αž™β€‹αž•αŸ’αž’αŸ‚αž€β€‹αž›αžΎβ€‹αž›αŸαžβ€‹αž‘αžΆαŸ†αž„αž“αŸ„αŸ‡αŸ”
αžœαžΆαž€αŸαžŸαŸ†αžαžΆαž“αŸ‹αž•αž„αžŠαŸ‚αžšαž€αŸ’αž“αž»αž„αž€αžΆαžšαžœαžΆαž™αžαž˜αŸ’αž›αŸƒαžšαž™αŸˆαž–αŸαž›αž“αŸƒαž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαŸ” αžαŸ’αž‰αž»αŸ†αž”αžΆαž“αž“αž·αž™αžΆαž™αžšαž½αž…αž αžΎαž™αžαžΆαžœαžΆαž˜αžΆαž“αžŸαžΆαžšαŸˆαžŸαŸ†αžαžΆαž“αŸ‹αž€αŸ’αž“αž»αž„αž€αžΆαžšαžœαžΆαž™αžαž˜αŸ’αž›αŸƒαžšαž™αŸˆαž–αŸαž›αž“αŸƒαž€αžΆαžšαžαŸ’αžœαŸ‡αž…αž“αŸ’αž›αŸ„αŸ‡ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαžαŸ’αžšαžΌαžœαž”αžΆαž“αžœαžΆαž™αžαž˜αŸ’αž›αŸƒαžαžΆαž˜αžšαž”αŸ€αž”αžŠαžΌαž…αž‚αŸ’αž“αžΆαŸ” αž˜αžΆαž“ xact_start αž“αž·αž„ query_start αŸ” αž–αž½αž€αž‚αŸαž“αž·αž™αžΆαž™αžŠαŸ„αž™αž‘αžΆαž€αŸ‹αž‘αž„αž‚αŸ’αž“αžΆ αž”αž„αŸ’αž αžΆαž‰αž–αžΈαž–αŸαž›αžœαŸαž›αžΆαž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αž“αŸƒαž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžš αž“αž·αž„αž–αŸαž›αžœαŸαž›αžΆαž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αž“αŸƒαžŸαŸ†αžŽαžΎαŸ” αž™αžΎαž„αž™αž€αž˜αž»αžαž„αžΆαžš now() αžŠαŸ‚αž›αž”αž„αŸ’αž αžΆαž‰αžαŸ’αžšαžΆαž–αŸαž›αžœαŸαž›αžΆαž”αž…αŸ’αž…αž»αž”αŸ’αž”αž“αŸ’αž“ αž αžΎαž™αžŠαž€αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžš αž“αž·αž„αžŸαŸ’αž“αžΎαžŸαž»αŸ†αžαŸ’αžšαžΆαž–αŸαž›αžœαŸαž›αžΆαŸ” αž αžΎαž™αž™αžΎαž„αž‘αž‘αž½αž›αž”αžΆαž“αžšαž™αŸˆαž–αŸαž›αž“αŸƒαž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαžšαž™αŸˆαž–αŸαž›αž“αŸƒαž€αžΆαžšαžŸαŸ’αž“αžΎαžŸαž»αŸ†αŸ”

αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž™αžΎαž„αžƒαžΎαž‰αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαž™αžΌαžš αž™αžΎαž„αž‚αž½αžšαžαŸ‚αž”αŸ†αž–αŸαž‰αžœαžΆαžšαž½αž…αž αžΎαž™αŸ” αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αžΆαžšαž•αŸ’αž‘αž»αž€ OLTP αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαžŠαŸαžœαŸ‚αž„αž‚αžΊαž…αŸ’αžšαžΎαž“αž‡αžΆαž„ 1-2-3 αž“αžΆαž‘αžΈαžšαž½αž…αž‘αŸ…αž αžΎαž™. αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž”αž“αŸ’αž‘αž»αž€αž€αžΆαžšαž„αžΆαžšαžšαž”αžŸαŸ‹ OLAP αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαžŠαŸαž™αžΌαžšαž‚αžΊαž‡αžΆαžšαžΏαž„αž’αž˜αŸ’αž˜αžαžΆ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž–αž½αž€αž‚αŸαž…αŸ†αžŽαžΆαž™αž–αŸαž›αž›αžΎαžŸαž–αžΈαž–αžΈαžšαž˜αŸ‰αŸ„αž„αžŠαžΎαž˜αŸ’αž”αžΈαž”αž‰αŸ’αž…αž”αŸ‹ αž“αŸ„αŸ‡αž€αŸαž‡αžΆαžŸαž‰αŸ’αž‰αžΆαž˜αž½αž™αžŠαŸ‚αž›αž”αž„αŸ’αž αžΆαž‰αžαžΆαž™αžΎαž„αž˜αžΆαž“αž€αžΆαžšαž„αžΏαž„αž†αŸ’αž„αž›αŸ‹αž“αŸ…αž€αž“αŸ’αž›αŸ‚αž„αžŽαžΆαž˜αž½αž™αžŠαŸ‚αžšαŸ”

αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‚αŸ’αžšαžΉαŸ‡αž“αŸƒαž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™ PostgreSQL αŸ” Alexey Lesovsky
αž“αŸ…αž–αŸαž›αžŠαŸ‚αž›αž’αžαž·αžαž·αž‡αž“αž”αžΆαž“αž—αŸ’αž‡αžΆαž”αŸ‹αž‘αŸ…αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™ αž–αž½αž€αž‚αŸαž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αž’αŸ’αžœαžΎαž€αžΆαžšαž‡αžΆαž˜αž½αž™αž‘αž·αž“αŸ’αž“αž“αŸαž™αžšαž”αžŸαŸ‹αž™αžΎαž„αŸ” αž–αž½αž€αž‚αŸαž…αžΌαž›αž”αŸ’αžšαžΎαžαžΆαžšαžΆαž„ αž–αž½αž€αž‚αŸαž…αžΌαž›αž”αŸ’αžšαžΎαž›αž·αž”αž·αž€αŸ’αžšαž˜αžŠαžΎαž˜αŸ’αž”αžΈαž‘αž‘αž½αž›αž”αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž–αžΈαžαžΆαžšαžΆαž„αŸ” αž αžΎαž™αžœαžΆαž‡αžΆαžšαžΏαž„αžŸαŸ†αžαžΆαž“αŸ‹αž€αŸ’αž“αž»αž„αž€αžΆαžšαžœαžΆαž™αžαž˜αŸ’αž›αŸƒαž–αžΈαžšαž”αŸ€αž”αžŠαŸ‚αž›αž’αžαž·αžαž·αž‡αž“αž’αŸ’αžœαžΎαž’αž“αŸ’αžαžšαž€αž˜αŸ’αž˜αž‡αžΆαž˜αž½αž™αž‘αž·αž“αŸ’αž“αž“αŸαž™αž“αŸαŸ‡αŸ”

αž“αŸαŸ‡αž‚αžΊαž…αžΆαŸ†αž”αžΆαž…αŸ‹αžŠαžΎαž˜αŸ’αž”αžΈαžœαžΆαž™αžαž˜αŸ’αž›αŸƒαž”αž“αŸ’αž‘αž»αž€αž€αžΆαžšαž„αžΆαžšαžšαž”αžŸαŸ‹αž™αžΎαž„ αž αžΎαž™αž™αž›αŸ‹αž™αŸ‰αžΆαž„αž˜αž·αž…αŸ—αžαžΆαžαžΎαžαžΆαžšαžΆαž„αž˜αž½αž™αžŽαžΆαž‡αžΆ "αž€αŸ’αžαŸ…αž”αŸ†αž•αž»αž" αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž™αžΎαž„αŸ” αž‡αžΆαž§αž‘αžΆαž αžšαžŽαŸ αžœαžΆαžαŸ’αžšαžΌαžœαž€αžΆαžšαž‡αžΆαž…αžΆαŸ†αž”αžΆαž…αŸ‹αž€αŸ’αž“αž»αž„αžŸαŸ’αžαžΆαž“αž—αžΆαž–αžŠαŸ‚αž›αž™αžΎαž„αž…αž„αŸ‹αžŠαžΆαž€αŸ‹αžαžΆαžšαžΆαž„ "αž€αŸ’αžαŸ…" αž›αžΎαž”αŸ’αžšαž—αŸαž‘αž’αž„αŸ’αž‚αž•αŸ’αž‘αž»αž€αž‘αž·αž“αŸ’αž“αž“αŸαž™ SSD αžŠαŸ‚αž›αž˜αžΆαž“αž›αŸ’αž”αžΏαž“αž›αžΏαž“αž˜αž½αž™αž…αŸ†αž“αž½αž“αŸ” αž‡αžΆαž§αž‘αžΆαž αžšαžŽαŸ αžαžΆαžšαžΆαž„αž”αžŽαŸ’αžŽαžŸαžΆαžšαž˜αž½αž™αž…αŸ†αž“αž½αž“αžŠαŸ‚αž›αž™αžΎαž„αž˜αž·αž“αž”αžΆαž“αž”αŸ’αžšαžΎαž™αžΌαžšαž˜αž€αž αžΎαž™ αž’αžΆαž…αžαŸ’αžšαžΌαžœαž”αžΆαž“αž•αŸ’αž›αžΆαžŸαŸ‹αž‘αžΈαž‘αŸ…αž”αžŽαŸ’αžŽαžŸαžΆαžšαž”αŸ’αžšαž—αŸαž‘ "αžαŸ’αžšαž‡αžΆαž€αŸ‹" αž˜αž½αž™αž…αŸ†αž“αž½αž“αž‘αŸ…αž€αžΆαž“αŸ‹ SATA drives αž αžΎαž™αž’αž“αž»αž‰αŸ’αž‰αžΆαžαž±αŸ’αž™αž–αž½αž€αž‚αŸαžšαžŸαŸ‹αž“αŸ…αž‘αžΈαž“αŸ„αŸ‡ αž–αž½αž€αž‚αŸαž“αžΉαž„αžαŸ’αžšαžΌαžœαž”αžΆαž“αž…αžΌαž›αž”αŸ’αžšαžΎαžαžΆαž˜αžαž˜αŸ’αžšαžΌαžœαž€αžΆαžšαŸ”

αž“αŸαŸ‡β€‹αž€αŸβ€‹αž˜αžΆαž“β€‹αž”αŸ’αžšαž™αŸ„αž‡αž“αŸβ€‹αžŸαž˜αŸ’αžšαžΆαž”αŸ‹β€‹αž€αžΆαžšβ€‹αžšαž€β€‹αžƒαžΎαž‰β€‹αž—αžΆαž–β€‹αž˜αž·αž“β€‹αž”αŸ’αžšαž€αŸ’αžšαžαžΈβ€‹αž”αž“αŸ’αž‘αžΆαž”αŸ‹β€‹αž–αžΈβ€‹αž€αžΆαžšβ€‹αž…αŸαž‰β€‹αž•αŸ’αžŸαžΆαž™ αž“αž·αž„β€‹αž€αžΆαžšβ€‹αžŠαžΆαž€αŸ‹β€‹αž–αž„αŸ’αžšαžΆαž™β€‹αžŽαžΆβ€‹αž˜αž½αž™β€‹αŸ” αž§αž”αž˜αžΆαžαžΆαž‚αž˜αŸ’αžšαŸ„αž„αž“αŸαŸ‡αž”αžΆαž“αž”αž‰αŸ’αž…αŸαž‰αž˜αž»αžαž„αžΆαžšαžαŸ’αž˜αžΈαž˜αž½αž™αž…αŸ†αž“αž½αž“αŸ” αž§αž‘αžΆαž αžšαžŽαŸ αž™αžΎαž„αž”αžΆαž“αž”αž“αŸ’αžαŸ‚αž˜αž˜αž»αžαž„αžΆαžšαžαŸ’αž˜αžΈαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž’αŸ’αžœαžΎαž€αžΆαžšαž‡αžΆαž˜αž½αž™αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αŸ” αž αžΎαž™β€‹αž”αŸ’αžšαžŸαž·αž“αž”αžΎβ€‹αž™αžΎαž„β€‹αžšαŸ€αž”αž…αŸ†β€‹αž€αŸ’αžšαžΆαž αŸ’αžœβ€‹αž“αŸƒβ€‹αž€αžΆαžšαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹β€‹αžαžΆαžšαžΆαž„ αž“αŸ„αŸ‡β€‹αž™αžΎαž„β€‹αž’αžΆαž…β€‹αžšαž€αžƒαžΎαž‰β€‹αž—αžΆαž–αž˜αž·αž“αž”αŸ’αžšαž€αŸ’αžšαžαžΈβ€‹αž‘αžΆαŸ†αž„αž“αŸαŸ‡β€‹αž™αŸ‰αžΆαž„β€‹αž„αžΆαž™αžŸαŸ’αžšαž½αž›β€‹αž“αŸ…αž›αžΎβ€‹αž€αŸ’αžšαžΆαž αŸ’αžœβ€‹αž‘αžΆαŸ†αž„αž“αŸαŸ‡αŸ” αž§αž‘αžΆαž αžšαžŽαŸ αž’αŸ’αžœαžΎαž”αž…αŸ’αž…αž»αž”αŸ’αž”αž“αŸ’αž“αž—αžΆαž–αž€αžΆαžšαž•αŸ’αž‘αž»αŸ‡αž‘αžΎαž„ αž¬αž›αž»αž”αž€αžΆαžšαž•αŸ’αž‘αž»αŸ‡αž‘αžΎαž„αŸ” αžœαžΆαž“αžΉαž„αž’αžΆαž…αž˜αžΎαž›αžƒαžΎαž‰αž™αŸ‰αžΆαž„αžαŸ’αž›αžΆαŸ†αž„αŸ”

αž’αŸ’αž“αž€αž€αŸαž’αžΆαž…αžšαž€αžƒαžΎαž‰αž—αžΆαž–αž˜αž·αž“αž”αŸ’αžšαž€αŸ’αžšαžαžΈαž“αŸ…αž€αŸ’αž“αž»αž„αžŸαŸ’αžαž·αžαž· "αž’αžŽαŸ’αžαŸ‚αž" αž•αž„αžŠαŸ‚αžšαŸ” αžαžΎβ€‹αžœαžΆβ€‹αž˜αžΆαž“αž“αŸαž™β€‹αž™αŸ‰αžΆαž„β€‹αžŠαžΌαž…αž˜αŸ’αžαŸαž…? PostgreSQL αž˜αžΆαž“αž€αž˜αŸ’αž˜αžœαž·αž’αžΈαžšαŸ€αž”αž…αŸ†αžŸαŸ†αžŽαž½αžšαžŠαŸαžšαžΉαž„αž˜αžΆαŸ† αž“αž·αž„αž›αŸ’αž’αžŽαžΆαžŸαŸ‹αŸ” αž αžΎαž™αž’αŸ’αž“αž€αž’αž—αž·αžœαžŒαŸ’αžαž“αŸαž”αžΆαž“αž›αŸ‡αž”αž„αŸ‹αž–αŸαž›αžœαŸαž›αžΆαž…αŸ’αžšαžΎαž“αž€αŸ’αž“αž»αž„αž€αžΆαžšαž’αž—αž·αžœαžŒαŸ’αžαž“αŸαžšαž”αžŸαŸ‹αžœαžΆαŸ” αžαžΎαž‚αžΆαžαŸ‹αž’αŸ’αžœαžΎαž€αžΆαžšαž™αŸ‰αžΆαž„αžŠαžΌαž…αž˜αŸ’αžαŸαž…? αžŠαžΎαž˜αŸ’αž”αžΈαž”αž„αŸ’αž€αžΎαžαž•αŸ‚αž“αž€αžΆαžšαž›αŸ’αž’ PostgreSQL αž”αŸ’αžšαž˜αžΌαž›αžŸαŸ’αžαž·αžαž·αžŸαŸ’αžαžΈαž–αžΈαž€αžΆαžšαž…αŸ‚αž€αž…αžΆαž™αž‘αž·αž“αŸ’αž“αž“αŸαž™αž€αŸ’αž“αž»αž„αžαžΆαžšαžΆαž„αž€αŸ’αž“αž»αž„αž…αž“αŸ’αž›αŸ„αŸ‡αž–αŸαž›αž‡αžΆαž€αŸ‹αž›αžΆαž€αŸ‹αž˜αž½αž™ αž“αž·αž„αž‡αžΆαž˜αž½αž™αž“αžΉαž„αž”αŸ’αžšαŸαž€αž„αŸ‹αž‡αžΆαž€αŸ‹αž›αžΆαž€αŸ‹αž˜αž½αž™αŸ” αž‘αžΆαŸ†αž„αž“αŸαŸ‡αž‚αžΊαž‡αžΆαžαž˜αŸ’αž›αŸƒαž‘αžΌαž‘αŸ…αž”αŸ†αž•αž»αžαŸ– αž…αŸ†αž“αž½αž“αž“αŸƒαžαž˜αŸ’αž›αŸƒαžαŸ‚αž˜αž½αž™αž‚αžαŸ‹ αž–αŸαžαŸŒαž˜αžΆαž“αž’αŸ†αž–αžΈ NULL αž€αŸ’αž“αž»αž„αžαžΆαžšαžΆαž„ αž–αŸαžαŸŒαž˜αžΆαž“αž‡αžΆαž…αŸ’αžšαžΎαž“αŸ”

αžŠαŸ„αž™αž•αŸ’αž’αŸ‚αž€αž›αžΎαžŸαŸ’αžαž·αžαž·αž‘αžΆαŸ†αž„αž“αŸαŸ‡ αž’αŸ’αž“αž€αžšαŸ€αž”αž…αŸ†αž•αŸ‚αž“αž€αžΆαžšαž”αž„αŸ’αž€αžΎαžαžŸαŸ†αžŽαž½αžšαž‡αžΆαž…αŸ’αžšαžΎαž“ αž‡αŸ’αžšαžΎαžŸαžšαžΎαžŸαž‡αž˜αŸ’αžšαžΎαžŸαžŠαŸαž”αŸ’αžšαžŸαžΎαžšαž”αŸ†αž•αž»αž αž αžΎαž™αž”αŸ’αžšαžΎαž•αŸ‚αž“αž€αžΆαžšαžŸαŸ†αžŽαž½αžšαž“αŸαŸ‡ αžŠαžΎαž˜αŸ’αž”αžΈαž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αžŸαŸ†αžŽαž½αžšαžŠαŸ„αž™αžαŸ’αž›αž½αž“αž―αž„ αž“αž·αž„αž”αž‰αŸ’αž‡αžΌαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž˜αž€αžœαž·αž‰αŸ”

αž αžΎαž™αžœαžΆαž€αžΎαžαž‘αžΎαž„αžŠαŸ‚αž›αžŸαŸ’αžαž·αžαž· "αž’αžŽαŸ’αžαŸ‚αž" αŸ” αž‘αž·αž“αŸ’αž“αž“αŸαž™αž‚αž»αžŽαž—αžΆαž– αž“αž·αž„αž”αžšαž·αž˜αžΆαžŽαž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαžŠαžΌαž…αž˜αŸ’αžŠαŸαž…αž“αŸ…αž€αŸ’αž“αž»αž„αžαžΆαžšαžΆαž„ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αžŸαŸ’αžαž·αžαž·αž˜αž·αž“αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αŸ’αžšαž˜αžΌαž›αž‘αŸαŸ” αž αžΎαž™αž•αŸ‚αž“αž€αžΆαžšαžŠαŸ‚αž›αž”αžΆαž“αž”αž„αŸ’αž€αžΎαžαž‘αžΎαž„αž”αŸ’αžšαž αŸ‚αž›αž‡αžΆαž˜αž·αž“αž›αŸ’αž’αž”αŸ†αž•αž»αžαž‘αŸαŸ” αž αžΎαž™αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž•αŸ‚αž“αž€αžΆαžšαžšαž”αžŸαŸ‹αž™αžΎαž„αž˜αžΆαž“αž—αžΆαž–αž›αŸ’αž’αž”αŸ’αžšαžŸαžΎαžšαžŠαŸ„αž™αž•αŸ’αž’αŸ‚αž€αž›αžΎαž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αžŠαŸ‚αž›αž”αŸ’αžšαž˜αžΌαž›αž”αžΆαž“ αžŠαŸ„αž™αž•αŸ’αž’αŸ‚αž€αž›αžΎαžαžΆαžšαžΆαž„ αž“αŸ„αŸ‡αž™αžΎαž„αž“αžΉαž„αž’αžΆαž…αžƒαžΎαž‰αž—αžΆαž–αž˜αž·αž“αž”αŸ’αžšαž€αŸ’αžšαžαžΈαž‘αžΆαŸ†αž„αž“αŸαŸ‡αŸ” αž‡αžΆαž§αž‘αžΆαž αžšαžŽαŸ αž“αŸ…αž€αž“αŸ’αž›αŸ‚αž„αžŽαžΆαž˜αž½αž™αžŠαŸ‚αž›αž‘αž·αž“αŸ’αž“αž“αŸαž™αž”αžΆαž“αž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαž‚αž»αžŽαž—αžΆαž– αž αžΎαž™αž‡αŸ†αž“αž½αžŸαž±αŸ’αž™αž›αž·αž”αž·αž€αŸ’αžšαž˜ αž€αžΆαžšαž†αŸ’αž›αž„αž€αžΆαžαŸ‹αžαžΆαž˜αžαžΆαžšαžΆαž„αž”αž“αŸ’αžαž”αž“αŸ’αž‘αžΆαž”αŸ‹αž‚αŸ’αž“αžΆαž”αžΆαž“αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αž”αŸ’αžšαžΎ αž–αŸ„αž›αž‚αžΊαž§αŸ” αž”αŸ’αžšαžŸαž·αž“αž”αžΎαžŸαŸ†αžŽαž½αžšαžαŸ’αžšαžΌαžœαž€αžΆαžšαžαŸ’αžšαž‘αž”αŸ‹αžαŸ’αžšαžΉαž˜αžαŸ‚ 100 αž‡αž½αžš (αž˜αžΆαž“αžŠαŸ‚αž“αž€αŸ†αžŽαžαŸ‹ 100) αž“αŸ„αŸ‡αž€αžΆαžšαžŸαŸ’αžœαŸ‚αž„αžšαž€αž–αŸαž‰αž›αŸαž‰αž“αžΉαž„αžαŸ’αžšαžΌαžœαž”αžΆαž“αž’αž“αž»αžœαžαŸ’αžαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžŸαŸ†αžŽαž½αžšαž“αŸαŸ‡αŸ” αž αžΎαž™β€‹αž“αŸαŸ‡β€‹αžαŸ‚αž„β€‹αž˜αžΆαž“β€‹αž₯αž‘αŸ’αž’αž·αž–αž›β€‹αž’αžΆαž€αŸ’αžšαž€αŸ‹β€‹αžαŸ’αž›αžΆαŸ†αž„β€‹αžŠαž›αŸ‹β€‹αž€αžΆαžšβ€‹αž’αž“αž»αžœαžαŸ’αžαŸ”

αž αžΎαž™αž™αžΎαž„αž’αžΆαž…αž˜αžΎαž›αžƒαžΎαž‰αžšαžΏαž„αž“αŸαŸ‡αž“αŸ…αž€αŸ’αž“αž»αž„αž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αŸ” αž αžΎαž™αž˜αžΎαž›αžŸαŸ†αžŽαž½αžšαž“αŸαŸ‡αžšαž½αž…αž αžΎαž™ αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž–αž“αŸ’αž™αž›αŸ‹αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžœαžΆ αž”αŸ’αžšαž˜αžΌαž›αžŸαŸ’αžαž·αžαž· αž”αž„αŸ’αž€αžΎαžαž›αž·αž”αž·αž€αŸ’αžšαž˜αž”αž“αŸ’αžαŸ‚αž˜αžαŸ’αž˜αžΈαŸ” αž αžΎαž™β€‹αž”αžΆαž“β€‹αž†αŸ’αž›αžΎαž™β€‹αžαž”β€‹αž“αžΉαž„β€‹αž”αž‰αŸ’αž αžΆβ€‹αž“αŸαŸ‡β€‹αžšαž½αž…β€‹αž αžΎαž™αŸ” αž“αŸ„αŸ‡αž αžΎαž™αž‡αžΆαž˜αžΌαž›αž αŸαžαž»αžŠαŸ‚αž›αžœαžΆαžŸαŸ†αžαžΆαž“αŸ‹αŸ”

αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‚αŸ’αžšαžΉαŸ‡αž“αŸƒαž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™ PostgreSQL αŸ” Alexey Lesovsky

αž§αž‘αžΆαž αžšαžŽαŸαž˜αž½αž™αž‘αŸ€αžαž“αŸƒαž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αŸ” αžαŸ’αž‰αž»αŸ†β€‹αž‚αž·αžβ€‹αžαžΆβ€‹αž˜αž“αž»αžŸαŸ’αžŸβ€‹αž‡αžΆβ€‹αž…αŸ’αžšαžΎαž“β€‹αž”αžΆαž“β€‹αž‘αž‘αž½αž›β€‹αžŸαŸ’αž‚αžΆαž›αŸ‹β€‹αž‚αžΆαžαŸ‹β€‹αž–αŸ’αžšαŸ„αŸ‡β€‹αž‚αžΆαžαŸ‹β€‹αž˜αžΆαž“β€‹αž”αŸ’αžšαž‡αžΆαž”αŸ’αžšαž·αž™β€‹αž—αžΆαž–β€‹αžαŸ’αž›αžΆαŸ†αž„αŸ” αž’αŸ’αž“αž€αžŽαžΆαž”αŸ’αžšαžΎαžœαžΆαž“αŸ…αž€αŸ’αž“αž»αž„αž‚αž˜αŸ’αžšαŸ„αž„αžšαž”αžŸαŸ‹αž–αž½αž€αž‚αŸαŸ” Prometheus? αžαžΎαž’αŸ’αž“αž€αžŽαžΆαž”αŸ’αžšαžΎαž•αž›αž·αžαž•αž›αž“αŸαŸ‡αž‡αžΆαž˜αž½αž™ Prometheus? αž€αžΆαžšαž–αž·αžαž‚αžΊαžαžΆαž“αŸ…αž€αŸ’αž“αž»αž„αžƒαŸ’αž›αžΆαŸ†αž„αžŸαŸ’αžαž„αŸ‹αžŠαžΆαžšαž“αŸƒαž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αž“αŸαŸ‡αž˜αžΆαž“αž•αŸ’αž‘αžΆαŸ†αž„αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž’αŸ’αžœαžΎαž€αžΆαžšαž‡αžΆαž˜αž½αž™ PostgreSQL - postgres_αž’αŸ’αž“αž€αž“αžΆαŸ†αž…αŸαž‰ Prometheus αŸ” αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž˜αžΆαž“αž–αŸαžαŸŒαž˜αžΆαž“αž›αž˜αŸ’αž’αž·αžαž’αžΆαž€αŸ’αžšαž€αŸ‹αž˜αž½αž™αŸ”

αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‚αŸ’αžšαžΉαŸ‡αž“αŸƒαž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™ PostgreSQL αŸ” Alexey Lesovsky

αž˜αžΆαž“αž€αŸ’αžšαžΆαž αŸ’αžœαž‡αžΆαž…αŸ’αžšαžΎαž“αŸ” αž αžΎαž™αž”αŸƒαžαŸ’αžšαžΌαžœαž”αžΆαž“αž…αž„αŸ’αž’αž»αž›αž”αž„αŸ’αž αžΆαž‰αžαžΆαž‡αžΆαž―αž€αž—αžΆαž– αž–αŸ„αž›αž‚αžΊαž˜αžΆαž“ 5 αž€αŸ’αžšαžΆαž αŸ’αžœαŸ” αž‘αžΆαŸ†αž„αž“αŸαŸ‡αž‚αžΊαž‡αžΆ αž”αž‰αŸ’αž…αžΌαž›αž‘αž·αž“αŸ’αž“αž“αŸαž™ αž’αŸ’αžœαžΎαž”αž…αŸ’αž…αž»αž”αŸ’αž”αž“αŸ’αž“αž—αžΆαž–αž‘αž·αž“αŸ’αž“αž“αŸαž™ αž›αž»αž”αž‘αž·αž“αŸ’αž“αž“αŸαž™ αž‘αžΆαž‰αž™αž€αž‘αž·αž“αŸ’αž“αž“αŸαž™ αž“αž·αž„αžαŸ’αžšαž‘αž”αŸ‹αž‘αž·αž“αŸ’αž“αž“αŸαž™αŸ” αž€αžΆαžšαžœαžΆαžŸαŸ‹αžœαŸ‚αž„αž―αž€αžαžΆαž‚αžΊαž”αŸƒαŸ” αž”αŸ‰αž»αž“αŸ’αžαŸ‚αžšαžΏαž„αž“αŸαŸ‡αž‚αžΊαžαžΆαžŸαŸ’αžαž·αžαž·αž“αŸ…αž€αŸ’αž“αž»αž„ PostgreSQL αžαŸ’αžšαž‘αž”αŸ‹αž‘αž·αž“αŸ’αž“αž“αŸαž™αž‡αžΆ tuple (αž‡αž½αžšαžŠαŸαž€) αŸ” αž αžΎαž™αžαžΆαž˜αž“αŸ„αŸ‡ αž€αŸ’αžšαžΆαž αŸ’αžœαž‘αžΆαŸ†αž„αž“αŸαŸ‡αž‚αžΊαž‡αžΆαžœαž·αž’αžΈαžŠαŸαž›αŸ’αž’αž˜αž½αž™αžŠαžΎαž˜αŸ’αž”αžΈαž˜αžΎαž›αžŸαŸ’αžšαžΆαž›αž”αž“αŸ’αž‘αž»αž€αž€αžΆαžšαž„αžΆαžšαžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αž…αŸ’αžšαžΎαž“αžŠαž„ αžšαžΆαž”αŸ‹αžŸαž·αž”αžŠαž„ αž–αžΈαž–αŸ’αžšαŸ„αŸ‡ tuple αž˜αž·αž“αž˜αŸ‚αž“αž‡αžΆαž”αŸƒαž‘αŸ tuple αž‚αžΊαž‡αžΆαžαŸ’αžŸαŸ‚αž’αž€αŸ’αžŸαžš αžœαžΆαž˜αžΆαž“αž…αŸ’αžšαžΎαž“αž”αŸƒ αž αžΎαž™αžœαžΆαžαŸ‚αž„αžαŸ‚αž˜αžΆαž“αž”αŸ’αžšαžœαŸ‚αž„αž’αžαŸαžšαŸ” αž“αŸ„αŸ‡αž‚αžΊαž€αžΆαžšαž‚αžŽαž“αžΆαž”αž“αŸ’αž‘αž»αž€αž€αžΆαžšαž„αžΆαžšαž‡αžΆαž”αŸƒαžŠαŸ„αž™αž”αŸ’αžšαžΎ tuples αž‚αžΊαž‡αžΆαž€αž·αž…αŸ’αž…αž€αžΆαžšαž˜αž·αž“αž”αŸ’αžšαžΆαž€αžŠαž”αŸ’αžšαž‡αžΆ αž¬αž–αž·αž”αžΆαž€αžαŸ’αž›αžΆαŸ†αž„αžŽαžΆαžŸαŸ‹αŸ” αžŠαžΌαž…αŸ’αž“αŸαŸ‡αž αžΎαž™ αž“αŸ…αž–αŸαž›αžŠαŸ‚αž›αž’αŸ’αž“αž€αž”αŸ’αžšαžΎαž•αŸ’αž‘αžΆαŸ†αž„αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„ αž¬αž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αžŠαŸ‚αž›αž—αŸ’αž‡αžΆαž”αŸ‹αž˜αž€αž‡αžΆαž˜αž½αž™ αžœαžΆαžαŸ‚αž„αžαŸ‚αžŸαŸ†αžαžΆαž“αŸ‹αž€αŸ’αž“αž»αž„αž€αžΆαžšαž™αž›αŸ‹αžŠαžΉαž„αžαžΆαžœαžΆαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž”αžΆαž“αžαŸ’αžšαžΉαž˜αžαŸ’αžšαžΌαžœ αž“αž·αž„αž”αž‰αŸ’αž‡αžΌαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αžŠαŸ‚αž›αž”αžΆαž“αžœαžΆαž™αžαž˜αŸ’αž›αŸƒαž™αŸ‰αžΆαž„αžαŸ’αžšαžΉαž˜αžαŸ’αžšαžΌαžœαŸ”

αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‚αŸ’αžšαžΉαŸ‡αž“αŸƒαž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™ PostgreSQL αŸ” Alexey Lesovsky

αžαžΎαž’αŸ’αžœαžΎαžŠαžΌαž…αž˜αŸ’αžαŸαž…αžŠαžΎαž˜αŸ’αž”αžΈαž‘αž‘αž½αž›αž”αžΆαž“αžŸαŸ’αžαž·αžαž·αž“αŸ…αž›αžΎαžαžΆαžšαžΆαž„αž‘αžΆαŸ†αž„αž“αŸαŸ‡? αž…αŸ†αž–αŸ„αŸ‡αž‚αŸ„αž›αž”αŸ†αžŽαž„αž“αŸαŸ‡ PostgreSQL αž˜αžΆαž“αž‘αž·αžŠαŸ’αž‹αž—αžΆαž–αž‚αŸ’αžšαž½αžŸαžΆαžšαž‡αžΆαž€αŸ‹αž›αžΆαž€αŸ‹αŸ” αž αžΎαž™αž‘αž·αžŠαŸ’αž‹αž—αžΆαž–αžŸαŸ†αžαžΆαž“αŸ‹αž‚αžΊ pg_stat_user_tables. User_tables - αž“αŸαŸ‡αž˜αžΆαž“αž“αŸαž™αžαžΆαžαžΆαžšαžΆαž„αžŠαŸ‚αž›αž”αžΆαž“αž”αž„αŸ’αž€αžΎαžαž€αŸ’αž“αž»αž„αž“αžΆαž˜αž’αŸ’αž“αž€αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αŸ” αž•αŸ’αž‘αž»αž™αž‘αŸ…αžœαž·αž‰ αž˜αžΆαž“αž‘αž·αžŠαŸ’αž‹αž—αžΆαž–αž”αŸ’αžšαž–αŸαž“αŸ’αž’αžŠαŸ‚αž›αž”αŸ’αžšαžΎαžŠαŸ„αž™ PostgreSQL αžαŸ’αž›αž½αž“αžœαžΆαž•αŸ’αž‘αžΆαž›αŸ‹αŸ” αž αžΎαž™αž˜αžΆαž“αžαžΆαžšαžΆαž„αžŸαž„αŸ’αžαŸαž” Alltables αžŠαŸ‚αž›αžšαž½αž˜αž˜αžΆαž“αž‘αžΆαŸ†αž„αž”αŸ’αžšαž–αŸαž“αŸ’αž’ αž“αž·αž„αž’αŸ’αž“αž€αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αŸ” αž’αŸ’αž“αž€αž’αžΆαž…αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αž–αžΈαž–αž½αž€αž‚αŸαžŽαžΆαž˜αž½αž™αžŠαŸ‚αž›αž’αŸ’αž“αž€αž…αžΌαž›αž…αž·αžαŸ’αžαž”αŸ†αž•αž»αžαŸ”

αžŠαŸ„αž™αž”αŸ’αžšαžΎαžœαžΆαž›αžαžΆαž„αž›αžΎ αž’αŸ’αž“αž€αž’αžΆαž…αž”αŸ‰αžΆαž“αŸ‹αžŸαŸ’αž˜αžΆαž“αž…αŸ†αž“αž½αž“αž“αŸƒαž€αžΆαžšαž”αž‰αŸ’αž…αžΌαž› αž€αžΆαžšαž’αžΆαž”αŸ‹αžŠαŸαž αž“αž·αž„αž€αžΆαžšαž›αž»αž”αŸ” αž§αž‘αžΆαž αžšαžŽαŸαž“αŸƒαž•αŸ’αž‘αžΆαŸ†αž„αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αžŠαŸ‚αž›αžαŸ’αž‰αž»αŸ†αž”αžΆαž“αž”αŸ’αžšαžΎαž”αŸ’αžšαžΎαžœαžΆαž›αž‘αžΆαŸ†αž„αž“αŸαŸ‡αžŠαžΎαž˜αŸ’αž”αžΈαžœαžΆαž™αžαž˜αŸ’αž›αŸƒαž›αž€αŸ’αžαžŽαŸˆαž“αŸƒαž”αž“αŸ’αž‘αž»αž€αž€αžΆαžšαž„αžΆαžšαŸ” αžŠαžΌαž…αŸ’αž“αŸαŸ‡β€‹αž αžΎαž™ αž™αžΎαž„β€‹αž€αŸβ€‹αž’αžΆαž…β€‹αž”αž„αŸ’αž€αžΎαžβ€‹αžœαžΆβ€‹αž”αžΆαž“β€‹αžŠαŸ‚αžšαŸ” αž”αŸ‰αž»αž“αŸ’αžαŸ‚αžœαžΆαž‚αž½αžšαž’αŸ„αž™αž…αž„αž…αžΆαŸ†αžαžΆαž‘αžΆαŸ†αž„αž“αŸαŸ‡αž‚αžΊαž‡αžΆ tuples αž˜αž·αž“αž˜αŸ‚αž“ bytes αžŠαžΌαž…αŸ’αž“αŸαŸ‡αž™αžΎαž„αž˜αž·αž“αž’αžΆαž…αž’αŸ’αžœαžΎαžœαžΆαžαŸ’αžšαžΉαž˜αž‡αžΆαž”αŸƒαž‘αŸαŸ”

αžŠαŸ„αž™αž•αŸ’αž’αŸ‚αž€αž›αžΎαž‘αž·αž“αŸ’αž“αž“αŸαž™αž“αŸαŸ‡ αž™αžΎαž„αž’αžΆαž…αž”αž„αŸ’αž€αžΎαžαž’αŸ’αžœαžΈαžŠαŸ‚αž›αž‚αŸαž αŸ…αžαžΆαžαžΆαžšαžΆαž„ TopN αŸ” αž§αž‘αžΆαž αžšαžŽαŸ Top-5, Top-10 αŸ” αž αžΎαž™β€‹αž’αŸ’αž“αž€β€‹αž’αžΆαž…β€‹αžαžΆαž˜β€‹αžŠαžΆαž“β€‹αžαž»β€‹αž€αŸ’αžαŸ…β€‹αž‘αžΆαŸ†αž„αž“αŸ„αŸ‡β€‹αžŠαŸ‚αž›β€‹αžαŸ’αžšαžΌαžœβ€‹αž”αžΆαž“β€‹αž€αŸ‚αž…αŸ’αž“αŸƒβ€‹αž…αŸ’αžšαžΎαž“β€‹αž‡αžΆαž„β€‹αž€αž“αŸ’αž›αŸ‚αž„β€‹αž•αŸ’αžŸαŸαž„β€‹αž‘αŸ€αžαŸ” αž§αž‘αžΆαž αžšαžŽαŸ 5 αžαžΆαžšαžΆαž„ "αž€αŸ’αžαŸ…" αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αžΆαžšαž”αž‰αŸ’αž…αžΌαž›αŸ” αž αžΎαž™αž€αžΆαžšαž”αŸ’αžšαžΎαžαžΆαžšαžΆαž„ TopN αž‘αžΆαŸ†αž„αž“αŸαŸ‡ αž™αžΎαž„αžœαžΆαž™αžαž˜αŸ’αž›αŸƒαž”αž“αŸ’αž‘αž»αž€αž€αžΆαžšαž„αžΆαžšαžšαž”αžŸαŸ‹αž™αžΎαž„ αž αžΎαž™αž’αžΆαž…αžœαžΆαž™αžαž˜αŸ’αž›αŸƒαž”αž“αŸ’αž‘αž»αž€αž€αžΆαžšαž„αžΆαžšαž”αž“αŸ’αž‘αžΆαž”αŸ‹αž–αžΈαž€αžΆαžšαž…αŸαž‰αž•αŸ’αžŸαžΆαž™ αž€αžΆαžšαž’αžΆαž”αŸ‹αžŠαŸαž αž“αž·αž„αž€αžΆαžšαžŠαžΆαž€αŸ‹αž±αŸ’αž™αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αžŽαžΆαž˜αž½αž™αŸ”

αžœαžΆαž€αŸαžŸαŸ†αžαžΆαž“αŸ‹αž•αž„αžŠαŸ‚αžšαž€αŸ’αž“αž»αž„αž€αžΆαžšαžœαžΆαž™αžαž˜αŸ’αž›αŸƒαž‘αŸ†αž αŸ†αž“αŸƒαžαžΆαžšαžΆαž„ αž–αŸ’αžšαŸ„αŸ‡αž–αŸαž›αžαŸ’αž›αŸ‡αž’αŸ’αž“αž€αž’αž—αž·αžœαžŒαŸ’αžαž“αŸαž”αž‰αŸ’αž…αŸαž‰αž˜αž»αžαž„αžΆαžšαžαŸ’αž˜αžΈ αž αžΎαž™αžαžΆαžšαžΆαž„αžšαž”αžŸαŸ‹αž™αžΎαž„αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αž αžΎαž˜αž€αŸ’αž“αž»αž„αž‘αŸ†αž αŸ†αž’αŸ† αžŠαŸ„αž™αžŸαžΆαžšαž–αž½αž€αž‚αŸαž”αžΆαž“αžŸαž˜αŸ’αžšαŸαž…αž…αž·αžαŸ’αžαž”αž“αŸ’αžαŸ‚αž˜αž…αŸ†αž“αž½αž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž”αž“αŸ’αžαŸ‚αž˜ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž˜αž·αž“αž”αžΆαž“αž‘αžΆαž™αžαžΆαžαžΎαžœαžΆαž“αžΉαž„αž‘αŸ…αž‡αžΆαž™αŸ‰αžΆαž„αžŽαžΆαž“αŸ„αŸ‡αž‘αŸαŸ” αž”αŸ‰αŸ‡αž–αžΆαž›αŸ‹αžŠαž›αŸ‹αž‘αŸ†αž αŸ†αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αŸ” αž€αžšαžŽαžΈβ€‹αž”αŸ‚αž”β€‹αž“αŸαŸ‡β€‹αž€αŸβ€‹αž’αŸ’αžœαžΎβ€‹αž±αŸ’αž™β€‹αž™αžΎαž„β€‹αž—αŸ’αž‰αžΆαž€αŸ‹β€‹αž•αŸ’αž’αžΎαž›β€‹αž•αž„β€‹αžŠαŸ‚αžšαŸ”

αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‚αŸ’αžšαžΉαŸ‡αž“αŸƒαž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™ PostgreSQL αŸ” Alexey Lesovsky

αž αžΎαž™αž₯αž‘αžΌαžœαž“αŸαŸ‡αžŸαŸ†αžŽαž½αžšαžαžΌαž…αž˜αž½αž™αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž’αŸ’αž“αž€αŸ” αžαžΎβ€‹αž˜αžΆαž“β€‹αžŸαŸ†αžŽαž½αžšβ€‹αž’αŸ’αžœαžΈβ€‹αž€αžΎαžαž‘αžΎαž„β€‹αž“αŸ…β€‹αž–αŸαž›β€‹αž’αŸ’αž“αž€β€‹αžŸαž˜αŸ’αž‚αžΆαž›αŸ‹β€‹αžƒαžΎαž‰β€‹αž€αžΆαžšβ€‹αž•αŸ’αž‘αž»αž€β€‹αž“αŸ…β€‹αž›αžΎβ€‹αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“β€‹αž”αž˜αŸ’αžšαžΎβ€‹αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“β€‹αž‘αž·αž“αŸ’αž“αž“αŸαž™β€‹αžšαž”αžŸαŸ‹β€‹αž’αŸ’αž“αž€? αžαžΎαž’αŸ’αž“αž€αž˜αžΆαž“αžŸαŸ†αžŽαž½αžšαž’αŸ’αžœαžΈαž”αž“αŸ’αž‘αžΆαž”αŸ‹?

αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‚αŸ’αžšαžΉαŸ‡αž“αŸƒαž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™ PostgreSQL αŸ” Alexey Lesovsky

αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž€αžΆαžšαž–αž·αžαžŸαŸ†αžŽαž½αžšαž€αžΎαžαž‘αžΎαž„αžŠαžΌαž…αžαžΆαž„αž€αŸ’αžšαŸ„αž˜αŸ” αžαžΎαž”αž“αŸ’αž‘αž»αž€αž”αžŽαŸ’αžαžΆαž›αž±αŸ’αž™αž˜αžΆαž“αžŸαŸ†αžŽαžΎαž’αŸ’αžœαžΈαžαŸ’αž›αŸ‡? αž“αŸ„αŸ‡αž‚αžΊαžœαžΆαž˜αž·αž“αž‚αž½αžšαž±αŸ’αž™αž…αžΆαž”αŸ‹αž’αžΆαžšαž˜αŸ’αž˜αžŽαŸαž€αŸ’αž“αž»αž„αž€αžΆαžšαž˜αžΎαž›αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαžŠαŸ‚αž›αž”αžŽαŸ’αžαžΆαž›αž˜αž€αž–αžΈαž”αž“αŸ’αž‘αž»αž€αž“αŸ„αŸ‡αž‘αŸαŸ” αžœαžΆαž…αŸ’αž”αžΆαžŸαŸ‹αžŽαžΆαžŸαŸ‹αžαžΆαž”αŸ’αžšαžŸαž·αž“αž”αžΎαž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αž˜αžΆαž“αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™ αž“αŸ„αŸ‡αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž€αŸ†αž–αž»αž„αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž“αŸ…αž‘αžΈαž“αŸ„αŸ‡ αž αžΎαž™αžœαžΆαž…αŸ’αž”αžΆαžŸαŸ‹αžŽαžΆαžŸαŸ‹αžαžΆαž˜αžΆαž“αžαŸ‚αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž”αŸ‰αž»αžŽαŸ’αžŽαŸ„αŸ‡αžŠαŸ‚αž›αž“αžΉαž„αžαŸ’αžšαžΌαžœαž”αŸ„αŸ‡αž…αŸ„αž›αž“αŸ…αž‘αžΈαž“αŸ„αŸ‡αŸ” αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž™αžΎαž„αž”αžΎαž€ Top αž™αžΎαž„αž“αžΉαž„αžƒαžΎαž‰αž˜αžΆαž“αž”αž‰αŸ’αž‡αžΈαž“αŸƒαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž“αŸ…αž€αŸ’αž“αž»αž„ PostgreSQL αžŠαŸ‚αž›αž€αŸ†αž–αž»αž„αž’αŸ’αžœαžΎαž’αŸ’αžœαžΈαž˜αž½αž™αŸ” αžœαžΆβ€‹αž“αžΉαž„β€‹αž˜αž·αž“β€‹αž…αŸ’αž”αžΆαžŸαŸ‹β€‹αž–αžΈβ€‹αž€αŸ†αž–αžΌαž›β€‹αžαžΆβ€‹αž–αž½αž€αž‚αŸβ€‹αž€αŸ†αž–αž»αž„β€‹αž’αŸ’αžœαžΎβ€‹αž’αŸ’αžœαžΈβ€‹αž‘αŸαŸ”

αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‚αŸ’αžšαžΉαŸ‡αž“αŸƒαž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™ PostgreSQL αŸ” Alexey Lesovsky

αžŠαžΌαž…αŸ’αž“αŸ„αŸ‡αž αžΎαž™ αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαžŸαŸ’αžœαŸ‚αž„αžšαž€αžŸαŸ†αžŽαž½αžšαž‘αžΆαŸ†αž„αž“αŸ„αŸ‡αžŠαŸ‚αž›αž”αžŽαŸ’αžαžΆαž›αž±αŸ’αž™αž˜αžΆαž“αž”αž“αŸ’αž‘αž»αž€αžαŸ’αž–αžŸαŸ‹αž”αŸ†αž•αž»αž αž–αžΈαž–αŸ’αžšαŸ„αŸ‡αž€αžΆαžšαž›αŸƒαžαž˜αŸ’αžšαžΌαžœαžŸαŸ†αžŽαž½αžšαž‡αžΆαž€αŸ’αž”αž½αž“αž•αŸ’αžαž›αŸ‹αž”αŸ’αžšαžΆαž€αŸ‹αž…αŸ†αžŽαŸαž‰αž…αŸ’αžšαžΎαž“αž‡αžΆαž„αž€αžΆαžšαž›αŸƒαžαž˜αŸ’αžšαžΌαžœαž€αžΆαžšαž€αŸ†αžŽαžαŸ‹αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’ PostgreSQL αž¬αž”αŸ’αžšαž–αŸαž“αŸ’αž’αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžš αž¬αžŸαžΌαž˜αŸ’αž”αžΈαžαŸ‚αž›αŸƒαžαž˜αŸ’αžšαžΌαžœαž•αŸ’αž“αŸ‚αž€αžšαžΉαž„αŸ” αž™αŸ„αž„αžαžΆαž˜αž€αžΆαžšαž”αŸ‰αžΆαž“αŸ‹αžŸαŸ’αž˜αžΆαž“αžšαž”αžŸαŸ‹αžαŸ’αž‰αž»αŸ†αž“αŸαŸ‡αž‚αžΊαž”αŸ’αžšαž αŸ‚αž› 80-85-90% αŸ” αž αžΎαž™αž“αŸαŸ‡αžαŸ’αžšαžΌαžœαž”αžΆαž“αž’αŸ’αžœαžΎαž›αžΏαž“αž‡αžΆαž„αž˜αž»αž“αŸ” αžœαžΆαž›αžΏαž“αž‡αžΆαž„αž˜αž»αž“αž€αŸ’αž“αž»αž„αž€αžΆαžšαž€αŸ‚αžαž˜αŸ’αžšαžΌαžœαžŸαŸ†αžŽαžΎαž‡αžΆαž‡αžΆαž„αž€αŸ‚αžαž˜αŸ’αžšαžΌαžœαž€αžΆαžšαž€αŸ†αžŽαžαŸ‹ αž€αŸ†αžŽαžαŸ‹αž–αŸαž›αž…αžΆαž”αŸ‹αž•αŸ’αžŠαžΎαž˜αž‘αžΎαž„αžœαž·αž‰ αž‡αžΆαž–αž·αžŸαŸαžŸαž”αŸ’αžšαžŸαž·αž“αž”αžΎαž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž˜αž·αž“αž’αžΆαž…αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αž‘αžΎαž„αžœαž·αž‰ αž¬αž”αž“αŸ’αžαŸ‚αž˜αž•αŸ’αž“αŸ‚αž€αžšαžΉαž„αŸ” αžœαžΆαž€αžΆαž“αŸ‹αžαŸ‚αž„αžΆαž™αžŸαŸ’αžšαž½αž›αž€αŸ’αž“αž»αž„αž€αžΆαžšαžŸαžšαžŸαŸαžšαžŸαŸ†αžŽαž½αžšαž“αŸ…αž€αž“αŸ’αž›αŸ‚αž„αžŽαžΆαž˜αž½αž™ αž¬αž”αž“αŸ’αžαŸ‚αž˜αž›αž·αž”αž·αž€αŸ’αžšαž˜αžŠαžΎαž˜αŸ’αž”αžΈαž‘αž‘αž½αž›αž”αžΆαž“αž›αž‘αŸ’αž’αž•αž›αž”αŸ’αžšαžŸαžΎαžšαž‡αžΆαž„αž˜αž»αž“αž–αžΈαžŸαŸ†αžŽαž½αžšαž“αŸαŸ‡αŸ”

αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‚αŸ’αžšαžΉαŸ‡αž“αŸƒαž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™ PostgreSQL αŸ” Alexey Lesovsky
αžŠαžΌαž…αŸ’αž“αŸ„αŸ‡αž αžΎαž™ αž…αžΆαŸ†αž”αžΆαž…αŸ‹αžαŸ’αžšαžΌαžœαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αžŸαŸ†αžŽαžΎ αž“αž·αž„αž—αžΆαž–αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαžΆαž“αŸ‹αžšαž”αžŸαŸ‹αž–αž½αž€αž‚αŸαŸ” αžŸαžΌαž˜αž›αžΎαž€αž§αž‘αžΆαž αžšαžŽαŸαž˜αž½αž™αž‘αŸ€αžαž“αŸƒαž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αŸ” αž αžΎαž™αž“αŸ…αž‘αžΈαž“αŸαŸ‡αž•αž„αžŠαŸ‚αžš αž αžΆαž€αŸ‹αžŠαžΌαž…αž‡αžΆαž˜αžΆαž“αž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αžŠαŸαž›αŸ’αž’αŸ” αž˜αžΆαž“αž–αŸαžαŸαž˜αžΆαž“αžŸαŸ’αžαžΈαž–αžΈαž€αžΆαžšαž…αž˜αŸ’αž›αž„ αž˜αžΆαž“αž–αŸαžαŸαž˜αžΆαž“αžŸαŸ’αžαžΈαž–αžΈαž†αŸ’αž›αž„αž€αžΆαžαŸ‹ αž€αžΆαžšαž‘αž”αŸ‹αžŸαŸ’αž€αžΆαžαŸ‹ αž€αžΆαžšαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž’αž“αž’αžΆαž“αŸ” αž’αŸ’αžœαžΈαŸ—αž‚αžΊαž›αŸ’αž’ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž˜αž·αž“αž˜αžΆαž“αž–αŸαžαŸŒαž˜αžΆαž“αž’αŸ†αž–αžΈαžŸαŸ†αžŽαžΎαž‘αŸαŸ” αžœαžΆαž˜αž·αž“αž…αŸ’αž”αžΆαžŸαŸ‹αž‘αŸαžαžΆαžαžΎαžŸαŸ†αžŽαž½αžšαž’αŸ’αžœαžΈαžαŸ’αž›αŸ‡αžŠαŸ‚αž›αž€αŸ†αž–αž»αž„αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αžšαž”αžŸαŸ‹αž™αžΎαž„ αžšαž™αŸˆαž–αŸαž›αžŠαŸ‚αž›αž–αž½αž€αž‚αŸαž€αŸ†αž–αž»αž„αžŠαŸ†αžŽαžΎαžšαž€αžΆαžš αžαžΎαžŸαŸ†αžŽαž½αžšαž‘αžΆαŸ†αž„αž“αŸαŸ‡αž˜αžΆαž“αž…αŸ†αž“αž½αž“αž”αŸ‰αž»αž“αŸ’αž˜αžΆαž“αŸ” αž™αžΎαž„αžαŸ’αžšαžΌαžœαžαŸ‚αž˜αžΆαž“αž–αŸαžαŸŒαž˜αžΆαž“αž“αŸαŸ‡αž‡αžΆαž“αž·αž…αŸ’αž…αž“αŸ…αž€αŸ’αž“αž»αž„αž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αžšαž”αžŸαŸ‹αž™αžΎαž„αŸ”

αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‚αŸ’αžšαžΉαŸ‡αž“αŸƒαž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™ PostgreSQL αŸ” Alexey Lesovsky

αž αžΎαž™αžŠαžΎαž˜αŸ’αž”αžΈαž‘αž‘αž½αž›αž”αžΆαž“αž–αŸαžαŸŒαž˜αžΆαž“αž“αŸαŸ‡ αž™αžΎαž„αž’αžΆαž…αž”αŸ’αžšαžΎαž˜αŸ‰αžΌαžŒαž»αž› pg_stat_statements αŸ” αžŠαŸ„αž™αž•αŸ’αž’αŸ‚αž€αž›αžΎαžœαžΆ αž’αŸ’αž“αž€αž’αžΆαž…αž”αž„αŸ’αž€αžΎαžαž€αŸ’αžšαžΆαž αŸ’αžœαž•αŸ’αžŸαŸαž„αŸ—αŸ” αž§αž‘αžΆαž αžšαžŽαŸ αž’αŸ’αž“αž€αž’αžΆαž…αž‘αž‘αž½αž›αž”αžΆαž“αž–αŸαžαŸŒαž˜αžΆαž“αž’αŸ†αž–αžΈαžŸαŸ†αžŽαž½αžšαž‰αžΉαž€αž‰αžΆαž”αŸ‹αž”αŸ†αž•αž»αž αž“αŸ„αŸ‡αž‚αžΊαž“αŸ…αž›αžΎαžŸαŸ†αžŽαž½αžšαž‘αžΆαŸ†αž„αž“αŸ„αŸ‡αžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž‰αžΉαž€αž‰αžΆαž”αŸ‹αž”αŸ†αž•αž»αžαŸ” αž”αžΆαž‘/αž…αžΆαžŸ αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž–αžΈαž€αžΆαžšαžŠαžΆαž€αŸ‹αž±αŸ’αž™αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹ αžœαžΆαž˜αžΆαž“αž”αŸ’αžšαž™αŸ„αž‡αž“αŸαžαŸ’αž›αžΆαŸ†αž„αžŽαžΆαžŸαŸ‹αž€αŸ’αž“αž»αž„αž€αžΆαžšαž˜αžΎαž›αžœαžΆ αž αžΎαž™αž™αž›αŸ‹αžαžΆαžαžΎαž˜αžΆαž“αž€αžΆαžšαž€αžΎαž“αž‘αžΎαž„αž“αŸ…αž€αŸ’αž“αž»αž„αžŸαŸ†αžŽαžΎαŸ”

αž’αŸ’αž“αž€αž’αžΆαž…αžαžΆαž˜αžŠαžΆαž“αžŸαŸ†αžŽαž½αžšαžŠαŸ‚αž›αžœαŸ‚αž„αž”αŸ†αž•αž»αž αž“αŸ„αŸ‡αž‚αžΊαžŸαŸ†αžŽαž½αžšαž‘αžΆαŸ†αž„αž“αŸ„αŸ‡αžŠαŸ‚αž›αž…αŸ†αžŽαžΆαž™αž–αŸαž›αž™αžΌαžšαž”αŸ†αž•αž»αžαžŠαžΎαž˜αŸ’αž”αžΈαž”αž‰αŸ’αž…αž”αŸ‹αŸ” αž–αž½αž€αž‚αŸαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž›αžΎ processor αž–αž½αž€αž‚αŸαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹ I/O αŸ” αž™αžΎαž„αž€αŸαž’αžΆαž…αžœαžΆαž™αžαž˜αŸ’αž›αŸƒαžœαžΆαžŠαŸ„αž™αž”αŸ’αžšαžΎαžœαžΆαž› total_time, mean_time, blk_write_time αž“αž·αž„ blk_read_time αŸ”

αž™αžΎαž„αž’αžΆαž…αžœαžΆαž™αžαž˜αŸ’αž›αŸƒ αž“αž·αž„αžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αžŸαŸ†αžŽαžΎαžŠαŸ‚αž›αž’αŸ’αž„αž“αŸ‹αž”αŸ†αž•αž»αžαž€αŸ’αž“αž»αž„αž›αž€αŸ’αžαžαžŽαŸ’αžŒαž“αŸƒαž€αžΆαžšαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž’αž“αž’αžΆαž“ αžŠαŸ‚αž›αž’αžΆαž“αž–αžΈαžαžΆαžŸ αžŠαŸ‚αž›αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž‡αžΆαž˜αž½αž™αž’αž„αŸ’αž‚αž…αž„αž…αžΆαŸ† αž¬αž•αŸ’αž‘αž»αž™αž‘αŸ…αžœαž·αž‰ αž”αž„αŸ’αž€αžΎαžαž”αŸ’αžšαž—αŸαž‘αž“αŸƒαž€αžΆαžšαžŸαžšαžŸαŸαžšαž˜αž½αž™αž…αŸ†αž“αž½αž“αŸ”

αž™αžΎαž„αž’αžΆαž…αžœαžΆαž™αžαž˜αŸ’αž›αŸƒαžŸαŸ†αžŽαžΎαžŠαŸαžŸαž”αŸ’αž”αž»αžšαžŸαž”αŸ†αž•αž»αžαŸ” αž‘αžΆαŸ†αž„αž“αŸαŸ‡αž‚αžΊαž‡αžΆαžŸαŸ†αžŽαž½αžšαžŠαŸ‚αž›αžαŸ’αžšαž‘αž”αŸ‹αž‡αž½αžšαž˜αž½αž™αž…αŸ†αž“αž½αž“αž’αŸ†αŸ” αž§αž‘αžΆαž αžšαžŽαŸ αž“αŸαŸ‡αž’αžΆαž…αž‡αžΆαžŸαŸ†αžŽαžΎαž˜αž½αž™αž…αŸ†αž“αž½αž“αžŠαŸ‚αž›αž–αž½αž€αž‚αŸαž—αŸ’αž›αŸαž…αž€αŸ†αžŽαžαŸ‹αžŠαŸ‚αž“αž€αŸ†αžŽαžαŸ‹αŸ” αž αžΎαž™αžœαžΆαž‚αŸ’αžšαžΆαž“αŸ‹αžαŸ‚αžαŸ’αžšαž‘αž”αŸ‹αž˜αžΆαžαž·αž€αžΆαž‘αžΆαŸ†αž„αž˜αžΌαž›αž“αŸƒαžαžΆαžšαžΆαž„ αž¬αžŸαŸ†αžŽαž½αžšαž†αŸ’αž›αž„αž€αžΆαžαŸ‹αžαžΆαžšαžΆαž„αžŠαŸ‚αž›αž”αžΆαž“αžŸαž½αžšαŸ”

αž αžΎαž™αž’αŸ’αž“αž€αž€αŸαž’αžΆαž…αžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αžŸαŸ†αžŽαž½αžšαžŠαŸ‚αž›αž”αŸ’αžšαžΎαž―αž€αžŸαžΆαžšαž”αžŽαŸ’αžαŸ„αŸ‡αž’αžΆαžŸαž“αŸ’αž“ αž¬αžαžΆαžšαžΆαž„αž”αžŽαŸ’αžαŸ„αŸ‡αž’αžΆαžŸαž“αŸ’αž“αž•αž„αžŠαŸ‚αžšαŸ”

αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‚αŸ’αžšαžΉαŸ‡αž“αŸƒαž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™ PostgreSQL αŸ” Alexey Lesovsky
αž αžΎαž™αž™αžΎαž„αž“αŸ…αžαŸ‚αž˜αžΆαž“αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž•αŸ’αž‘αŸƒαžαžΆαž„αž€αŸ’αžšαŸ„αž™αŸ” αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž•αŸ’αž‘αŸƒαžαžΆαž„αž€αŸ’αžšαŸ„αž™αž‚αžΊαž‡αžΆαž…αŸ†αžŽαž»αž…αžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αž‡αžΆαž…αž˜αŸ’αž”αž„ αž¬αž–αž½αž€αž‚αŸαžαŸ’αžšαžΌαžœαž”αžΆαž“αž‚αŸαž αŸ…αžαžΆαž”αŸ‰αž»αžŸαŸ’αžαž·αŸαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αž•αž„αžŠαŸ‚αžš αž‘αžΆαŸ†αž„αž“αŸαŸ‡αž‚αžΊαž‡αžΆ autovacuum αž“αž·αž„αž€αžΆαžšαž…αž˜αŸ’αž›αž„αŸ”

αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‚αŸ’αžšαžΉαŸ‡αž“αŸƒαž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™ PostgreSQL αŸ” Alexey Lesovsky

αž§αž‘αžΆαž αžšαžŽαŸαž˜αž½αž™αž‘αŸ€αžαž“αŸƒαž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αŸ” αž˜αžΆαž“αž•αŸ’αž‘αžΆαŸ†αž„αžαŸ‚αž‘αžΆαŸ†αž“αŸ…αžαžΆαž„αž†αŸ’αžœαŸαž„ αžŸαžΌαž˜αž…αžΌαž›αž‘αŸ…αž€αžΆαž“αŸ‹αžœαžΆ αž αžΎαž™αžŸαž„αŸ’αžƒαžΉαž˜αžαžΆαž“αžΉαž„αžƒαžΎαž‰αž’αŸ’αžœαžΈαžŠαŸ‚αž›αž˜αžΆαž“αž”αŸ’αžšαž™αŸ„αž‡αž“αŸαŸ” αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž“αŸ…αž‘αžΈαž“αŸαŸ‡αž‚αŸ’αžšαžΆαž“αŸ‹αžαŸ‚αž‡αžΆαž–αŸαž›αžœαŸαž›αžΆαž“αŸƒαž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαž”αžΌαž˜αž’αžΌαž›αžΈ αž“αž·αž„αž€αžΆαžšαž”αŸ’αžšαž˜αžΌαž›αžŸαŸ’αžαž·αžαž·αž”αŸ‰αž»αžŽαŸ’αžŽαŸ„αŸ‡ αž‚αŸ’αž˜αžΆαž“αž’αŸ’αžœαžΈαž‘αŸ€αžαž‘αŸαŸ” αž“αŸαŸ‡αž‚αžΊαž‡αžΆαž–αŸαžαŸŒαž˜αžΆαž“αž˜αž·αž“αž›αŸ’αž’αžαŸ’αž›αžΆαŸ†αž„αžŽαžΆαžŸαŸ‹ αžŠαžΌαž…αŸ’αž“αŸαŸ‡αž™αžΎαž„αžαŸ’αžšαžΌαžœαžαŸ‚αž˜αžΆαž“αž–αŸαžαŸŒαž˜αžΆαž“αž’αŸ†αž–αžΈαžšαž”αŸ€αž”αžŠαŸ‚αž›αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž•αŸ’αž‘αŸƒαžαžΆαž„αž€αŸ’αžšαŸ„αž™αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αžšαž”αžŸαŸ‹αž™αžΎαž„ αž“αž·αž„αžαžΆαžαžΎαž˜αžΆαž“αž”αž‰αŸ’αž αžΆαž’αŸ’αžœαžΈαž–αžΈαž€αžΆαžšαž„αžΆαžšαžšαž”αžŸαŸ‹αž–αž½αž€αž‚αŸαŸ”

αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‚αŸ’αžšαžΉαŸ‡αž“αŸƒαž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™ PostgreSQL αŸ” Alexey Lesovsky

αž“αŸ…αž–αŸαž›αž™αžΎαž„αž˜αžΎαž›αž”αŸ‰αž»αžŸαŸ’αžαž·αŸαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™ αž™αžΎαž„αž‚αž½αžšαž…αž„αž…αžΆαŸ†αžαžΆ αž”αŸ‰αž»αžŸαŸ’αžαž·αŸαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™ αž›αž»αž”αž‘αŸ†αž–αŸαžšαž€αžαŸ’αžœαž€αŸ‹αž–αžΈαžαŸ†αž”αž“αŸ‹αž’αž„αŸ’αž‚αž…αž„αž…αžΆαŸ†αžŠαŸ‚αž›αž”αžΆαž“αž”αŸ†αž”αŸ‚αž€αž‘αŸ…αž‡αžΆαžαžΆαžŸ αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž˜αž€αž”αž„αŸ’αž€αžΎαžαž…αŸ†αžŽαž»αž…αžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αŸ” αž αžΎαž™αž”αŸ‰αž»αžŸαŸ’αžαž·αŸαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αž“αŸαŸ‡αž’αžΆαž…αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αŸ’αžšαžΎαž‡αžΆαž€αž“αŸ’αž›αŸ‚αž„αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αžΆαžšαžŸαŸ’αžαžΆαžšαž‘αžΎαž„αžœαž·αž‰ αž”αŸ’αžšαžŸαž·αž“αž”αžΎ PostgreSQL αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž‰αŸ’αž…αž”αŸ‹αž—αŸ’αž›αžΆαž˜αŸ—αž€αŸ’αž“αž»αž„αž‚αŸ’αžšαžΆαž’αžΆαžŸαž“αŸ’αž“αŸ”

αžŠαžΌαž…αŸ’αž“αŸ„αŸ‡αž αžΎαž™ αžŠαžΎαž˜αŸ’αž”αžΈαž›αž»αž”αž‘αŸ†αž–αŸαžš "αž€αžαŸ’αžœαž€αŸ‹" αž‘αžΆαŸ†αž„αž’αžŸαŸ‹αž‘αŸ…αž€αŸ’αž“αž»αž„αžαžΆαžŸ αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαž’αŸ’αžœαžΎαž…αŸ†αž“αž½αž“αž‡αžΆαž€αŸ‹αž›αžΆαž€αŸ‹αž“αŸƒαž€αžΆαžšαžŸαžšαžŸαŸαžšαŸ” αž αžΎαž™αž‡αžΆαž€αŸ’αž”αž½αž“αž“αŸ…αž›αžΎαž”αŸ’αžšαž–αŸαž“αŸ’αž’αžŠαŸ‚αž›αž˜αžΆαž“αž’αž„αŸ’αž‚αž…αž„αž…αžΆαŸ†αž’αŸ† αž“αŸαŸ‡αž‚αžΊαž˜αžΆαž“αž…αŸ’αžšαžΎαž“αŸ” αž αžΎαž™αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž™αžΎαž„αž’αŸ’αžœαžΎαž€αžΆαžšαž†αŸ‚αž€αž†αŸαžšαž‡αžΆαž‰αžΉαž€αž‰αžΆαž”αŸ‹αž€αŸ’αž“αž»αž„αž…αž“αŸ’αž›αŸ„αŸ‡αž–αŸαž›αžαŸ’αž›αžΈ αž“αŸ„αŸ‡αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαžŒαžΈαžŸαž“αžΉαž„αž’αŸ’αž›αžΆαž€αŸ‹αž…αž»αŸ‡αž™αŸ‰αžΆαž„αžαŸ’αž›αžΆαŸ†αž„αŸ” αž αžΎαž™αžŸαŸ†αžŽαžΎαžšαž”αžŸαŸ‹αž’αžαž·αžαž·αž‡αž“αž“αžΉαž„αž‘αž‘αž½αž›αžšαž„αž–αžΈαž€αžΆαžšαžαŸ’αžœαŸ‡αžαžΆαžαž’αž“αž’αžΆαž“αŸ” αž–αž½αž€αž‚αŸαž“αžΉαž„αž”αŸ’αžšαž€αž½αžαž”αŸ’αžšαž‡αŸ‚αž„αžŠαžΎαž˜αŸ’αž”αžΈαž’αž“αž’αžΆαž“ αž“αž·αž„αžαŸ’αžœαŸ‡αž•αž›αž·αžαž—αžΆαž–αŸ”

αžŠαžΌαž…αŸ’αž“αŸ„αŸ‡αž αžΎαž™ αžαžΆαž˜αžšαž™αŸˆ pg_stat_bgwriter αžŠαŸ„αž™αž”αŸ’αžšαžΎαžœαžΆαž›αžŠαŸ‚αž›αž”αžΆαž“αž”αž‰αŸ’αž‡αžΆαž€αŸ‹ αž™αžΎαž„αž’αžΆαž…αžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αž…αŸ†αž“αž½αž“αž…αŸ†αžŽαž»αž…αžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αžŠαŸ‚αž›αž€αžΎαžαž‘αžΎαž„αŸ” αž αžΎαž™αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž™αžΎαž„αž˜αžΆαž“αž”αŸ‰αž»αžŸαŸ’αžαž·αŸαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αž…αŸ’αžšαžΎαž“αž€αŸ’αž“αž»αž„αžšαž™αŸˆαž–αŸαž›αž‡αžΆαž€αŸ‹αž›αžΆαž€αŸ‹αž˜αž½αž™ (αž€αŸ’αž“αž»αž„αžšαž™αŸˆαž–αŸαž› 10-15-20 αž“αžΆαž‘αžΈαž€αŸ’αž“αž»αž„αžšαž™αŸˆαž–αŸαž›αž€αž“αŸ’αž›αŸ‡αž˜αŸ‰αŸ„αž„) αž§αž‘αžΆαž αžšαžŽαŸ 3-4-5 αž“αŸ„αŸ‡αžœαžΆαž’αžΆαž…αž‡αžΆαž”αž‰αŸ’αž αžΆαžšαž½αž…αž‘αŸ…αž αžΎαž™αŸ” αž αžΎαž™αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαžšαž€αž˜αžΎαž›αž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αžšαž½αž…αž αžΎαž™ αžšαž€αž˜αžΎαž›αž“αŸ…αž€αŸ’αž“αž»αž„αž€αžΆαžšαž€αŸ†αžŽαžαŸ‹ αžαžΎαž’αŸ’αžœαžΈαžŠαŸ‚αž›αž”αžŽαŸ’αžαžΆαž›αž±αŸ’αž™αž˜αžΆαž“αž…αŸ’αžšαž€αžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αž”αŸ‚αž”αž“αŸαŸ‡αŸ” αž”αŸ’αžšαž αŸ‚αž›β€‹αž‡αžΆβ€‹αž˜αžΆαž“β€‹αž€αžΆαžšβ€‹αžαžβ€‹αžšαžΏαž„β€‹αž’αŸ†β€‹αž˜αž½αž™β€‹αž€αŸ†αž–αž»αž„β€‹αž”αž“αŸ’αžαŸ” αž™αžΎαž„β€‹αž’αžΆαž…β€‹αžœαžΆαž™β€‹αžαž˜αŸ’αž›αŸƒβ€‹αž”αž“αŸ’αž‘αž»αž€β€‹αž€αžΆαžšαž„αžΆαžšβ€‹αž”αžΆαž“β€‹αž αžΎαž™ αž–αŸ’αžšαŸ„αŸ‡β€‹αž™αžΎαž„β€‹αž”αžΆαž“β€‹αž”αž“αŸ’αžαŸ‚αž˜β€‹αž€αŸ’αžšαžΆαž αŸ’αžœβ€‹αž”αž“αŸ’αž‘αž»αž€β€‹αž€αžΆαžšαž„αžΆαžšβ€‹αžšαž½αž…β€‹αž αžΎαž™αŸ” αž™αžΎαž„β€‹αž’αžΆαž…β€‹αž€αŸ‚αž”αŸ’αžšαŸ‚β€‹αž”αŸ‰αžΆαžšαŸ‰αžΆαž˜αŸ‰αŸ‚αžαŸ’αžšβ€‹αž…αŸ†αžŽαž»αž…β€‹αžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™β€‹αž”αžΆαž“β€‹αž αžΎαž™ αž αžΎαž™β€‹αž’αŸ’αžœαžΎβ€‹αž±αŸ’αž™β€‹αž”αŸ’αžšαžΆαž€αžŠβ€‹αžαžΆβ€‹αž–αž½αž€αžœαžΆβ€‹αž˜αž·αž“β€‹αž”αŸ‰αŸ‡αž–αžΆαž›αŸ‹β€‹αžαŸ’αž›αžΆαŸ†αž„β€‹αžŠαž›αŸ‹β€‹αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšβ€‹αžŸαŸ†αžŽαž½αžšαŸ”

αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‚αŸ’αžšαžΉαŸ‡αž“αŸƒαž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™ PostgreSQL αŸ” Alexey Lesovsky

αžαŸ’αž‰αž»αŸ†αžαŸ’αžšαž›αž”αŸ‹αž˜αž€ autovacuum αž˜αŸ’αžαž„αž‘αŸ€αžαž–αŸ’αžšαŸ„αŸ‡αžœαžΆαž‡αžΆαžšαžΏαž„αžŠαžΌαž…αžŠαŸ‚αž›αžαŸ’αž‰αž»αŸ†αž”αžΆαž“αž“αž·αž™αžΆαž™ αžŠαŸ‚αž›αž’αžΆαž…αž”αž“αŸ’αžαŸ‚αž˜αž‘αžΆαŸ†αž„αžŠαŸ†αžŽαžΎαžšαž€αžΆαžš disk αž“αž·αž„ query αž”αžΆαž“αž™αŸ‰αžΆαž„αž„αžΆαž™αžŸαŸ’αžšαž½αž› αžŠαžΌαž…αŸ’αž“αŸαŸ‡αžœαžΆαžαŸ‚αž„αžαŸ‚αž˜αžΆαž“αžŸαžΆαžšαŸˆαžŸαŸ†αžαžΆαž“αŸ‹αž€αŸ’αž“αž»αž„αž€αžΆαžšαž”αŸ‰αžΆαž“αŸ‹αž”αŸ’αžšαž˜αžΆαžŽαž”αžšαž·αž˜αžΆαžŽ autovacuum αŸ”

αž…αŸ†αž“αž½αž“αž”αž»αž‚αŸ’αž‚αž›αž·αž€ autovacuum αž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž˜αžΆαž“αž€αŸ†αžŽαžαŸ‹αŸ” αžαžΆαž˜αž›αŸ†αž“αžΆαŸ†αžŠαžΎαž˜ αžœαžΆαž˜αžΆαž“αž”αžΈαž“αžΆαž€αŸ‹ αžŠαžΌαž…αŸ’αž“αŸαŸ‡αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž™αžΎαž„αžαŸ‚αž„αžαŸ‚αž˜αžΆαž“αž€αž˜αŸ’αž˜αž€αžš XNUMX αž“αžΆαž€αŸ‹αž’αŸ’αžœαžΎαž€αžΆαžšαž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™ αž“αŸαŸ‡αž˜αžΆαž“αž“αŸαž™αžαžΆ autovacuum αžšαž”αžŸαŸ‹αž™αžΎαž„αž˜αž·αž“αžαŸ’αžšαžΌαžœαž”αžΆαž“αž€αŸ†αžŽαžαŸ‹αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’αž‘αŸ αž™αžΎαž„αžαŸ’αžšαžΌαžœαž”αž„αŸ’αž€αžΎαž“αžŠαŸ‚αž“αž€αŸ†αžŽαžαŸ‹ αž€αŸ‚αž”αŸ’αžšαŸ‚αž€αžΆαžšαž€αŸ†αžŽαžαŸ‹ autovacuum αž“αž·αž„αž…αžΌαž›αž‘αŸ…αž€αŸ’αž“αž»αž„αž€αžΆαžšαž€αŸ†αžŽαžαŸ‹αŸ”
αžœαžΆαž˜αžΆαž“αžŸαžΆαžšαŸˆαžŸαŸ†αžαžΆαž“αŸ‹αžŽαžΆαžŸαŸ‹αž€αŸ’αž“αž»αž„αž€αžΆαžšαžœαžΆαž™αžαž˜αŸ’αž›αŸƒαžαžΆαžαžΎαž”αž»αž‚αŸ’αž‚αž›αž·αž€αž”αžΌαž˜αž’αžΌαž›αžΈαžŽαžΆαžŠαŸ‚αž›αž™αžΎαž„αž˜αžΆαž“αŸ” αž‘αžΆαŸ†αž„αžœαžΆαžαŸ’αžšαžΌαžœαž”αžΆαž“αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αž–αžΈαž’αŸ’αž“αž€αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹ DBA αž”αžΆαž“αž˜αž€ αž“αž·αž„αž”αžΎαž€αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αž”αžΌαž˜αž’αžΌαž›αžΈαž˜αž½αž™αž…αŸ†αž“αž½αž“αžŠαŸ„αž™αžŠαŸƒ αž αžΎαž™αžœαžΆαž”αžΆαž“αž”αž„αŸ’αž€αžΎαžαž”αž“αŸ’αž‘αž»αž€αž˜αž½αž™αŸ” αž™αžΎαž„αž˜αžΆαž“αž”αž‰αŸ’αž αžΆαž˜αž½αž™αž…αŸ†αž“αž½αž“αŸ” αž¬αž“αŸαŸ‡αž‚αžΊαž‡αžΆαž…αŸ†αž“αž½αž“αž“αŸƒαž€αžΆαžšαžαŸ’αžœαŸ‡αž…αž“αŸ’αž›αŸ„αŸ‡αžŠαŸ‚αž› unscrew αž”αž‰αŸ’αž‡αžšαž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαŸ” αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αŸ†αžŽαŸ‚αž˜αž½αž™αž…αŸ†αž“αž½αž“αž“αŸƒ PostgreSQL αž‘αžΆαŸ†αž„αž“αŸαŸ‡αž‚αžΊαž‡αžΆαž€αž“αŸ’αž›αŸ‚αž„αž‘αŸ†αž“αŸαžšαžαŸ’αž›αžΆαŸ†αž„αŸ” αž αžΎαž™αž–αž½αž€αž‚αŸαž’αžΆαž…αž”αž“αŸ’αžαŸ‚αž˜αž€αžΆαžšαžŸαž˜αŸ’αžαŸ‚αž„αž”αžΆαž“αž™αŸ‰αžΆαž„αž„αžΆαž™αžŸαŸ’αžšαž½αž› αžŠαŸ„αž™αžŸαžΆαžšαž–αž½αž€αž‚αŸαž’αžΆαž“αžαžΆαžšαžΆαž„αž‘αžΆαŸ†αž„αž˜αžΌαž› αžŸαŸ’αž€αŸαž“αž‚αŸ’αžšαž”αŸ‹αž”αŸ’αž›αž»αž€αž“αŸ…αž€αŸ’αž“αž»αž„αžαžΆαžšαžΆαž„αž“αŸ„αŸ‡αŸ”

αž αžΎαž™αž‡αžΆαž€αžΆαžšαž–αž·αžαžŽαžΆαžŸαŸ‹αžšαž™αŸˆαž–αŸαž›αž“αŸƒαž€αžΆαžšαž”αžΌαž˜αž’αžΌαž›αžΈαŸ” αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž™αžΎαž„αž˜αžΆαž“αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αž”αžΌαž˜αž’αžΌαž›αžΈαžŠαŸ‚αž›αž˜αžΆαž“αžšαž™αŸˆαž–αŸαž›αž™αžΌαžš αžŠαŸ‚αž›αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž€αŸ’αž“αž»αž„αžšαž™αŸˆαž–αŸαž›αž™αžΌαžš αž“αŸ„αŸ‡αž˜αžΆαž“αž“αŸαž™αžαžΆ αž™αžΎαž„αžαŸ’αžšαžΌαžœαž™αž€αž…αž·αžαŸ’αžαž‘αž»αž€αžŠαžΆαž€αŸ‹αž˜αŸ’αžαž„αž‘αŸ€αžαž…αŸ†αž–αŸ„αŸ‡αž€αžΆαžšαž€αŸ†αžŽαžαŸ‹αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αž”αžΌαž˜αž’αžΌαž›αžΈ αž αžΎαž™αž”αŸ’αžšαž αŸ‚αž›αž‡αžΆαž–αž·αž…αžΆαžšαžŽαžΆαž‘αžΎαž„αžœαž·αž‰αž“αžΌαžœαž€αžΆαžšαž€αŸ†αžŽαžαŸ‹αžšαž”αžŸαŸ‹αžœαžΆαŸ” αžŠαŸ„αž™αžŸαžΆαžšαžαŸ‚αžŸαŸ’αžαžΆαž“αž—αžΆαž–αž˜αž½αž™αž’αžΆαž…αž€αžΎαžαž‘αžΎαž„αž“αŸ…αž–αŸαž›αžŠαŸ‚αž›αž€αž“αŸ’αž›αŸ‚αž„αž‘αŸ†αž“αŸαžšαž’αŸ’αžœαžΎαž€αžΆαžšαž“αŸ…αž›αžΎαžαž»αžšαž™αŸˆαž–αŸαž›αž™αžΌαžš (3-4 αž˜αŸ‰αŸ„αž„) αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž€αŸ’αž“αž»αž„αž’αŸ†αž‘αž»αž„αž–αŸαž›αžŠαŸ‚αž›αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αž”αžΌαž˜αž’αžΌαž›αžΈαž€αŸ†αž–αž»αž„αžŠαŸ†αžŽαžΎαžšαž€αžΆαžš αž‡αž½αžšαžŠαŸ‚αž›αž„αžΆαž”αŸ‹αž˜αž½αž™αž…αŸ†αž“αž½αž“αž’αŸ†αž”αžΆαž“αž”αŸ’αžšαž˜αžΌαž›αž•αŸ’αžαž»αŸ†αž“αŸ…αž€αŸ’αž“αž»αž„αžαž»αž˜αŸ’αžαž„αž‘αŸ€αžαŸ” αž αžΎαž™αžŠαžšαžΆαž”αžŽαžΆαž€αžΆαžšαž”αžΌαž˜αž’αžΌαž›αžΈαžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž‰αŸ’αž…αž”αŸ‹ αž‚αžΆαžαŸ‹αžαŸ’αžšαžΌαžœαž”αžΌαž˜αž’αžΌαž›αžΈαžαžΆαžšαžΆαž„αž“αŸαŸ‡αž˜αŸ’αžαž„αž‘αŸ€αžαŸ” αž αžΎαž™αž™αžΎαž„αž˜αž€αžŠαž›αŸ‹αžŸαŸ’αžαžΆαž“αž—αžΆαž–αž˜αž½αž™ - αž€αž“αŸ’αž›αŸ‚αž„αž‘αŸ†αž“αŸαžšαž‚αŸ’αž˜αžΆαž“αž‘αžΈαž”αž‰αŸ’αž…αž”αŸ‹αŸ” αž αžΎαž™αž€αŸ’αž“αž»αž„αž€αžšαžŽαžΈαž“αŸαŸ‡αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αž”αžΌαž˜αž’αžΌαž›αžΈαž˜αž·αž“αž’αžΆαž…αž‘αž”αŸ‹αž‘αž›αŸ‹αž“αžΉαž„αž€αžΆαžšαž„αžΆαžšαžšαž”αžŸαŸ‹αžœαžΆαž”αžΆαž“αž‘αŸαž αžΎαž™αžαžΆαžšαžΆαž„αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αž αžΎαž˜αž”αž“αŸ’αžαž·αž…αž˜αŸ’αžαž„ αŸ— αž‘αŸ„αŸ‡αž”αžΈαž‡αžΆαž”αžšαž·αž˜αžΆαžŽαž“αŸƒαž‘αž·αž“αŸ’αž“αž“αŸαž™αž˜αžΆαž“αž”αŸ’αžšαž™αŸ„αž‡αž“αŸαž“αŸ…αž€αŸ’αž“αž»αž„αžœαžΆαž“αŸ…αžαŸ‚αžŠαžŠαŸ‚αž›αŸ” αžŠαžΌαž…αŸ’αž“αŸαŸ‡αž€αŸ’αž“αž»αž„αž’αŸ†αž‘αž»αž„αž–αŸαž›αž‘αŸ†αž“αŸαžšαž™αžΌαžš αž™αžΎαž„αžαŸ‚αž„αžαŸ‚αž˜αžΎαž›αž€αžΆαžšαž€αŸ†αžŽαžαŸ‹αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’ αž αžΎαž™αž–αŸ’αž™αžΆαž™αžΆαž˜αž”αž„αŸ’αž€αžΎαž“αž”αŸ’αžšαžŸαž·αž‘αŸ’αž’αž—αžΆαž–αžœαžΆ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž“αŸ…αž–αŸαž›αž‡αžΆαž˜αž½αž™αž‚αŸ’αž“αžΆαž“αŸαŸ‡ αžŠαžΎαž˜αŸ’αž”αžΈαž±αŸ’αž™αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž“αŸƒαžŸαŸ†αžŽαžΎαžšαž”αžŸαŸ‹αž’αžαž·αžαž·αž‡αž“αž˜αž·αž“αžšαž„αž‘αž»αž€αŸ’αžαŸ”

αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‚αŸ’αžšαžΉαŸ‡αž“αŸƒαž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™ PostgreSQL αŸ” Alexey Lesovsky

αžŸαž–αŸ’αžœαžαŸ’αž„αŸƒαž“αŸαŸ‡αž˜αž·αž“αž˜αžΆαž“αž€αžΆαžšαžŠαŸ†αž‘αžΎαž„ PostgreSQL αžŠαŸ‚αž›αž˜αž·αž“αž˜αžΆαž“αž€αžΆαžšαž…αž˜αŸ’αž›αž„αžŸαŸ’αž‘αŸ’αžšαžΈαž˜αž‘αŸαŸ” αž€αžΆαžšαž…αž˜αŸ’αž›αž„αž‚αžΊαž‡αžΆαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž“αŸƒαž€αžΆαžšαž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαž‘αž·αž“αŸ’αž“αž“αŸαž™αž–αžΈαž˜αŸαž‘αŸ…αž…αž˜αŸ’αž›αž„αŸ”

αž€αžΆαžšαž…αž˜αŸ’αž›αž„αž“αŸ…αž€αŸ’αž“αž»αž„ PostgreSQL αžαŸ’αžšαžΌαžœαž”αžΆαž“αž’αŸ’αžœαžΎαž‘αžΎαž„αžαžΆαž˜αžšαž™αŸˆαž€αŸ†αžŽαžαŸ‹αž αŸαžαž»αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαŸ” αž’αŸ’αž“αž€αž‡αŸ†αž“αž½αž™αž”αž„αŸ’αž€αžΎαžαž€αŸ†αžŽαžαŸ‹αž αŸαžαž»αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαŸ” αž€αŸ†αžŽαžαŸ‹αž αŸαžαž»αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαž’αŸ’αžœαžΎαžŠαŸ†αžŽαžΎαžšαž›αžΎαž€αžΆαžšαž—αŸ’αž‡αžΆαž”αŸ‹αž”αžŽαŸ’αžαžΆαž‰αž‘αŸ…αž§αž”αž€αžšαžŽαŸαž…αž˜αŸ’αž›αž„ αž αžΎαž™αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž˜αž€αžœαžΆαžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž„αŸ’αž€αžΎαžαž‘αžΎαž„αžœαž·αž‰αž“αŸ…αž›αžΎαž€αžΆαžšαž…αž˜αŸ’αž›αž„αŸ” αžœαžΆαžŸαžΆαž˜αž‰αŸ’αž‰αŸ”

αžŠαžΌαž…αŸ’αž“αŸ„αŸ‡αž αžΎαž™ αž‘αž·αžŠαŸ’αž‹αž—αžΆαž– pg_stat_replication αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αŸ’αžšαžΎαžŠαžΎαž˜αŸ’αž”αžΈαžαžΆαž˜αžŠαžΆαž“αž—αžΆαž–αž™αžΊαžαž™αŸ‰αžΆαžœαž“αŸƒαž€αžΆαžšαž…αž˜αŸ’αž›αž„αŸ” αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž˜αž·αž“αž˜αŸ‚αž“αž’αŸ’αžœαžΈαŸ—αž‘αžΆαŸ†αž„αž’αžŸαŸ‹αž‚αžΊαžŸαžΆαž˜αž‰αŸ’αž‰αž‡αžΆαž˜αž½αž™αž“αžΆαž„αž‘αŸαŸ” αž“αŸ…αž€αŸ’αž“αž»αž„αž€αŸ†αžŽαŸ‚αž‘αžΈ 10 αž‘αž·αžŠαŸ’αž‹αž—αžΆαž–αž”αžΆαž“αž†αŸ’αž›αž„αž€αžΆαžαŸ‹αž€αžΆαžšαž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαž‡αžΆαž…αŸ’αžšαžΎαž“αŸ” αž‘αžΈαž˜αž½αž™ αžœαžΆαž›αž˜αž½αž™αž…αŸ†αž“αž½αž“αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αŸ’αžαžΌαžšαžˆαŸ’αž˜αŸ„αŸ‡αŸ” αž αžΎαž™β€‹αžœαžΆαž›β€‹αž˜αž½αž™β€‹αž…αŸ†αž“αž½αž“β€‹αžαŸ’αžšαžΌαžœβ€‹αž”αžΆαž“β€‹αž”αž“αŸ’αžαŸ‚αž˜αŸ” αž“αŸ…αž€αŸ’αž“αž»αž„αž€αŸ†αžŽαŸ‚ 10 αžœαžΆαž›αž”αžΆαž“αž›αŸαž…αž‘αžΎαž„αžŠαŸ‚αž›αž’αž“αž»αž‰αŸ’αž‰αžΆαžαž±αŸ’αž™αž’αŸ’αž“αž€αž”αŸ‰αžΆαž“αŸ‹αžŸαŸ’αž˜αžΆαž“αž—αžΆαž–αž™αžΊαžαž™αŸ‰αžΆαžœαž“αŸƒαž€αžΆαžšαž…αž˜αŸ’αž›αž„αž€αŸ’αž“αž»αž„αžšαž™αŸˆαž–αŸαž›αž”αŸ‰αž»αž“αŸ’αž˜αžΆαž“αžœαž·αž“αžΆαž‘αžΈαŸ” αžœαžΆαž˜αžΆαž“αž•αžΆαžŸαž»αž€αž—αžΆαž–αžŽαžΆαžŸαŸ‹αŸ” αž˜αž»αž“αž–αŸαž›αž€αŸ†αžŽαŸ‚ 10 αžœαžΆαž’αžΆαž…αž”αŸ‰αžΆαž“αŸ‹αžŸαŸ’αž˜αžΆαž“αž—αžΆαž–αž™αžΊαžαž™αŸ‰αžΆαžœαž“αŸƒαž€αžΆαžšαž…αž˜αŸ’αž›αž„αž‡αžΆαž”αŸƒαŸ” αž‡αž˜αŸ’αžšαžΎαžŸαž“αŸαŸ‡αž“αŸ…αžαŸ‚αž˜αžΆαž“αž“αŸ…αž€αŸ’αž“αž»αž„αž€αŸ†αžŽαŸ‚ 10 αž–αŸ„αž›αž‚αžΊαž’αŸ’αž“αž€αž’αžΆαž…αž‡αŸ’αžšαžΎαžŸαžšαžΎαžŸαž’αŸ’αžœαžΈαžŠαŸ‚αž›αž€αžΆαž“αŸ‹αžαŸ‚αž„αžΆαž™αžŸαŸ’αžšαž½αž›αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž’αŸ’αž“αž€ - αž”αŸ‰αžΆαž“αŸ‹αž”αŸ’αžšαž˜αžΆαžŽαž—αžΆαž–αž™αžΊαžαž™αŸ‰αžΆαžœαž‡αžΆαž”αŸƒ αž¬αž”αŸ‰αžΆαž“αŸ‹αžŸαŸ’αž˜αžΆαž“αž—αžΆαž–αž™αžΊαžαž™αŸ‰αžΆαžœαž€αŸ’αž“αž»αž„αžšαž™αŸˆαž–αŸαž›αž”αŸ‰αž»αž“αŸ’αž˜αžΆαž“αžœαž·αž“αžΆαž‘αžΈαŸ” αž˜αž“αž»αžŸαŸ’αžŸαž‡αžΆαž…αŸ’αžšαžΎαž“αž’αŸ’αžœαžΎαž‘αžΆαŸ†αž„αž–αžΈαžšαŸ”

αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž™αŸ‰αžΆαž„αžŽαžΆαž€αŸαžŠαŸ„αž™ αžŠαžΎαž˜αŸ’αž”αžΈαžœαžΆαž™αžαž˜αŸ’αž›αŸƒαž—αžΆαž–αž™αžΊαžαž™αŸ‰αžΆαžœαž“αŸƒαž€αžΆαžšαž…αž˜αŸ’αž›αž„ αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαžŠαžΉαž„αž–αžΈαž‘αžΈαžαžΆαŸ†αž„αž“αŸƒαž€αŸ†αžŽαžαŸ‹αž αŸαžαž»αž€αŸ’αž“αž»αž„αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαŸ” αž αžΎαž™αž‘αžΈαžαžΆαŸ†αž„αž€αŸ†αžŽαžαŸ‹αž αŸαžαž»αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαž‘αžΆαŸ†αž„αž“αŸαŸ‡αž‚αžΊαž–αž·αžαž‡αžΆαž“αŸ…αž€αŸ’αž“αž»αž„αž‘αž·αžŠαŸ’αž‹αž—αžΆαž– pg_stat_replication αŸ” αž”αžΎαž“αž·αž™αžΆαž™αž‘αžΆαž€αŸ‹αž‘αž„αž‚αŸ’αž“αžΆ αž™αžΎαž„αž’αžΆαž…αž™αž€αž–αžΈαžšαž…αŸ†αžŽαž»αž…αž€αŸ’αž“αž»αž„αž€αŸ†αžŽαžαŸ‹αž αŸαžαž»αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαžŠαŸ„αž™αž”αŸ’αžšαžΎαž˜αž»αžαž„αžΆαžš pg_xlog_location_diff() αŸ” αž‚αžŽαž“αžΆ delta αžšαžœαžΆαž„αž–αž½αž€αžœαžΆ αž“αž·αž„αž‘αž‘αž½αž›αž”αžΆαž“αž—αžΆαž–αž™αžΊαžαž™αŸ‰αžΆαžœαž“αŸƒαž€αžΆαžšαž…αž˜αŸ’αž›αž„αž‡αžΆαž”αŸƒαŸ” αžœαžΆαž„αžΆαž™αžŸαŸ’αžšαž½αž› αž“αž·αž„αžŸαžΆαž˜αž‰αŸ’αž‰αžŽαžΆαžŸαŸ‹αŸ”

αž“αŸ…αž€αŸ’αž“αž»αž„αž€αŸ†αžŽαŸ‚ 10 αž˜αž»αžαž„αžΆαžšαž“αŸαŸ‡αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αŸ’αžαžΌαžšαžˆαŸ’αž˜αŸ„αŸ‡αž‘αŸ…αž‡αžΆ pg_wal_lsn_diff()αŸ” αž‡αžΆαž‘αžΌαž‘αŸ… αž“αŸ…αž€αŸ’αž“αž»αž„αž˜αž»αžαž„αžΆαžš αž‘αž·αžŠαŸ’αž‹αž—αžΆαž– αž“αž·αž„αž§αž”αž€αžšαžŽαŸαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž‘αžΆαŸ†αž„αž’αžŸαŸ‹ αžŠαŸ‚αž›αž–αžΆαž€αŸ’αž™ "xlog" αž›αŸαž…αž‘αžΎαž„ αžœαžΆαžαŸ’αžšαžΌαžœαž”αžΆαž“αž‡αŸ†αž“αž½αžŸαžŠαŸ„αž™αžαž˜αŸ’αž›αŸƒ "wal" αŸ” αž“αŸαŸ‡αž’αž“αž»αžœαžαŸ’αžαž‘αžΆαŸ†αž„αž‘αž·αžŠαŸ’αž‹αž—αžΆαž– αž“αž·αž„αž˜αž»αžαž„αžΆαžšαŸ” αž“αŸαŸ‡αž‚αžΊαž‡αžΆαž€αžΆαžšαž…αŸ’αž“αŸƒαž”αŸ’αžšαžŒαž·αžαž”αŸ‚αž”αž“αŸαŸ‡αŸ”

αž›αžΎαžŸαž–αžΈαž“αŸαŸ‡αž‘αŸ€αžαž“αŸ…αž€αŸ’αž“αž»αž„αž€αŸ†αžŽαŸ‚ 10 αž”αž“αŸ’αž‘αžΆαžαŸ‹αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž“αŸ’αžαŸ‚αž˜αžŠαŸ‚αž›αž”αž„αŸ’αž αžΆαž‰αž–αžΈαž—αžΆαž–αž™αžΊαžαž™αŸ‰αžΆαžœαŸ” αž‘αžΆαŸ†αž„αž“αŸαŸ‡β€‹αž‡αžΆβ€‹αž€αžΆαžšβ€‹αžŸαžšαžŸαŸαžšβ€‹αž™αžΊαž, αž™αžΊαž, αž›αŸαž„β€‹αž™αžΊαžαŸ” αž“αŸ„αŸ‡αž‚αžΊαžœαžΆαž˜αžΆαž“αžŸαžΆαžšαŸˆαžŸαŸ†αžαžΆαž“αŸ‹αžŽαžΆαžŸαŸ‹αž€αŸ’αž“αž»αž„αž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αžšαžΏαž„αž‘αžΆαŸ†αž„αž“αŸαŸ‡αŸ” αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž™αžΎαž„αžƒαžΎαž‰αžαžΆαž™αžΎαž„αž˜αžΆαž“αž€αžΆαžšαž™αžΊαžαž™αŸ‰αžΆαžœαž€αŸ’αž“αž»αž„αž€αžΆαžšαž…αž˜αŸ’αž›αž„ αž“αŸ„αŸ‡αž™αžΎαž„αžαŸ’αžšαžΌαžœαžŸαŸŠαžΎαž”αž’αž„αŸ’αž€αŸαžαž–αžΈαž˜αžΌαž›αž αŸαžαž»αžŠαŸ‚αž›αžœαžΆαž›αŸαž…αž‘αžΎαž„ αžαžΎαžœαžΆαž˜αž€αž–αžΈαžŽαžΆ αž αžΎαž™αžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž”αž‰αŸ’αž αžΆαž“αŸ„αŸ‡αŸ”

αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‚αŸ’αžšαžΉαŸ‡αž“αŸƒαž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™ PostgreSQL αŸ” Alexey Lesovsky

αžŸαŸ’αž‘αžΎαžšαžαŸ‚αž’αŸ’αžœαžΈαŸ—αž‘αžΆαŸ†αž„αž’αžŸαŸ‹αž‚αžΊαžŸαŸ’αžαž·αžαž“αŸ…αž€αŸ’αž“αž»αž„αž›αŸ†αžŠαžΆαž”αŸ‹αž‡αžΆαž˜αž½αž™αž“αžΉαž„αžšαž„αŸ’αžœαžΆαžŸαŸ‹αž”αŸ’αžšαž–αŸαž“αŸ’αž’αŸ” αž“αŸ…αž–αŸαž›αžŠαŸ‚αž›αž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αžŽαžΆαž˜αž½αž™αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜ αžœαžΆαž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αž‡αžΆαž˜αž½αž™αž“αžΉαž„αž€αžΆαžšαžœαžΆαžŸαŸ‹αžœαŸ‚αž„αž”αŸ’αžšαž–αŸαž“αŸ’αž’αŸ” αž“αŸαŸ‡αž‚αžΊαž‡αžΆαž€αžΆαžšαž…αŸ„αž›αž“αžΌαžœ processors, memory, swap, network αž“αž·αž„ diskαŸ” αž‘αŸ„αŸ‡αž™αŸ‰αžΆαž„αžŽαžΆαž€αŸαžŠαŸ„αž™ αž”αŸ‰αžΆαžšαŸ‰αžΆαž˜αŸ‰αŸ‚αžαŸ’αžšαž‡αžΆαž…αŸ’αžšαžΎαž“αž˜αž·αž“αž˜αžΆαž“αž“αŸ…αž‘αžΈαž“αŸ„αŸ‡αžαžΆαž˜αž›αŸ†αž“αžΆαŸ†αžŠαžΎαž˜αž‘αŸαŸ”

αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž’αŸ’αžœαžΈαŸ—αž˜αžΆαž“αžŸαžŽαŸ’αžαžΆαž”αŸ‹αž’αŸ’αž“αžΆαž”αŸ‹αž‡αžΆαž˜αž½αž™αž“αžΉαž„αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž€αŸ‚αž…αŸ’αž“αŸƒαž‘αžΎαž„αžœαž·αž‰αž“αŸ„αŸ‡ αž˜αžΆαž“αž”αž‰αŸ’αž αžΆαž‡αžΆαž˜αž½αž™αž“αžΉαž„αž€αžΆαžšαž€αŸ‚αž…αŸ’αž“αŸƒαžαžΆαžŸαŸ” αžαžΆαž˜αž€αŸ’αž”αž½αž“αž˜αž½αž™ αž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αž’αŸ’αž“αž€αž’αž—αž·αžœαžŒαŸ’αžαž“αŸαž”αž“αŸ’αžαŸ‚αž˜αž–αŸαžαŸŒαž˜αžΆαž“αž’αŸ†αž–αžΈαž›αŸ†αž αžΌαžšαž…αžΌαž›αŸ” αžœαžΆαž’αžΆαž…αž‡αžΆ iops ឬ bytes αŸ” αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž–αž½αž€αž‚αŸαž—αŸ’αž›αŸαž…αž’αŸ†αž–αžΈαž—αžΆαž–αž™αžΊαžαž™αŸ‰αžΆαžœ αž“αž·αž„αž€αžΆαžšαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž§αž”αž€αžšαžŽαŸαžŒαžΈαžŸαŸ” αž‘αžΆαŸ†αž„αž“αŸαŸ‡αž‚αžΊαž‡αžΆαž”αŸ‰αžΆαžšαŸ‰αžΆαž˜αŸ‰αŸ‚αžαŸ’αžšαžŸαŸ†αžαžΆαž“αŸ‹αŸ—αžŠαŸ‚αž›αž’αž“αž»αž‰αŸ’αž‰αžΆαžαž±αŸ’αž™αž™αžΎαž„αžœαžΆαž™αžαž˜αŸ’αž›αŸƒαžαžΆαžαžΎαžαžΆαžŸαžšαž”αžŸαŸ‹αž™αžΎαž„αž•αŸ’αž‘αž»αž€αž”αžΆαž“αž€αž˜αŸ’αžšαž·αžαžŽαžΆ αž“αž·αž„αž™αžΊαžαž”αŸ‰αž»αžŽαŸ’αžŽαžΆαŸ” αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž™αžΎαž„αž˜αžΆαž“αž—αžΆαž–αž™αžΊαžαž™αŸ‰αžΆαžœαžαŸ’αž–αžŸαŸ‹ αž“αŸ„αŸ‡αž˜αžΆαž“αž“αŸαž™αžαžΆαž˜αžΆαž“αž”αž‰αŸ’αž αžΆαž˜αž½αž™αž…αŸ†αž“αž½αž“αž‡αžΆαž˜αž½αž™αžαžΆαžŸαŸ” αž”αŸ’αžšαžŸαž·αž“αž”αžΎβ€‹αž™αžΎαž„β€‹αž˜αžΆαž“β€‹αž€αžΆαžšβ€‹αž”αŸ’αžšαžΎβ€‹αž”αŸ’αžšαžΆαžŸαŸ‹β€‹αžαŸ’αž–αžŸαŸ‹ αžœαžΆβ€‹αž˜αžΆαž“β€‹αž“αŸαž™β€‹αžαžΆβ€‹αžαžΆαžŸβ€‹αž˜αž·αž“β€‹αž’αžΆαž…β€‹αž‘αž”αŸ‹αž‘αž›αŸ‹β€‹αž”αžΆαž“αŸ” αž‘αžΆαŸ†αž„αž“αŸαŸ‡αž‚αžΊαž‡αžΆαž›αž€αŸ’αžαžŽαŸˆαž”αŸ’αžšαžŸαžΎαžšαž‡αžΆαž„αž€αžΆαžšαž”αž‰αŸ’αž‡αžΌαž“αŸ”

αž‡αžΆαž„αž“αŸαŸ‡αž‘αŸ…αž‘αŸ€αž αžŸαŸ’αžαž·αžαž·αž‘αžΆαŸ†αž„αž“αŸαŸ‡αž€αŸαž’αžΆαž…αž‘αž‘αž½αž›αž”αžΆαž“αž–αžΈαž”αŸ’αžšαž–αŸαž“αŸ’αž’αž―αž€αžŸαžΆαžš /proc αžŠαžΌαž…αžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž”αžΆαž“αž’αŸ’αžœαžΎαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž€αŸ‚αž…αŸ’αž“αŸƒαž‘αžΎαž„αžœαž·αž‰αŸ” αžαŸ’αž‰αž»αŸ†αž˜αž·αž“αžŠαžΉαž„αžαžΆαž αŸαžαž»αž’αŸ’αžœαžΈαž”αžΆαž“αž‡αžΆαž–αŸαžαŸŒαž˜αžΆαž“αž“αŸαŸ‡αž˜αž·αž“αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž‰αŸ’αž…αžΌαž›αž‘αŸ…αž€αŸ’αž“αž»αž„αž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αž“αŸ„αŸ‡αž‘αŸαŸ” αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž‘αŸ„αŸ‡αž‡αžΆαž™αŸ‰αžΆαž„αž“αŸαŸ‡αž€αŸ’αžαžΈ αžœαžΆαž˜αžΆαž“αžŸαžΆαžšαŸˆαžŸαŸ†αžαžΆαž“αŸ‹αžŽαžΆαžŸαŸ‹αž€αŸ’αž“αž»αž„αž€αžΆαžšαž˜αžΆαž“αž…αŸ†αžŽαž»αž…αž“αŸαŸ‡αž€αŸ’αž“αž»αž„αž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αŸ”

αžŠαžΌαž…αž‚αŸ’αž“αžΆαž“αŸαŸ‡αžŠαŸ‚αžšαž’αž“αž»αžœαžαŸ’αžαž…αŸ†αž–αŸ„αŸ‡αž…αŸ†αžŽαž»αž…αž”αŸ’αžšαž‘αžΆαž€αŸ‹αž”αžŽαŸ’αžαžΆαž‰αŸ” αž˜αžΆαž“αž–αŸαžαŸŒαž˜αžΆαž“αž’αŸ†αž–αžΈαž€αžΆαžšαž”αž‰αŸ’αž…αžΌαž›αž”αžŽαŸ’αžαžΆαž‰αž“αŸ…αž€αŸ’αž“αž»αž„αž€αž‰αŸ’αž…αž”αŸ‹αž–αŸαžαŸŒαž˜αžΆαž“αž‡αžΆαž”αŸƒ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž‘αŸ„αŸ‡αž‡αžΆαž™αŸ‰αžΆαž„αžŽαžΆαž˜αž·αž“αž˜αžΆαž“αž–αŸαžαŸŒαž˜αžΆαž“αž’αŸ†αž–αžΈαž—αžΆαž–αž™αžΊαžαž™αŸ‰αžΆαžœ αž“αž·αž„αž‚αŸ’αž˜αžΆαž“αž–αŸαžαŸŒαž˜αžΆαž“αž’αŸ†αž–αžΈαž€αžΆαžšαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹ αž‘αŸ„αŸ‡αž”αžΈαž‡αžΆαž“αŸαŸ‡αž€αŸαž‡αžΆαž–αŸαžαŸŒαž˜αžΆαž“αž˜αžΆαž“αž”αŸ’αžšαž™αŸ„αž‡αž“αŸαž•αž„αžŠαŸ‚αžšαŸ”

αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‚αŸ’αžšαžΉαŸ‡αž“αŸƒαž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™ PostgreSQL αŸ” Alexey Lesovsky

αž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αžŽαžΆαž˜αž½αž™αž˜αžΆαž“αž‚αž»αžŽαžœαž·αž”αžαŸ’αžαž·αŸ” αž αžΎαž™β€‹αž˜αž·αž“β€‹αžαžΆβ€‹αž’αŸ’αž“αž€β€‹αž’αŸ’αžœαžΎβ€‹αž€αžΆαžšβ€‹αžαŸ’αžšαž½αžβ€‹αž–αž·αž“αž·αžαŸ’αž™β€‹αž”αŸ‚αž”β€‹αžŽαžΆβ€‹αž“αŸ„αŸ‡β€‹αž‘αŸ αžœαžΆβ€‹αžαŸ‚αž„β€‹αžαŸ‚β€‹αž˜αž·αž“β€‹αž”αŸ†αž–αŸαž‰β€‹αžαžΆαž˜β€‹αž›αž€αŸ’αžαžŽαŸˆβ€‹αžœαž·αž“αž·αž…αŸ’αž†αŸαž™β€‹αž˜αž½αž™β€‹αž…αŸ†αž“αž½αž“αŸ” αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž™αŸ‰αžΆαž„αžŽαžΆαž€αŸαžŠαŸ„αž™ αž–αž½αž€αž‚αŸαž€αŸ†αž–αž»αž„αž’αž—αž·αžœαžŒαŸ’αž αž˜αž»αžαž„αžΆαžšαžαŸ’αž˜αžΈαŸ— αž“αž·αž„αžšαž”αžŸαŸ‹αžαŸ’αž˜αžΈαž€αŸ†αž–αž»αž„αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž“αŸ’αžαŸ‚αž˜ αžŠαžΌαž…αŸ’αž“αŸαŸ‡αžŸαžΌαž˜αž‡αŸ’αžšαžΎαžŸαžšαžΎαžŸαž’αŸ’αžœαžΈαž˜αž½αž™ αž αžΎαž™αž”αž‰αŸ’αž…αž”αŸ‹αžœαžΆαŸ”

αž αžΎαž™αžŠαžΎαž˜αŸ’αž”αžΈαž”αž‰αŸ’αž…αž”αŸ‹ αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαžαŸ‚αž˜αžΆαž“αž‚αŸ†αž“αž·αžαž‡αžΆαž“αž·αž…αŸ’αž…αž’αŸ†αž–αžΈαž’αŸ’αžœαžΈαžŠαŸ‚αž›αžŸαŸ’αžαž·αžαž·αžŠαŸ‚αž›αž”αžΆαž“αž•αŸ’αžαž›αŸ‹αž˜αžΆαž“αž“αŸαž™ αž“αž·αž„αžšαž”αŸ€αž”αžŠαŸ‚αž›αž’αŸ’αž“αž€αž’αžΆαž…αž”αŸ’αžšαžΎαž–αž½αž€αžœαžΆαžŠαžΎαž˜αŸ’αž”αžΈαžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž”αž‰αŸ’αž αžΆαŸ”

αž“αž·αž„αž…αŸ†αžŽαž»αž…αžŸαŸ†αžαžΆαž“αŸ‹αŸ—αž˜αž½αž™αž…αŸ†αž“αž½αž“αŸ–

  • αž’αŸ’αž“αž€αž‚αž½αžšαžαŸ‚αžαžΆαž˜αžŠαžΆαž“αž—αžΆαž–αž’αžΆαž…αžšαž€αž”αžΆαž“αž‡αžΆαž“αž·αž…αŸ’αž… αž“αž·αž„αž˜αžΆαž“αž•αŸ’αž‘αžΆαŸ†αž„αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„ αžŠαžΌαž…αŸ’αž“αŸαŸ‡αž’αŸ’αž“αž€αž’αžΆαž…αžœαžΆαž™αžαž˜αŸ’αž›αŸƒαž”αžΆαž“αž™αŸ‰αžΆαž„αž†αžΆαž”αŸ‹αžšαž αŸαžŸαžαžΆαž’αŸ’αžœαžΈαŸ—αž‚αŸ’αžšαž”αŸ‹αž™αŸ‰αžΆαž„αžŸαŸ’αžαž·αžαž€αŸ’αž“αž»αž„αž›αŸ†αžŠαžΆαž”αŸ‹αž‡αžΆαž˜αž½αž™αž“αžΉαž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αŸ”
  • αž’αŸ’αž“αž€αžαŸ‚αž„αžαŸ‚αžαŸ’αžšαžΌαžœαž˜αžΆαž“αž‚αŸ†αž“αž·αžαž’αŸ†αž–αžΈαž’αŸ’αžœαžΈαžŠαŸ‚αž›αž’αžαž·αžαž·αž‡αž“αž€αŸ†αž–αž»αž„αž’αŸ’αžœαžΎαž€αžΆαžšαž‡αžΆαž˜αž½αž™αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αžšαž”αžŸαŸ‹αž’αŸ’αž“αž€ αžŠαžΎαž˜αŸ’αž”αžΈαž€αž˜αŸ’αž…αžΆαžαŸ‹αž’αžαž·αžαž·αž‡αž“αž’αžΆαž€αŸ’αžšαž€αŸ‹ αž“αž·αž„αž”αžΆαž‰αŸ‹αž‘αž˜αŸ’αž›αžΆαž€αŸ‹αž–αž½αž€αž‚αŸαŸ”
  • αžœαžΆαž˜αžΆαž“αžŸαžΆαžšαŸˆαžŸαŸ†αžαžΆαž“αŸ‹αžŽαžΆαžŸαŸ‹αž€αŸ’αž“αž»αž„αž€αžΆαžšαžœαžΆαž™αžαž˜αŸ’αž›αŸƒαž–αžΈαžšαž”αŸ€αž”αžŠαŸ‚αž›αž’αžαž·αžαž·αž‡αž“αž‘αžΆαŸ†αž„αž“αŸαŸ‡αž’αŸ’αžœαžΎαž€αžΆαžšαž‡αžΆαž˜αž½αž™αž‘αž·αž“αŸ’αž“αž“αŸαž™αŸ” αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαž˜αžΆαž“αž‚αŸ†αž“αž·αžαž’αŸ†αž–αžΈαž”αž“αŸ’αž‘αž»αž€αž€αžΆαžšαž„αžΆαžšαžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αŸ”
  • αžœαžΆαž…αžΆαŸ†αž”αžΆαž…αŸ‹αž€αŸ’αž“αž»αž„αž€αžΆαžšαžœαžΆαž™αžαž˜αŸ’αž›αŸƒαž–αžΈαžšαž”αŸ€αž”αžŠαŸ‚αž›αž”αž“αŸ’αž‘αž»αž€αž€αžΆαžšαž„αžΆαžšαž“αŸαŸ‡αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž„αŸ’αž€αžΎαžαž‘αžΎαž„ αžŠαŸ„αž™αž˜αžΆαž“αž‡αŸ†αž“αž½αž™αž–αžΈαžŸαŸ†αžŽαž½αžšαž’αŸ’αžœαžΈαŸ” αž’αŸ’αž“αž€αž’αžΆαž…αžœαžΆαž™αžαž˜αŸ’αž›αŸƒαžŸαŸ†αžŽαž½αžš αž’αŸ’αž“αž€αž’αžΆαž…αž”αž„αŸ’αž€αžΎαž“αž”αŸ’αžšαžŸαž·αž‘αŸ’αž’αž—αžΆαž–αž–αž½αž€αžœαžΆ αž€αŸ‚αž›αž˜αŸ’αž’αž–αž½αž€αžœαžΆ αž”αž„αŸ’αž€αžΎαžαž›αž·αž”αž·αž€αŸ’αžšαž˜αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž–αž½αž€αž‚αŸαŸ” αžœαžΆβ€‹αž–αž·αžαž‡αžΆβ€‹αžŸαŸ†αžαžΆαž“αŸ‹αžŽαžΆαžŸαŸ‹αŸ”
  • αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž•αŸ’αž‘αŸƒαžαžΆαž„αž€αŸ’αžšαŸ„αž™αž’αžΆαž…αž‡αŸ‡αž₯αž‘αŸ’αž’αž·αž–αž›αž’αžœαž·αž‡αŸ’αž‡αž˜αžΆαž“αžŠαž›αŸ‹αžŸαŸ†αžŽαžΎαžšαž”αžŸαŸ‹αž’αžαž·αžαž·αž‡αž“ αžŠαžΌαž…αŸ’αž“αŸαŸ‡αžœαžΆαž˜αžΆαž“αžŸαžΆαžšαŸˆαžŸαŸ†αžαžΆαž“αŸ‹αžŽαžΆαžŸαŸ‹αž€αŸ’αž“αž»αž„αž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αžαžΆαž–αž½αž€αž‚αŸαž˜αž·αž“αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž’αž“αž’αžΆαž“αž…αŸ’αžšαžΎαž“αž–αŸαž€αž‘αŸαŸ”
  • αžšαž„αŸ’αžœαžΆαžŸαŸ‹αž”αŸ’αžšαž–αŸαž“αŸ’αž’αž’αž“αž»αž‰αŸ’αž‰αžΆαžαž±αŸ’αž™αž’αŸ’αž“αž€αž’αŸ’αžœαžΎαž•αŸ‚αž“αž€αžΆαžšαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž’αŸ’αžœαžΎαž˜αžΆαžαŸ’αžšαžŠαŸ’αž‹αžΆαž“ αž“αž·αž„αž”αž„αŸ’αž€αžΎαž“αžŸαž˜αžαŸ’αžαž—αžΆαž–αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αž˜αŸαžšαž”αžŸαŸ‹αž’αŸ’αž“αž€ αžŠαžΌαž…αŸ’αž“αŸαŸ‡αžœαžΆαž‡αžΆαž€αžΆαžšαžŸαŸ†αžαžΆαž“αŸ‹αž€αŸ’αž“αž»αž„αž€αžΆαžšαžαžΆαž˜αžŠαžΆαž“ αž“αž·αž„αžœαžΆαž™αžαž˜αŸ’αž›αŸƒαž–αž½αž€αžœαžΆαž•αž„αžŠαŸ‚αžšαŸ”

αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‚αŸ’αžšαžΉαŸ‡αž“αŸƒαž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™ PostgreSQL αŸ” Alexey Lesovsky

αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž’αŸ’αž“αž€αž…αžΆαž”αŸ‹αž’αžΆαžšαž˜αŸ’αž˜αžŽαŸαž›αžΎαž”αŸ’αžšαž’αžΆαž“αž”αž‘αž“αŸαŸ‡ αž’αŸ’αž“αž€αž’αžΆαž…αž’αŸ’αžœαžΎαžαžΆαž˜αžαŸ†αžŽαž‘αžΆαŸ†αž„αž“αŸαŸ‡αŸ”
http://bit.do/stats_collector - αž“αŸαŸ‡αž‚αžΊαž‡αžΆαž―αž€αžŸαžΆαžšαž•αŸ’αž›αžΌαžœαž€αžΆαžšαž–αžΈαž’αŸ’αž“αž€αž”αŸ’αžšαž˜αžΌαž›αžŸαŸ’αžαž·αžαž·αŸ” αž˜αžΆαž“αž€αžΆαžšαž–αž·αž–αžŽαŸŒαž“αžΆαž’αŸ†αž–αžΈαž‘αž·αžŠαŸ’αž‹αž—αžΆαž–αžŸαŸ’αžαž·αžαž·αž‘αžΆαŸ†αž„αž’αžŸαŸ‹ αž“αž·αž„αž€αžΆαžšαž–αž·αž–αžŽαŸŒαž“αžΆαž’αŸ†αž–αžΈαžœαžΆαž›αž‘αžΆαŸ†αž„αž’αžŸαŸ‹αŸ” αž’αŸ’αž“αž€αž’αžΆαž…αž’αžΆαž“ αž™αž›αŸ‹ αž“αž·αž„αžœαž·αž—αžΆαž‚αž–αž½αž€αž‚αŸαŸ” αž αžΎαž™αž•αŸ’αž’αŸ‚αž€αž›αžΎαž–αž½αž€αžœαžΆ αž”αž„αŸ’αž€αžΎαžαž€αŸ’αžšαžΆαž αŸ’αžœαžšαž”αžŸαŸ‹αž’αŸ’αž“αž€ αž αžΎαž™αž”αž“αŸ’αžαŸ‚αž˜αžœαžΆαž‘αŸ…αž€αŸ’αž“αž»αž„αž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αŸ”

αžŸαŸ†αžŽαžΎαž§αž‘αžΆαž αžšαžŽαŸαŸ–
http://bit.do/dataegret_sql
http://bit.do/lesovsky_sql

αž“αŸαŸ‡αž‡αžΆαžƒαŸ’αž›αžΆαŸ†αž„αžŸαžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αžšαž”αžŸαŸ‹αž™αžΎαž„ αž“αž·αž„αž•αŸ’αž‘αžΆαž›αŸ‹αžαŸ’αž›αž½αž“αžšαž”αžŸαŸ‹αžαŸ’αž‰αž»αŸ†αŸ” αž–αž½αž€αžœαžΆαž˜αžΆαž“αžŸαŸ†αžŽαž½αžšαž§αž‘αžΆαž αžšαžŽαŸαŸ” αž˜αž·αž“αž˜αžΆαž“αžŸαŸ†αžŽαž½αžšαž–αžΈαž€αžΆαžšαž‡αŸ’αžšαžΎαžŸαžšαžΎαžŸ* αž–αžΈαžŸαŸŠαŸαžšαžΈαž“αŸ…αž‘αžΈαž“αŸ„αŸ‡αž‘αŸαŸ” αž˜αžΆαž“αžŸαŸ†αžŽαž½αžšαžŠαŸ‚αž›αžαŸ’αžšαŸ€αž˜αžšαž½αž…αž‡αžΆαžŸαŸ’αžšαŸαž…αž‡αžΆαž˜αž½αž™αž“αžΉαž„αž€αžΆαžšαž—αŸ’αž‡αžΆαž”αŸ‹ αžŠαŸ„αž™αž”αŸ’αžšαžΎαž˜αž»αžαž„αžΆαžšαž‚αž½αžšαž±αŸ’αž™αž…αžΆαž”αŸ‹αž’αžΆαžšαž˜αŸ’αž˜αžŽαŸαžŠαŸ‚αž›αž’αž“αž»αž‰αŸ’αž‰αžΆαžαž±αŸ’αž™αž’αŸ’αž“αž€αž”αŸ’αžšαŸ‚αž€αŸ’αž›αžΆαž™αž›αŸαžαž†αŸ…αž‘αŸ…αž‡αžΆαžαž˜αŸ’αž›αŸƒαžŠαŸ‚αž›αž’αžΆαž…αž’αžΆαž“αž”αžΆαž“ αž„αžΆαž™αžŸαŸ’αžšαž½αž› αž–αŸ„αž›αž‚αžΊαž‘αžΆαŸ†αž„αž“αŸαŸ‡αž‡αžΆαž”αŸƒ αž–αŸαž›αžœαŸαž›αžΆαŸ” αž’αŸ’αž“αž€αž’αžΆαž…αž™αž€αžœαžΆαž‘αžΎαž„ αž˜αžΎαž›αž–αž½αž€αžœαžΆ αžœαž·αž—αžΆαž‚αž–αž½αž€αžœαžΆ αž”αž“αŸ’αžαŸ‚αž˜αž–αž½αž€αžœαžΆαž‘αŸ…αž€αŸ’αž“αž»αž„αž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αžšαž”αžŸαŸ‹αž’αŸ’αž“αž€ αž”αž„αŸ’αž€αžΎαžαž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αžŠαŸ„αž™αž•αŸ’αž’αŸ‚αž€αž›αžΎαž–αž½αž€αž‚αŸαŸ”

αžŸαŸ†αžŽαž½αžš

αžŸαŸ†αžŽαž½αžšαŸ– αž’αŸ’αž“αž€β€‹αž”αžΆαž“β€‹αž“αž·αž™αžΆαž™β€‹αžαžΆβ€‹αž’αŸ’αž“αž€β€‹αž“αžΉαž„β€‹αž˜αž·αž“β€‹αž•αŸ’αžŸαžΆαž™β€‹αž–αžΆαžŽαž·αž‡αŸ’αž‡αž€αž˜αŸ’αž˜β€‹αž˜αŸ‰αžΆαž€ αž”αŸ‰αž»αž“αŸ’αžαŸ‚β€‹αžαŸ’αž‰αž»αŸ†β€‹αž“αŸ…β€‹αžαŸ‚β€‹αž…αž„αŸ‹β€‹αžŠαžΉαž„β€‹αžαžΆ αžαžΎβ€‹αž•αŸ’αž‘αžΆαŸ†αž„β€‹αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„β€‹αž”αŸ’αžšαž—αŸαž‘β€‹αžŽαžΆβ€‹αžŠαŸ‚αž›β€‹αž’αŸ’αž“αž€β€‹αž”αŸ’αžšαžΎβ€‹αž€αŸ’αž“αž»αž„β€‹αž‚αž˜αŸ’αžšαŸ„αž„β€‹αžšαž”αžŸαŸ‹β€‹αž’αŸ’αž“αž€?
αž…αž˜αŸ’αž›αžΎαž™αŸ– αžœαžΆαž”αŸ’αžšαŸ‚αž”αŸ’αžšαž½αž›αŸ” αžœαžΆαž€αžΎαžαž‘αžΎαž„αžαžΆαž™αžΎαž„αž˜αž€αžšαž€αž’αžαž·αžαž·αž‡αž“αž αžΎαž™αž‚αžΆαžαŸ‹αž˜αžΆαž“αž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αž•αŸ’αž‘αžΆαž›αŸ‹αžαŸ’αž›αž½αž“αžšαž”αžŸαŸ‹αž‚αžΆαžαŸ‹αžšαž½αž…αž αžΎαž™αŸ” αž αžΎαž™αž™αžΎαž„αžŽαŸ‚αž“αžΆαŸ†αž’αžαž·αžαž·αž‡αž“αž’αŸ†αž–αžΈαž’αŸ’αžœαžΈαžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž”αž“αŸ’αžαŸ‚αž˜αž‘αŸ…αž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αžšαž”αžŸαŸ‹αž–αž½αž€αž‚αŸαŸ” αžŸαŸ’αžαžΆαž“αž—αžΆαž–αžŠαŸαž’αžΆαž€αŸ’αžšαž€αŸ‹αž”αŸ†αž•αž»αžαž‚αžΊαž‡αžΆαž˜αž½αž™ Zabbix αŸ” αžŠαŸ„αž™αžŸαžΆαžšαžαŸ‚αžœαžΆαž˜αž·αž“αž˜αžΆαž“αžŸαž˜αžαŸ’αžαž—αžΆαž–αž€αŸ’αž“αž»αž„αž€αžΆαžšαž”αž„αŸ’αž€αžΎαžαž€αŸ’αžšαžΆαž αŸ’αžœ TopN αŸ” αž™αžΎαž„αžαŸ’αž›αž½αž“αž™αžΎαž„αž”αŸ’αžšαžΎ OkmeterαžŠαŸ„αž™β€‹αžŸαžΆαžšβ€‹αž™αžΎαž„β€‹αž”αžΆαž“β€‹αž”αŸ’αžšαžΉαž€αŸ’αžŸαžΆβ€‹αž‡αžΆαž˜αž½αž™β€‹αž’αŸ’αž“αž€β€‹αž‘αžΆαŸ†αž„β€‹αž“αŸαŸ‡β€‹αž›αžΎβ€‹αž€αžΆαžšβ€‹αžαŸ’αžšαž½αžβ€‹αž–αž·αž“αž·αžαŸ’αž™αŸ” αž–αž½αž€αž‚αŸαž”αžΆαž“αžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™ PostgreSQL αžŠαŸ„αž™αž•αŸ’αž’αŸ‚αž€αž›αžΎαž›αž€αŸ’αžαžŽαŸˆαž”αž…αŸ’αž…αŸαž€αž‘αŸαžŸαžšαž”αžŸαŸ‹αž™αžΎαž„αŸ” αžαŸ’αž‰αž»αŸ†αž€αŸ†αž–αž»αž„αžŸαžšαžŸαŸαžšαž‚αž˜αŸ’αžšαŸ„αž„αžŸαžαŸ’αžœαž…αž·αž‰αŸ’αž…αžΉαž˜αž•αŸ’αž‘αžΆαž›αŸ‹αžαŸ’αž›αž½αž“αžšαž”αžŸαŸ‹αžαŸ’αž‰αž»αŸ† αžŠαŸ‚αž›αž”αŸ’αžšαž˜αžΌαž›αž‘αž·αž“αŸ’αž“αž“αŸαž™αžαžΆαž˜αžšαž™αŸˆ Prometheus αž αžΎαž™αž”αž„αŸ’αž αžΆαž‰αžœαžΆαž“αŸ…αž€αŸ’αž“αž»αž„ αž αŸ’αž‚αŸ’αžšαŸαžŽαžΆαžŽαžΆ. αž—αžΆαžšαž€αž·αž…αŸ’αž…αžšαž”αžŸαŸ‹αžαŸ’αž‰αž»αŸ†αž‚αžΊαž”αž„αŸ’αž€αžΎαžαž’αŸ’αž“αž€αž“αžΆαŸ†αž…αŸαž‰αž•αŸ’αž‘αžΆαž›αŸ‹αžαŸ’αž›αž½αž“αžšαž”αžŸαŸ‹αžαŸ’αž‰αž»αŸ†αž“αŸ…αž€αŸ’αž“αž»αž„ Prometheus αž αžΎαž™αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž˜αž€αž”αž„αŸ’αž αžΆαž‰αž’αŸ’αžœαžΈαž‚αŸ’αžšαž”αŸ‹αž™αŸ‰αžΆαž„αž“αŸ…αž€αŸ’αž“αž»αž„ Grafana αŸ”

αžŸαŸ†αžŽαž½αžšαŸ– αžαžΎαž˜αžΆαž“ analogues αž“αŸƒαžšαž”αžΆαž™αž€αžΆαžšαžŽαŸ AWR ឬ... αžŸαžšαž»αž”αžŠαŸ‚αžšαž¬αž‘αŸ? αžŠαžΉαž„αžšαžΏαž„αž”αŸ‚αž”αž“αŸαŸ‡αž‘αŸ?
αž…αž˜αŸ’αž›αžΎαž™αŸ– αž”αžΆαž‘ αžαŸ’αž‰αž»αŸ†αžŠαžΉαž„αžαžΆ AWR αž‡αžΆαž’αŸ’αžœαžΈ αžœαžΆαž‡αžΆαžšαžΏαž„αž›αŸ’αž’αž˜αž½αž™αŸ” αž“αŸ…β€‹αž–αŸαž›β€‹αž“αŸαŸ‡ αž˜αžΆαž“β€‹αž€αž„αŸ‹β€‹αž‡αžΆβ€‹αž…αŸ’αžšαžΎαž“β€‹αž”αŸ’αžšαž—αŸαž‘β€‹αžŠαŸ‚αž›β€‹αž’αž“αž»αžœαžαŸ’αžβ€‹αž”αŸ’αžšαž˜αžΆαžŽβ€‹αž‡αžΆβ€‹αž‚αŸ†αžšαžΌβ€‹αžŠαžΌαž…β€‹αžαžΆαž„β€‹αž€αŸ’αžšαŸ„αž˜αŸ” αž“αŸ…αž…αž“αŸ’αž›αŸ„αŸ‡αž–αŸαž›αžαŸ’αž›αŸ‡ αž”αž“αŸ’αž‘αžΆαžαŸ‹αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž˜αž½αž™αž…αŸ†αž“αž½αž“αžαŸ’αžšαžΌαžœαž”αžΆαž“αžŸαžšαžŸαŸαžšαž‘αŸ… PostgreSQL αžŠαžΌαž…αž‚αŸ’αž“αžΆ αž¬αž‘αŸ…αž€αž“αŸ’αž›αŸ‚αž„αž•αŸ’αž‘αž»αž€αžŠαžΆαž…αŸ‹αžŠαŸ„αž™αž‘αŸ‚αž€αŸ” αž’αŸ’αž“αž€αž’αžΆαž… google αž–αž½αž€αž‚αŸαž“αŸ…αž›αžΎαž’αŸŠαžΈαž“αž’αžΊαžŽαž·αž αž–αž½αž€αž‚αŸαž“αŸ…αž‘αžΈαž“αŸ„αŸ‡αŸ” αž’αŸ’αž“αž€αž’αž—αž·αžœαžŒαŸ’αžαž“αŸαž˜αŸ’αž“αžΆαž€αŸ‹αž“αŸƒαžšαžΏαž„αž”αŸ‚αž”αž“αŸαŸ‡αž€αŸ†αž–αž»αž„αž’αž„αŸ’αž‚αž»αž™αž“αŸ…αž›αžΎαžœαŸαž‘αž·αž€αžΆ sql.ru αž“αŸ…αž€αŸ’αž“αž»αž„αžαŸ’αžŸαŸ‚αžŸαŸ’αžšαž‘αžΆαž™ PostgreSQL αŸ” αž’αŸ’αž“αž€αž’αžΆαž…αž…αžΆαž”αŸ‹αž‚αžΆαžαŸ‹αž“αŸ…αž‘αžΈαž“αŸ„αŸ‡αŸ” αž”αžΆαž‘ αž˜αžΆαž“αžšαž”αžŸαŸ‹αž”αŸ‚αž”αž“αŸαŸ‡ αž‚αŸαž’αžΆαž…αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž”αžΆαž“αŸ” αž”αžΌαž€αž“αŸ…αž€αŸ’αž“αž»αž„αžšαž”αžŸαŸ‹αžœαžΆαŸ” pgCenter αžαŸ’αž‰αž»αŸ†αž€αŸαž€αŸ†αž–αž»αž„αžŸαžšαžŸαŸαžšαžšαžΏαž„αž˜αž½αž™αžŠαŸ‚αž›αž’αž“αž»αž‰αŸ’αž‰αžΆαžαž±αŸ’αž™αž’αŸ’αž“αž€αž’αŸ’αžœαžΎαžšαžΏαž„αžŠαžΌαž…αž‚αŸ’αž“αžΆαŸ”

PS1 αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž’αŸ’αž“αž€αž”αŸ’αžšαžΎ postgres_exporter αžαžΎαž’αŸ’αž“αž€αž€αŸ†αž–αž»αž„αž”αŸ’αžšαžΎ dashboard αž’αŸ’αžœαžΈ? αž˜αžΆαž“αž–αž½αž€αž‚αŸαž˜αž½αž™αž…αŸ†αž“αž½αž“αŸ” αž–αž½αž€αžœαžΆαž αž½αžŸαžŸαž˜αŸαž™αž αžΎαž™αŸ” αž”αŸ’αžšαž αŸ‚αž›αž‡αžΆαžŸαž αž‚αž˜αž“αŸαž“αžΉαž„αž”αž„αŸ’αž€αžΎαžαž‚αŸ†αžšαžΌαžŠαŸ‚αž›αž”αžΆαž“αž’αŸ’αžœαžΎαž”αž…αŸ’αž…αž»αž”αŸ’αž”αž“αŸ’αž“αž—αžΆαž–?

PS2 αž”αžΆαž“αž™αž€αž…αŸαž‰ pganalze αž–αŸ’αžšαŸ„αŸ‡αžœαžΆαž‚αžΊαž‡αžΆαž€αžΆαžšαž•αŸ’αžαž›αŸ‹αž‡αžΌαž“ SaaS αžŠαŸ‚αž›αž˜αžΆαž“αž€αž˜αŸ’αž˜αžŸαž·αž‘αŸ’αž’αž·αžŠαŸ‚αž›αž•αŸ’αžαŸ„αžαž›αžΎαž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αž€αžΆαžšαž’αž“αž»αžœαžαŸ’αž αž“αž·αž„αž€αžΆαžšαž•αŸ’αžŠαž›αŸ‹αž™αŸ„αž”αž›αŸ‹αž€αžΆαžšαž›αŸƒαžαž˜αŸ’αžšαžΌαžœαžŠαŸ„αž™αžŸαŸ’αžœαŸαž™αž”αŸ’αžšαžœαžαŸ’αžαž·αŸ”

αž˜αžΆαž“αžαŸ‚αž’αŸ’αž“αž€αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αžŠαŸ‚αž›αž”αžΆαž“αž…αž»αŸ‡αžˆαŸ’αž˜αŸ„αŸ‡αž”αŸ‰αž»αžŽαŸ’αžŽαŸ„αŸ‡αžŠαŸ‚αž›αž’αžΆαž…αž…αžΌαž›αžšαž½αž˜αž€αŸ’αž“αž»αž„αž€αžΆαžšαžŸαŸ’αž‘αž„αŸ‹αž˜αžαž·αž“αŸαŸ‡αŸ” αž…αžΌαž›αžŸαžΌαž˜αŸ”

αžαžΎαž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™ postgresql αžŠαŸ‚αž›αž”αž„αŸ’αž αŸ„αŸ‡αžŠαŸ„αž™αžαŸ’αž›αž½αž“αž―αž„ (αž‡αžΆαž˜αž½αž™αž•αŸ’αž‘αžΆαŸ†αž„αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„) αžαžΎαž’αŸ’αž“αž€αž…αžΆαžαŸ‹αž‘αž»αž€αžαžΆαž›αŸ’αž’αž”αŸ†αž•αž»αž?

  • 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 αž“αžΆαž€αŸ‹αž”αžΆαž“αž”αŸ„αŸ‡αž†αŸ’αž“αŸ„αžαŸ” αž’αŸ’αž“αž€αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹ ៑ៀ αž“αžΆαž€αŸ‹αžαŸ’αžšαžΌαžœαž”αžΆαž“αž αžΆαž˜αžƒαžΆαžαŸ‹αŸ”

αž”αŸ’αžšαž—αž–: www.habr.com

αž”αž“αŸ’αžαŸ‚αž˜αž˜αžαž·αž™αŸ„αž”αž›αŸ‹