αž’αŸ’αžœαžΈ αž“αž·αž„αž˜αžΌαž›αž αŸαžαž»αžŠαŸ‚αž›αž™αžΎαž„αž’αŸ’αžœαžΎαž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž”αŸ’αžšαž—αž–αž”αžΎαž€αž…αŸ†αž αŸ” Andrey Borodin (Yandex.Cloud)

αž’αŸ’αžœαžΈ αž“αž·αž„αž˜αžΌαž›αž αŸαžαž»αžŠαŸ‚αž›αž™αžΎαž„αž’αŸ’αžœαžΎαž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž”αŸ’αžšαž—αž–αž”αžΎαž€αž…αŸ†αž αŸ” Andrey Borodin (Yandex.Cloud)

αž€αžΆαžšαžšαž½αž˜αž…αŸ†αžŽαŸ‚αž€αžšαž”αžŸαŸ‹ Yandex αž…αŸ†αž–αŸ„αŸ‡αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αžαžΆαž„αž€αŸ’αžšαŸ„αž˜αž“αžΉαž„αžαŸ’αžšαžΌαžœαž”αžΆαž“αž–αž·αž“αž·αžαŸ’αž™αŸ”

  • αž…αž»αž…αž•αŸ’αž‘αŸ‡
  • αž“αžΆαžœαžΆ Odyssey
  • αž€αžΆαžšαž„αžΎαž”αž‘αžΎαž„αžœαž·αž‰αžŠαž›αŸ‹αž…αŸ†αžŽαž»αž…αž‘αžΆαž“αŸ‹αž–αŸαž›αžœαŸαž›αžΆ (WAL-G)
  • PostgreSQL (αžšαž½αž˜αž‘αžΆαŸ†αž„ logerrors, Amcheck, heapcheck)
  • αž”αŸƒαžαž„αž•αŸ’αž›αž»αŸ†

វីដេធូ:

αžŸαž½αžŸαŸ’αžαžΈβ€‹αž–αž·αž—αž–αž›αŸ„αž€! αžαŸ’αž‰αž»αŸ†αžˆαŸ’αž˜αŸ„αŸ‡ Andrey Borodin αŸ” αž αžΎαž™αž’αŸ’αžœαžΈαžŠαŸ‚αž›αžαŸ’αž‰αž»αŸ†αž’αŸ’αžœαžΎαž“αŸ… Yandex.Cloud αž‚αžΊαž”αž„αŸ’αž€αžΎαžαž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž‘αŸ†αž“αžΆαž€αŸ‹αž‘αŸ†αž“αž„αž”αžΎαž€αž…αŸ†αž αž‡αžΆαž•αž›αž”αŸ’αžšαž™αŸ„αž‡αž“αŸαžšαž”αžŸαŸ‹αž’αžαž·αžαž·αž‡αž“ Yandex.Cloud αž“αž·αž„ Yandex.Cloud αŸ”

αž’αŸ’αžœαžΈ αž“αž·αž„αž˜αžΌαž›αž αŸαžαž»αžŠαŸ‚αž›αž™αžΎαž„αž’αŸ’αžœαžΎαž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž”αŸ’αžšαž—αž–αž”αžΎαž€αž…αŸ†αž αŸ” Andrey Borodin (Yandex.Cloud)

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

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

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

αž’αŸ’αžœαžΈ αž“αž·αž„αž˜αžΌαž›αž αŸαžαž»αžŠαŸ‚αž›αž™αžΎαž„αž’αŸ’αžœαžΎαž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž”αŸ’αžšαž—αž–αž”αžΎαž€αž…αŸ†αž αŸ” Andrey Borodin (Yandex.Cloud)

αžαžΎαž˜αžΆαž“αžœαž·αž’αžΈαžŸαžΆαžŸαŸ’αžšαŸ’αžαž’αŸ’αžœαžΈαžαŸ’αž›αŸ‡αž€αŸ’αž“αž»αž„αž€αžΆαžšαž’αŸ’αžœαžΎαž€αžΆαžšαž›αžΎαž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž”αŸ’αžšαž—αž–αž”αžΎαž€αž…αŸ†αž ?

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

αž’αŸ’αžœαžΈ αž“αž·αž„αž˜αžΌαž›αž αŸαžαž»αžŠαŸ‚αž›αž™αžΎαž„αž’αŸ’αžœαžΎαž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž”αŸ’αžšαž—αž–αž”αžΎαž€αž…αŸ†αž αŸ” Andrey Borodin (Yandex.Cloud)

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

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

αž’αŸ’αžœαžΈ αž“αž·αž„αž˜αžΌαž›αž αŸαžαž»αžŠαŸ‚αž›αž™αžΎαž„αž’αŸ’αžœαžΎαž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž”αŸ’αžšαž—αž–αž”αžΎαž€αž…αŸ†αž αŸ” Andrey Borodin (Yandex.Cloud)

αž“αŸ…αž€αŸ’αž“αž»αž„ Yandex.Cloud αž™αžΎαž„αž”αžΆαž“αž”αž„αŸ’αž€αžΎαž ClickHouse αž“αŸ…αž›αžΎαž€αŸ†αž–αžΌαž›αž“αŸƒ Yandex Object Storage αž–αŸ„αž›αž‚αžΊαž“αŸ…αž›αžΎαž€αŸ†αž–αžΌαž›αž“αŸƒ cloud storageαŸ”

αž’αŸ’αžœαžΈ αž“αž·αž„αž˜αžΌαž›αž αŸαžαž»αžŠαŸ‚αž›αž™αžΎαž„αž’αŸ’αžœαžΎαž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž”αŸ’αžšαž—αž–αž”αžΎαž€αž…αŸ†αž αŸ” Andrey Borodin (Yandex.Cloud)

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

αž’αŸ’αžœαžΈ αž“αž·αž„αž˜αžΌαž›αž αŸαžαž»αžŠαŸ‚αž›αž™αžΎαž„αž’αŸ’αžœαžΎαž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž”αŸ’αžšαž—αž–αž”αžΎαž€αž…αŸ†αž αŸ” Andrey Borodin (Yandex.Cloud)

αžαžΎαžœαžΆαž’αžΆαž…αž’αŸ’αžœαžΎαž”αžΆαž“αžŠαŸ„αž™αžšαž”αŸ€αž”αžŽαžΆ? αž“αŸαŸ‡αž‚αžΊαž‡αžΆαž…αŸ†αžŽαž»αž…αžŸαŸ†αžαžΆαž“αŸ‹αž“αŸ…αž€αŸ’αž“αž»αž„αžšαž”αžΆαž™αž€αžΆαžšαžŽαŸαž“αŸαŸ‡αŸ”

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

αž‡αžΆαž’αž˜αŸ’αž˜αž‡αžΆαžαž· αžŠαŸ„αž™αž…αž„αŸ‹αž•αŸ’αžαž›αŸ‹αž˜αž»αžαž„αžΆαžšαžŠαž›αŸ‹αž”αŸ’αžšαž–αŸαž“αŸ’αž’αž’αŸαž€αžΌ ClickHouse αž‘αžΆαŸ†αž„αž˜αžΌαž› αž“αž·αž„αž’αŸ’αžœαžΎαž€αž·αž…αŸ’αž…αž€αžΆαžšαžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž€αžΆαžšαž“αŸ…αžαžΆαž„αž€αŸ’αž“αž»αž„ Yandex.Cloud αž™αžΎαž„αž”αžΆαž“αžŸαž˜αŸ’αžšαŸαž…αž…αž·αžαŸ’αžαž’αŸ’αžœαžΎαž±αŸ’αž™αž”αŸ’αžšαžΆαž€αžŠαžαžΆαžŸαž αž‚αž˜αž“αŸ ClickHouse αž‘αžΆαŸ†αž„αž˜αžΌαž›αž“αžΉαž„αž‘αž‘αž½αž›αž”αžΆαž“αž’αžαŸ’αžαž”αŸ’αžšαž™αŸ„αž‡αž“αŸαž–αžΈαžœαžΆαŸ” αž™αžΎαž„αž”αžΆαž“αž’αž“αž»αžœαžαŸ’αž ClickHouse αž›αžΎ S3 αž˜αž·αž“αž˜αŸ‚αž“ ClickHouse αž›αžΎ MDS αž‘αŸαŸ” αž αžΎαž™αž“αŸαŸ‡αž‚αžΊαž‡αžΆαž€αžΆαžšαž„αžΆαžšαž‡αžΆαž…αŸ’αžšαžΎαž“αŸ”

αž’αŸ’αžœαžΈ αž“αž·αž„αž˜αžΌαž›αž αŸαžαž»αžŠαŸ‚αž›αž™αžΎαž„αž’αŸ’αžœαžΎαž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž”αŸ’αžšαž—αž–αž”αžΎαž€αž…αŸ†αž αŸ” Andrey Borodin (Yandex.Cloud)

αž―αž€αžŸαžΆαžšαž™αŸ„αž„:

https://github.com/ClickHouse/ClickHouse/pull/7946 "αžŸαŸ’αžšαž‘αžΆαž”αŸ‹αž’αžšαžΌαž”αžΈαž”αŸ’αžšαž–αŸαž“αŸ’αž’αž―αž€αžŸαžΆαžš"
https://github.com/ClickHouse/ClickHouse/pull/8011 "αž€αžΆαžšαžšαž½αž˜αž”αž‰αŸ’αž…αžΌαž› AWS SDK S3"
https://github.com/ClickHouse/ClickHouse/pull/8649 "αž€αžΆαžšαž’αž“αž»αžœαžαŸ’αžαž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž“αŸƒ IDisk interafce αžŸαž˜αŸ’αžšαžΆαž”αŸ‹ S3"
https://github.com/ClickHouse/ClickHouse/pull/8356 "αž€αžΆαžšαžšαž½αž˜αž”αž‰αŸ’αž…αžΌαž›αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αž•αŸ’αž‘αž»αž€αž€αŸ†αžŽαžαŸ‹αž αŸαžαž»αž‡αžΆαž˜αž½αž™αž…αŸ†αžŽαž»αž…αž”αŸ’αžšαž‘αžΆαž€αŸ‹ IDisk"
https://github.com/ClickHouse/ClickHouse/pull/8862 "αž€αžΆαžšαž‚αžΆαŸ†αž‘αŸ’αžšαž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αžŸαž˜αŸ’αžšαžΆαž”αŸ‹ S3 αž“αž·αž„ SeekableReadBuffer"
https://github.com/ClickHouse/ClickHouse/pull/9128 "αž€αžΆαžšαž‚αžΆαŸ†αž‘αŸ’αžš Stripe Log S3"
https://github.com/ClickHouse/ClickHouse/pull/9415 "αž€αžΆαžšαž‚αžΆαŸ†αž‘αŸ’αžšαžŠαŸ†αž”αžΌαž„αž€αžΆαžšαž•αŸ’αž‘αž»αž€ MergeTree αžŸαž˜αŸ’αžšαžΆαž”αŸ‹ S3"
https://github.com/ClickHouse/ClickHouse/pull/9646 "αž€αžΆαžšβ€‹αž‚αžΆαŸ†αž‘αŸ’αžšβ€‹αž–αŸαž‰αž›αŸαž‰ MergeTree αžŸαž˜αŸ’αžšαžΆαž”αŸ‹ S3"
https://github.com/ClickHouse/ClickHouse/pull/10126 "αž‚αžΆαŸ†αž‘αŸ’αžšαž€αžΆαžšαž…αž˜αŸ’αž›αž„αž˜αžšαžαž€αž˜αŸ‚αž€αž’αžΆαž„αž›αžΎ S3"
https://github.com/ClickHouse/ClickHouse/pull/11134 "αž”αž“αŸ’αžαŸ‚αž˜αž–αŸαžαŸŒαž˜αžΆαž“αžŸαž˜αŸ’αž„αžΆαžαŸ‹αž›αŸ†αž“αžΆαŸ†αžŠαžΎαž˜ αž“αž·αž„αž”αž‹αž˜αž€αžαžΆαž•αŸ’αž‘αžΆαž›αŸ‹αžαŸ’αž›αž½αž“αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αžΆαžšαž•αŸ’αž‘αž»αž€ s3"
https://github.com/ClickHouse/ClickHouse/pull/10576 "S3 αž‡αžΆαž˜αž½αž™αž“αžΉαž„αž€αžΆαžšαž€αŸ†αžŽαžαŸ‹αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’αž”αŸ’αžšαžΌαž€αžŸαŸŠαžΈαžαžΆαž˜αžœαž“αŸ’αž"
https://github.com/ClickHouse/ClickHouse/pull/10744 "S3 αž‡αžΆαž˜αž½αž™αž€αž˜αŸ’αž˜αžœαž·αž’αžΈαžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž”αŸ’αžšαžΌαž€αžŸαŸŠαžΈ"

αž“αŸαŸ‡αž‚αžΊαž‡αžΆαž”αž‰αŸ’αž‡αžΈαžŸαŸ†αžŽαžΎαž‘αžΆαž‰αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž’αž“αž»αžœαžαŸ’αžαž”αŸ’αžšαž–αŸαž“αŸ’αž’αž―αž€αžŸαžΆαžšαž“αž·αž˜αŸ’αž˜αž·αžαž“αŸ…αž€αŸ’αž“αž»αž„ ClickHouse αŸ” αž“αŸαŸ‡αž‚αžΊαž‡αžΆαž…αŸ†αž“αž½αž“αžŠαŸαž…αŸ’αžšαžΎαž“αž“αŸƒαžŸαŸ†αžŽαžΎαž‘αžΆαž‰αŸ”

αž’αŸ’αžœαžΈ αž“αž·αž„αž˜αžΌαž›αž αŸαžαž»αžŠαŸ‚αž›αž™αžΎαž„αž’αŸ’αžœαžΎαž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž”αŸ’αžšαž—αž–αž”αžΎαž€αž…αŸ†αž αŸ” Andrey Borodin (Yandex.Cloud)

αž―αž€αžŸαžΆαžšαž™αŸ„αž„:

https://github.com/ClickHouse/ClickHouse/pull/9760 "αž€αžΆαžšαž’αž“αž»αžœαžαŸ’αžαž›αŸ’αž’αž”αŸ†αž•αž»αžαž“αŸƒαžαŸ†αžŽαž—αŸ’αž‡αžΆαž”αŸ‹αžšαžΉαž„ DiskS3"
https://github.com/ClickHouse/ClickHouse/pull/11522 "αž’αžαž·αžαž·αž‡αž“ S3 HTTP - αž‡αŸ€αžŸαžœαžΆαž„αž€αžΆαžšαž…αž˜αŸ’αž›αž„αžŸαŸ’αž‘αŸ’αžšαžΈαž˜αž†αŸ’αž›αžΎαž™αžαž”αž‘αŸ…αž€αŸ’αž“αž»αž„αž’αž„αŸ’αž‚αž…αž„αž…αžΆαŸ†"
https://github.com/ClickHouse/ClickHouse/pull/11561 β€œαž‡αŸ€αžŸαžœαžΆαž„αž€αžΆαžšαž…αž˜αŸ’αž›αž„αžŸαŸ’αž‘αŸ’αžšαžΈαž˜αž†αŸ’αž›αžΎαž™αžαž”αž‘αžΆαŸ†αž„αž˜αžΌαž›αž‘αŸ…αž€αŸ’αž“αž»αž„αž’αž„αŸ’αž‚αž…αž„αž…αžΆαŸ†αž€αŸ’αž“αž»αž„ S3 HTTP
αž’αžαž·αžαž·αž‡αž“"
https://github.com/ClickHouse/ClickHouse/pull/13076 "αžŸαž˜αžαŸ’αžαž—αžΆαž–αž€αŸ’αž“αž»αž„αž€αžΆαžšαž€αŸ†αžŽαžαŸ‹αžƒαŸ’αž›αžΆαŸ†αž„αžŸαž˜αŸ’αž„αžΆαžαŸ‹αž“αž·αž„αž―αž€αžŸαžΆαžšαž›αž·αž”αž·αž€αŸ’αžšαž˜αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžαžΆαžŸ S3"
https://github.com/ClickHouse/ClickHouse/pull/13459 "αž•αŸ’αž›αžΆαžŸαŸ‹αž‘αžΈαž•αŸ’αž“αŸ‚αž€αž–αžΈ DiskLocal αž‘αŸ… DiskS3 αžŸαŸ’αžšαž”αž‚αŸ’αž“αžΆ"

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

αž’αŸ’αžœαžΈ αž“αž·αž„αž˜αžΌαž›αž αŸαžαž»αžŠαŸ‚αž›αž™αžΎαž„αž’αŸ’αžœαžΎαž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž”αŸ’αžšαž—αž–αž”αžΎαž€αž…αŸ†αž αŸ” Andrey Borodin (Yandex.Cloud)

αž―αž€αžŸαžΆαžšαž™αŸ„αž„:

https://github.com/ClickHouse/ClickHouse/pull/12638 "αž”αž“αŸ’αžαŸ‚αž˜αž–αŸ’αžšαžΉαžαŸ’αžαž·αž€αžΆαžšαžŽαŸ SelectedRows αž“αž·αž„ SelectedBytes"
https://github.com/ClickHouse/ClickHouse/pull/12464 "αž”αž“αŸ’αžαŸ‚αž˜αž–αŸ’αžšαžΉαžαŸ’αžαž·αž€αžΆαžšαžŽαŸαž”αŸ’αžšαžœαžαŸ’αžαž·αžšαžΌαž”αž–αžΈαžŸαŸ†αžŽαžΎ S3 αž‘αŸ… system.events"
https://github.com/ClickHouse/ClickHouse/pull/13028 "αž”αž“αŸ’αžαŸ‚αž˜ QueryTimeMicroseconds, SelectQueryTimeMicroseconds αž“αž·αž„ InsertQueryTimeMicroseconds"

αž αžΎαž™αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž˜αž€αžœαžΆαž…αžΆαŸ†αž”αžΆαž…αŸ‹αž€αŸ’αž“αž»αž„αž€αžΆαžšαž’αŸ’αžœαžΎαž±αŸ’αž™αžœαžΆαž’αžΆαž…αž’αŸ’αžœαžΎαžšαŸ„αž‚αžœαž·αž“αž·αž…αŸ’αž†αŸαž™αž”αžΆαž“ αžšαŸ€αž”αž…αŸ†αž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™ αž“αž·αž„αž’αŸ’αžœαžΎαž±αŸ’αž™αžœαžΆαž’αžΆαž…αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αž”αžΆαž“αŸ”

αž αžΎαž™αž’αŸ’αžœαžΈαŸ—αž‘αžΆαŸ†αž„αž’αžŸαŸ‹αž“αŸαŸ‡αžαŸ’αžšαžΌαžœαž”αžΆαž“αž’αŸ’αžœαžΎαž‘αžΎαž„αžŠαžΎαž˜αŸ’αž”αžΈαž±αŸ’αž™αžŸαž αž‚αž˜αž“αŸαž‘αžΆαŸ†αž„αž˜αžΌαž› αž”αŸ’αžšαž–αŸαž“αŸ’αž’αž’αŸαž€αžΌ ClickHouse αž‘αžΆαŸ†αž„αž˜αžΌαž›αž”αžΆαž“αž‘αž‘αž½αž›αž›αž‘αŸ’αž’αž•αž›αž“αŸƒαž€αžΆαžšαž„αžΆαžšαž“αŸαŸ‡αŸ”

αž’αŸ’αžœαžΈ αž“αž·αž„αž˜αžΌαž›αž αŸαžαž»αžŠαŸ‚αž›αž™αžΎαž„αž’αŸ’αžœαžΎαž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž”αŸ’αžšαž—αž–αž”αžΎαž€αž…αŸ†αž αŸ” Andrey Borodin (Yandex.Cloud)

αž…αžΌαžšαž”αž“αŸ’αžαž‘αŸ…αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžš αž‘αŸ…αž€αžΆαž“αŸ‹αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™ OLTP αžŠαŸ‚αž›αž“αŸ…αž‡αž·αžαžαŸ’αž‰αž»αŸ†αž•αŸ’αž‘αžΆαž›αŸ‹αŸ”

αž’αŸ’αžœαžΈ αž“αž·αž„αž˜αžΌαž›αž αŸαžαž»αžŠαŸ‚αž›αž™αžΎαž„αž’αŸ’αžœαžΎαž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž”αŸ’αžšαž—αž–αž”αžΎαž€αž…αŸ†αž αŸ” Andrey Borodin (Yandex.Cloud)

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

αž’αŸ’αžœαžΈ αž“αž·αž„αž˜αžΌαž›αž αŸαžαž»αžŠαŸ‚αž›αž™αžΎαž„αž’αŸ’αžœαžΎαž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž”αŸ’αžšαž—αž–αž”αžΎαž€αž…αŸ†αž αŸ” Andrey Borodin (Yandex.Cloud)

αž‚αž˜αŸ’αžšαŸ„αž„αž˜αž½αž™αž€αŸ’αž“αž»αž„αž…αŸ†αžŽαŸ„αž˜αž‚αž˜αŸ’αžšαŸ„αž„ αžŠαŸ„αž™αž”αŸ’αžšαžΎαž§αž‘αžΆαž αžšαžŽαŸαžŠαŸ‚αž›αž™αžΎαž„αž’αžΆαž…αž“αž·αž™αžΆαž™αž’αŸ†αž–αžΈαžšαž”αŸ€αž” αž“αž·αž„αž’αŸ’αžœαžΈαžŠαŸ‚αž›αž™αžΎαž„αž’αŸ’αžœαžΎαž‚αžΊ Connection Pooler αž“αŸ…αž€αŸ’αž“αž»αž„ PostgresαŸ”

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

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

αž’αŸ’αžœαžΈ αž“αž·αž„αž˜αžΌαž›αž αŸαžαž»αžŠαŸ‚αž›αž™αžΎαž„αž’αŸ’αžœαžΎαž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž”αŸ’αžšαž—αž–αž”αžΎαž€αž…αŸ†αž αŸ” Andrey Borodin (Yandex.Cloud)

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

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

αž’αŸ’αžœαžΈ αž“αž·αž„αž˜αžΌαž›αž αŸαžαž»αžŠαŸ‚αž›αž™αžΎαž„αž’αŸ’αžœαžΎαž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž”αŸ’αžšαž—αž–αž”αžΎαž€αž…αŸ†αž αŸ” Andrey Borodin (Yandex.Cloud)

https://pgconf.ru/2017/92899

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

αž’αŸ’αžœαžΈ αž“αž·αž„αž˜αžΌαž›αž αŸαžαž»αžŠαŸ‚αž›αž™αžΎαž„αž’αŸ’αžœαžΎαž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž”αŸ’αžšαž—αž–αž”αžΎαž€αž…αŸ†αž αŸ” Andrey Borodin (Yandex.Cloud)

https://pgconf.ru/media/2017/04/03/20170316H1_V.Borodin.pdf

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

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

αž’αŸ’αžœαžΈ αž“αž·αž„αž˜αžΌαž›αž αŸαžαž»αžŠαŸ‚αž›αž™αžΎαž„αž’αŸ’αžœαžΎαž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž”αŸ’αžšαž—αž–αž”αžΎαž€αž…αŸ†αž αŸ” Andrey Borodin (Yandex.Cloud)

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

αž’αŸ’αžœαžΈ αž“αž·αž„αž˜αžΌαž›αž αŸαžαž»αžŠαŸ‚αž›αž™αžΎαž„αž’αŸ’αžœαžΎαž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž”αŸ’αžšαž—αž–αž”αžΎαž€αž…αŸ†αž αŸ” Andrey Borodin (Yandex.Cloud)

https://www.pgcon.org/2019/schedule/events/1312.en.html

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

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

αž’αŸ’αžœαžΈ αž“αž·αž„αž˜αžΌαž›αž αŸαžαž»αžŠαŸ‚αž›αž™αžΎαž„αž’αŸ’αžœαžΎαž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž”αŸ’αžšαž—αž–αž”αžΎαž€αž…αŸ†αž αŸ” Andrey Borodin (Yandex.Cloud)

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

PgBouncer αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αž’αž—αž·αžœαžŒαŸ’αžαž›αžΏαž“αž‡αžΆαž„αž˜αž»αž“αŸ”

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

αž’αŸ’αžœαžΈ αž“αž·αž„αž˜αžΌαž›αž αŸαžαž»αžŠαŸ‚αž›αž™αžΎαž„αž’αŸ’αžœαžΎαž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž”αŸ’αžšαž—αž–αž”αžΎαž€αž…αŸ†αž αŸ” Andrey Borodin (Yandex.Cloud)

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

αž’αŸ’αžœαžΈ αž“αž·αž„αž˜αžΌαž›αž αŸαžαž»αžŠαŸ‚αž›αž™αžΎαž„αž’αŸ’αžœαžΎαž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž”αŸ’αžšαž—αž–αž”αžΎαž€αž…αŸ†αž αŸ” Andrey Borodin (Yandex.Cloud)

αž˜αžΆαž“αž€αžΆαžšαž”αž˜αŸ’αžšαž»αž„αž‘αž»αž€αž‡αžΆαž…αŸ’αžšαžΎαž“ αž αžΎαž™αž–αž½αž€αžœαžΆαž‘αžΆαŸ†αž„αž’αžŸαŸ‹αž‚αžΊαžαž»αžŸαž‚αŸ’αž“αžΆαŸ” αžŸαŸ’αž‘αžΎαžšαžαŸ‚αž‚αŸ’αžšαž”αŸ‹αž’αŸ’αž“αž€αž›αž€αŸ‹ Postgres αž˜αžΆαž“αžŠαŸ†αžŽαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž”αž˜αŸ’αžšαž»αž„αž‘αž»αž€αž•αŸ’αž‘αžΆαž›αŸ‹αžαŸ’αž›αž½αž“αŸ”

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

αž’αŸ’αžœαžΈ αž“αž·αž„αž˜αžΌαž›αž αŸαžαž»αžŠαŸ‚αž›αž™αžΎαž„αž’αŸ’αžœαžΎαž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž”αŸ’αžšαž—αž–αž”αžΎαž€αž…αŸ†αž αŸ” Andrey Borodin (Yandex.Cloud)

https://www.citusdata.com/blog/2017/08/18/introducing-wal-g-faster-restores-for-postgres/

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

αž’αŸ’αžœαžΈ αž“αž·αž„αž˜αžΌαž›αž αŸαžαž»αžŠαŸ‚αž›αž™αžΎαž„αž’αŸ’αžœαžΎαž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž”αŸ’αžšαž—αž–αž”αžΎαž€αž…αŸ†αž αŸ” Andrey Borodin (Yandex.Cloud)

https://github.com/wal-g/wal-g/graphs/contributors

αž₯αž‘αžΌαžœαž“αŸαŸ‡αž˜αžΆαž“αž’αŸ’αž“αž€αž’αž—αž·αžœαžŒαŸ’αžαž“αŸαžšαžΆαž”αŸ‹αžŸαž·αž”αž“αžΆαž€αŸ‹αž“αŸ…αž€αŸ’αž“αž»αž„αž‚αž˜αŸ’αžšαŸ„αž„αž“αŸαŸ‡ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž’αŸ’αž“αž€αžšαž½αž˜αž…αŸ†αžŽαŸ‚αž€αž€αŸ†αž–αžΌαž›αž‘αžΆαŸ†αž„ 10 αžŠαž›αŸ‹ WAL-G αžšαž½αž˜αž˜αžΆαž“ 6 Yandexoids αŸ” αž™αžΎαž„αž”αžΆαž“αž“αžΆαŸ†αž™αž€αž‚αŸ†αž“αž·αžαž‡αžΆαž…αŸ’αžšαžΎαž“αžšαž”αžŸαŸ‹αž™αžΎαž„αž“αŸ…αž‘αžΈαž“αŸ„αŸ‡αŸ” αž αžΎαž™αž‡αžΆαž€αžΆαžšαž–αž·αžαžŽαžΆαžŸαŸ‹ αž™αžΎαž„αž”αžΆαž“αž’αž“αž»αžœαžαŸ’αžαžœαžΆαžŠαŸ„αž™αžαŸ’αž›αž½αž“αž―αž„ αžŸαžΆαž€αž›αŸ’αž”αž„αžœαžΆαžŠαŸ„αž™αžαŸ’αž›αž½αž“αž―αž„ αž”αž‰αŸ’αž…αžΌαž›αžœαžΆαž‘αŸ…αž€αŸ’αž“αž»αž„αž•αž›αž·αžαž€αž˜αŸ’αž˜αžαŸ’αž›αž½αž“αž™αžΎαž„ αž™αžΎαž„αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αžœαžΆαžŠαŸ„αž™αžαŸ’αž›αž½αž“αž―αž„ αž™αžΎαž„αžαŸ’αž›αž½αž“αž―αž„αžŸαŸ’αžœαŸ‚αž„αžšαž€αž€αž“αŸ’αž›αŸ‚αž„αžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž•αŸ’αž›αžΆαžŸαŸ‹αž‘αžΈαž”αž“αŸ’αž‘αžΆαž”αŸ‹ αžαžŽαŸˆαž–αŸαž›αžŠαŸ‚αž›αž’αŸ’αžœαžΎαž’αž“αŸ’αžαžšαž€αž˜αŸ’αž˜αž‡αžΆαž˜αž½αž™αžŸαž αž‚αž˜αž“αŸ WAL-G αžŠαŸαž’αŸ†αŸ”

αž’αŸ’αžœαžΈ αž“αž·αž„αž˜αžΌαž›αž αŸαžαž»αžŠαŸ‚αž›αž™αžΎαž„αž’αŸ’αžœαžΎαž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž”αŸ’αžšαž—αž–αž”αžΎαž€αž…αŸ†αž αŸ” Andrey Borodin (Yandex.Cloud)

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

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

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

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

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

αž’αŸ’αžœαžΈ αž“αž·αž„αž˜αžΌαž›αž αŸαžαž»αžŠαŸ‚αž›αž™αžΎαž„αž’αŸ’αžœαžΎαž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž”αŸ’αžšαž—αž–αž”αžΎαž€αž…αŸ†αž αŸ” Andrey Borodin (Yandex.Cloud)

αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž“αŸ„αŸ‡αž˜αž·αž“αž˜αŸ‚αž“αž‘αžΆαŸ†αž„αž’αžŸαŸ‹αž‘αŸαŸ” αž™αžΎαž„αž…αž„αŸ‹αž”αžΆαž“αžšαžΏαž„αžαžΌαž…αž˜αž½αž™αž‘αŸ€αžαŸ” αž™αžΎαž„αž…αž„αŸ‹αž”αžΆαž“αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž•αŸ’αžŸαŸαž„αŸ—αž‚αŸ’αž“αžΆαž‡αžΆαž…αŸ’αžšαžΎαž“αŸ” αž˜αž·αž“αž˜αŸ‚αž“αž’αžαž·αžαž·αž‡αž“αž‘αžΆαŸ†αž„αž’αžŸαŸ‹αžšαž”αžŸαŸ‹αž™αžΎαž„αž”αŸ’αžšαžΎ Postgres αž‘αŸαŸ” αž’αŸ’αž“αž€αžαŸ’αž›αŸ‡αž”αŸ’αžšαžΎ MySQL, MongoDB αŸ” αž“αŸ…αž€αŸ’αž“αž»αž„αžŸαž αž‚αž˜αž“αŸ αž’αŸ’αž“αž€αž’αž—αž·αžœαžŒαŸ’αžαž“αŸαž•αŸ’αžŸαŸαž„αž‘αŸ€αžαž”αžΆαž“αž‚αžΆαŸ†αž‘αŸ’αžš FoundationDB αŸ” αž αžΎαž™αž”αž‰αŸ’αž‡αžΈαž“αŸαŸ‡αž€αŸ†αž–αž»αž„αž–αž„αŸ’αžšαžΈαž€αž₯αžαžˆαž”αŸ‹αžˆαžšαŸ”

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

αž’αŸ’αžœαžΈ αž“αž·αž„αž˜αžΌαž›αž αŸαžαž»αžŠαŸ‚αž›αž™αžΎαž„αž’αŸ’αžœαžΎαž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž”αŸ’αžšαž—αž–αž”αžΎαž€αž…αŸ†αž αŸ” Andrey Borodin (Yandex.Cloud)

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

αž’αŸ’αžœαžΈ αž“αž·αž„αž˜αžΌαž›αž αŸαžαž»αžŠαŸ‚αž›αž™αžΎαž„αž’αŸ’αžœαžΎαž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž”αŸ’αžšαž—αž–αž”αžΎαž€αž…αŸ†αž αŸ” Andrey Borodin (Yandex.Cloud)

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

αž’αŸ’αžœαžΈ αž“αž·αž„αž˜αžΌαž›αž αŸαžαž»αžŠαŸ‚αž›αž™αžΎαž„αž’αŸ’αžœαžΎαž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž”αŸ’αžšαž—αž–αž”αžΎαž€αž…αŸ†αž αŸ” Andrey Borodin (Yandex.Cloud)

αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž“αŸ…αž‘αžΈαž“αŸαŸ‡αžœαžΆαžαŸ’αžšαžΌαžœαžαŸ‚αž“αž·αž™αžΆαž™αžαžΆ Yandex.Cloud αž˜αžΆαž“αž€αžΆαžšαžŠαŸ†αž‘αžΎαž„αžαžΆαž„αž€αŸ’αž“αž»αž„αž“αŸƒαž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αžŠαŸ‚αž›αž”αžΆαž“αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αŸ” αž αžΎαž™αžœαžΆαž”αžΆαž“αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αž‡αžΆαž™αžΌαžšαž˜αž€αž αžΎαž™αž“αŸ…αž€αŸ’αž“αž»αž„ Yandex.Mail αŸ” αž‡αŸ†αž“αžΆαž‰αžŠαŸ‚αž›αž₯αž‘αžΌαžœαž“αŸαŸ‡αž”αžΆαž“αž“αžΆαŸ†αž±αŸ’αž™αž˜αžΆαž“αž€αžΆαžšαž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„ Postgres αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αŸ’αžšαž˜αžΌαž›αž•αŸ’αžαž»αŸ†αž“αŸ…αž–αŸαž›αžŠαŸ‚αž›αžŸαŸ†αž”αž»αžαŸ’αžšαž…αž„αŸ‹αž•αŸ’αž›αžΆαžŸαŸ‹αž‘αžΈαž‘αŸ… Postgres αŸ”

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

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

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

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

αž’αŸ’αžœαžΈ αž“αž·αž„αž˜αžΌαž›αž αŸαžαž»αžŠαŸ‚αž›αž™αžΎαž„αž’αŸ’αžœαžΎαž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž”αŸ’αžšαž—αž–αž”αžΎαž€αž…αŸ†αž αŸ” Andrey Borodin (Yandex.Cloud)

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

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

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

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

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

αž’αŸ’αžœαžΈ αž“αž·αž„αž˜αžΌαž›αž αŸαžαž»αžŠαŸ‚αž›αž™αžΎαž„αž’αŸ’αžœαžΎαž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž”αŸ’αžšαž—αž–αž”αžΎαž€αž…αŸ†αž αŸ” Andrey Borodin (Yandex.Cloud)

https://commitfest.postgresql.org/23/2171/

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

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

αž’αŸ’αžœαžΈ αž“αž·αž„αž˜αžΌαž›αž αŸαžαž»αžŠαŸ‚αž›αž™αžΎαž„αž’αŸ’αžœαžΎαž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž”αŸ’αžšαž—αž–αž”αžΎαž€αž…αŸ†αž αŸ” Andrey Borodin (Yandex.Cloud)

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

αžαŸ‚! αž€αžΆαžšαžŸαŸ’αž€αŸαž“αž€αŸ†αžŽαžαŸ‹αž αŸαžαž»αž‚αžΊαž‡αžΆαž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαžαŸ„αž€αž˜αž½αž™αž“αŸ…αž›αžΎαž…αž„αŸ’αž€αŸ„αž˜αž˜αž½αž™ αž αžΎαž™αž˜αžΆαž“αžαž˜αŸ’αž›αŸƒαžαŸ’αž›αŸƒαž™αŸ‰αžΆαž„αž˜αž αž“αŸ’αžαžšαžΆαž™αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž…αž„αŸ’αž€αŸ„αž˜αž˜αž½αž™αž–αžΆαž“αŸ‹αŸ”

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

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

αž’αŸ’αžœαžΈ αž“αž·αž„αž˜αžΌαž›αž αŸαžαž»αžŠαŸ‚αž›αž™αžΎαž„αž’αŸ’αžœαžΎαž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž”αŸ’αžšαž—αž–αž”αžΎαž€αž…αŸ†αž αŸ” Andrey Borodin (Yandex.Cloud)

https://www.postgresql.org/message-id/flat/[αž’αŸŠαžΈαž˜αŸ‚αž›αž€αžΆαžšαž–αžΆαžš]

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

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

αž’αŸ’αžœαžΈ αž“αž·αž„αž˜αžΌαž›αž αŸαžαž»αžŠαŸ‚αž›αž™αžΎαž„αž’αŸ’αžœαžΎαž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž”αŸ’αžšαž—αž–αž”αžΎαž€αž…αŸ†αž αŸ” Andrey Borodin (Yandex.Cloud)

https://www.postgresql.org/message-id/flat/[αž’αŸŠαžΈαž˜αŸ‚αž›αž€αžΆαžšαž–αžΆαžš]

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

αž’αŸ’αžœαžΈ αž“αž·αž„αž˜αžΌαž›αž αŸαžαž»αžŠαŸ‚αž›αž™αžΎαž„αž’αŸ’αžœαžΎαž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž”αŸ’αžšαž—αž–αž”αžΎαž€αž…αŸ†αž αŸ” Andrey Borodin (Yandex.Cloud)

https://commitfest.postgresql.org/29/2667/

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

αž™αžΎαž„β€‹αž”αžΆαž“β€‹αžŸαžšαžŸαŸαžšβ€‹αž€αžΌαžŠβ€‹αžŠαŸ‚αž›β€‹αž‚αž½αžšβ€‹αž’αŸ’αžœαžΎβ€‹αžαžΆαž˜β€‹αž‘αžΆαŸ†αž„β€‹αž’αžŸαŸ‹β€‹ can... protocolsαŸ” αž™αžΎαž„αž”αžΆαž“αž–αž·αž—αžΆαž€αŸ’αžŸαžΆαž’αŸ†αž–αžΈαž”αŸ†αžŽαŸ‡αž“αŸαŸ‡αž˜αž½αž™αžšαž™αŸˆαž‡αžΆαž˜αž½αž™ Peter Gaghan αž–αžΈ Crunchy Data αŸ” αž‚αžΆαžαŸ‹αžαŸ’αžšαžΌαžœαž€αŸ‚αž”αŸ’αžšαŸ‚αžŠαžΎαž˜αžˆαžΎ B αžŠαŸ‚αž›αž˜αžΆαž“αžŸαŸ’αžšαžΆαž”αŸ‹αž“αŸ…αž€αŸ’αž“αž»αž„ Postgres αž”αž“αŸ’αžαž·αž… αžŠαžΎαž˜αŸ’αž”αžΈαž‘αž‘αž½αž›αž™αž€αž”αŸ†αžŽαŸ‡αž“αŸαŸ‡αŸ” αž‚αžΆαžαŸ‹αžαŸ’αžšαžΌαžœαž”αžΆαž“αž‘αž‘αž½αž›αž™αž€αŸ” αž αžΎαž™αž₯αž‘αžΌαžœαž“αŸαŸ‡ αž€αžΆαžšαž–αž·αž“αž·αžαŸ’αž™αž˜αžΎαž›αž›αž·αž”αž·αž€αŸ’αžšαž˜αž›αžΎαž€αžΆαžšαž…αž˜αŸ’αž›αž„αž€αŸαž˜αžΆαž“αž”αŸ’αžšαžŸαž·αž‘αŸ’αž’αž—αžΆαž–αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαžΆαž“αŸ‹αžŠαžΎαž˜αŸ’αž”αžΈαžšαž€αž˜αžΎαž›αž€αžΆαžšαž”αŸ†αž–αžΆαž“αžŠαŸ‚αž›αž™αžΎαž„αž”αžΆαž“αž‡αž½αž”αž”αŸ’αžšαž‘αŸ‡αŸ” αž“αŸ„αŸ‡αž‚αžΊαž‘αžΆαŸ†αž„αž“αŸαŸ‡αž‚αžΊαž‡αžΆαž€αžΆαžšαžšαŸ†αž›αŸ„αž—αž”αŸ†αž–αžΆαž“αžŠαŸ‚αž›αž’αžΆαž…αž”αžŽαŸ’αžαžΆαž›αž˜αž€αž–αžΈαž€αŸ†αž αž»αžŸαž“αŸ…αž€αŸ’αž“αž»αž„αž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž”αž„αŸ’αž€αž”αŸ‹αžαžΆαžŸ αž€αŸ†αž αž»αžŸαž“αŸ…αž€αŸ’αž“αž»αž„ Postgres αž€αŸ†αž αž»αžŸαž“αŸ…αž€αŸ’αž“αž»αž„αžαžΊαžŽαŸ‚αž›αž›αžΈαž“αž»αž… αž“αž·αž„αž”αž‰αŸ’αž αžΆαž•αŸ’αž“αŸ‚αž€αžšαžΉαž„αŸ” αž”αž‰αŸ’αž‡αžΈαž™αŸ‰αžΆαž„αž‘αžΌαž›αŸ†αž‘αžΌαž›αžΆαž™αž“αŸƒαž”αŸ’αžšαž—αž–αž“αŸƒαž”αž‰αŸ’αž αžΆαžŠαŸ‚αž›αž™αžΎαž„αž€αŸ†αž–αž»αž„αžšαŸ€αž”αž…αŸ†αŸ”

αž’αŸ’αžœαžΈ αž“αž·αž„αž˜αžΌαž›αž αŸαžαž»αžŠαŸ‚αž›αž™αžΎαž„αž’αŸ’αžœαžΎαž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž”αŸ’αžšαž—αž–αž”αžΎαž€αž…αŸ†αž αŸ” Andrey Borodin (Yandex.Cloud)

https://www.postgresql.org/message-id/flat/38AF687F-8F6B-48B4-AB9E-A60CFD6CC261%40enterprisedb.com#0e86a12c01d967bac04a9bf83cd337cb

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

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

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

αž’αŸ’αžœαžΈ αž“αž·αž„αž˜αžΌαž›αž αŸαžαž»αžŠαŸ‚αž›αž™αžΎαž„αž’αŸ’αžœαžΎαž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž”αŸ’αžšαž—αž–αž”αžΎαž€αž…αŸ†αž αŸ” Andrey Borodin (Yandex.Cloud)

https://www.postgresql.org/message-id/flat/fe9b3722df94f7bdb08768f50ee8fe59%40postgrespro.ru

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

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

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

αž’αŸ’αžœαžΈ αž“αž·αž„αž˜αžΌαž›αž αŸαžαž»αžŠαŸ‚αž›αž™αžΎαž„αž’αŸ’αžœαžΎαž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž”αŸ’αžšαž—αž–αž”αžΎαž€αž…αŸ†αž αŸ” Andrey Borodin (Yandex.Cloud)

https://www.postgresql.org/message-id/flat/fe9b3722df94f7bdb08768f50ee8fe59%40postgrespro.ru

αžŸαž αž‚αž˜αž“αŸβ€‹αž”αžΆαž“β€‹αž†αŸ’αž›αžΎαž™β€‹αžαž”β€‹αžαžΆ "ធូ αž™αžΎαž„β€‹αž–αž·αžβ€‹αž‡αžΆβ€‹αžαŸ’αžšαžΌαžœβ€‹αž€αžΆαžšβ€‹αž‡αž½αžŸαž‡αž»αž›β€‹αžœαžΆ"αŸ”

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

αž’αŸ’αžœαžΈ αž“αž·αž„αž˜αžΌαž›αž αŸαžαž»αžŠαŸ‚αž›αž™αžΎαž„αž’αŸ’αžœαžΎαž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž”αŸ’αžšαž—αž–αž”αžΎαž€αž…αŸ†αž αŸ” Andrey Borodin (Yandex.Cloud)

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

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

αž’αŸ’αžœαžΈ αž“αž·αž„αž˜αžΌαž›αž αŸαžαž»αžŠαŸ‚αž›αž™αžΎαž„αž’αŸ’αžœαžΎαž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž”αŸ’αžšαž—αž–αž”αžΎαž€αž…αŸ†αž αŸ” Andrey Borodin (Yandex.Cloud)

αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž‚αž½αžšαž±αŸ’αž™αž…αžΆαž”αŸ‹αž’αžΆαžšαž˜αŸ’αž˜αžŽαŸαž‚αžΊ Greenplum αŸ” αžœαžΆβ€‹αž‚αžΊβ€‹αž‡αžΆβ€‹αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“β€‹αž‘αž·αž“αŸ’αž“αž“αŸαž™β€‹αžŸαŸ’αžšαž”β€‹αž‚αŸ’αž“αžΆβ€‹αž™αŸ‰αžΆαž„β€‹αžαŸ’αž›αžΆαŸ†αž„β€‹αžŠαŸ‚αž›β€‹αž•αŸ’αž’αŸ‚αž€β€‹αž›αžΎβ€‹αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“β€‹αž€αžΌαžŠ Postgres αžŠαŸ‚αž›β€‹αžαŸ’αž‰αž»αŸ†β€‹αžŸαŸ’αž‚αžΆαž›αŸ‹β€‹αž™αŸ‰αžΆαž„β€‹αžαŸ’αž›αžΆαŸ†αž„αŸ”

αž’αŸ’αžœαžΈ αž“αž·αž„αž˜αžΌαž›αž αŸαžαž»αžŠαŸ‚αž›αž™αžΎαž„αž’αŸ’αžœαžΎαž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž”αŸ’αžšαž—αž–αž”αžΎαž€αž…αŸ†αž αŸ” Andrey Borodin (Yandex.Cloud)

https://greenplum.org/greenplum-database-tables-compression/

αž αžΎαž™ Greenplum αž˜αžΆαž“αž˜αž»αžαž„αžΆαžšαž‚αž½αžšαž±αŸ’αž™αž…αžΆαž”αŸ‹αž’αžΆαžšαž˜αŸ’αž˜αžŽαŸ - αž”αž“αŸ’αžαŸ‚αž˜αžαžΆαžšαžΆαž„αžŠαŸ‚αž›αž”αŸ’αžšαžŸαžΎαžšαž‘αžΎαž„αŸ” αž‘αžΆαŸ†αž„αž“αŸαŸ‡αž‚αžΊαž‡αžΆαžαžΆαžšαžΆαž„αžŠαŸ‚αž›αž’αŸ’αž“αž€αž’αžΆαž…αž”αž“αŸ’αžαŸ‚αž˜αž”αžΆαž“αž™αŸ‰αžΆαž„αž†αžΆαž”αŸ‹αžšαž αŸαžŸαŸ” αž–αž½αž€αžœαžΆαž’αžΆαž…αž‡αžΆαž‡αž½αžšαžˆαžšαž¬αž‡αž½αžšαžŠαŸαž€αŸ”

αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž˜αž·αž“αž˜αžΆαž“αž€αžΆαžšαž…αž„αŸ’αž€αŸ„αž˜αž‘αŸ αž–αŸ„αž›αž‚αžΊαž˜αž·αž“αž˜αžΆαž“αž˜αž»αžαž„αžΆαžšαžŠαŸ‚αž›αž’αŸ’αž“αž€αž’αžΆαž…αžšαŸ€αž”αž…αŸ†αž‘αž·αž“αŸ’αž“αž“αŸαž™αžŠαŸ‚αž›αž˜αžΆαž“αž‘αžΈαžαžΆαŸ†αž„αž€αŸ’αž“αž»αž„αžαžΆαžšαžΆαž„αžŸαŸ’αžšαž”αžαžΆαž˜αž›αŸ†αžŠαžΆαž”αŸ‹αžŠαŸ‚αž›αž˜αžΆαž“αž“αŸ…αž€αŸ’αž“αž»αž„αžŸαž“αŸ’αž‘αžŸαŸ’αžŸαž“αŸαž˜αž½αž™αŸ”

αž”αž»αžšαžŸβ€‹αž‡αž·αŸ‡β€‹αžαžΆαž€αŸ‹αžŸαŸŠαžΈβ€‹αž˜αž€β€‹αžšαž€β€‹αžαŸ’αž‰αž»αŸ† αž αžΎαž™β€‹αž“αž·αž™αžΆαž™β€‹αžαžΆ αŸ– Β« Andrey αž’αŸ’αž“αž€β€‹αžŸαŸ’αž‚αžΆαž›αŸ‹ Postgres αŸ” αž αžΎαž™αž“αŸ…αž‘αžΈαž“αŸαŸ‡αžœαžΆαžŸαŸ’αž‘αžΎαžšαžαŸ‚αžŠαžΌαž…αž‚αŸ’αž“αžΆαŸ” αž”αŸ’αžαžΌαžšαž‘αŸ… 20 αž“αžΆαž‘αžΈαŸ” αž’αŸ’αž“αž€αž™αž€αžœαžΆαž αžΎαž™αž’αŸ’αžœαžΎαžœαžΆαŸ” αžαŸ’αž‰αž»αŸ†αž‚αž·αžαžαžΆ αž”αžΆαž‘ αžαŸ’αž‰αž»αŸ†αžŸαŸ’αž‚αžΆαž›αŸ‹ Postgres αžŠαŸ„αž™αž”αŸ’αžαžΌαžšαžšαž™αŸˆαž–αŸαž› 20 αž“αžΆαž‘αžΈ - αžαŸ’αž‰αž»αŸ†αžαŸ’αžšαžΌαžœαž’αŸ’αžœαžΎαžšαžΏαž„αž“αŸαŸ‡αŸ”

αž’αŸ’αžœαžΈ αž“αž·αž„αž˜αžΌαž›αž αŸαžαž»αžŠαŸ‚αž›αž™αžΎαž„αž’αŸ’αžœαžΎαž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž”αŸ’αžšαž—αž–αž”αžΎαž€αž…αŸ†αž αŸ” Andrey Borodin (Yandex.Cloud)

https://github.com/greenplum-db/gpdb/commit/179feb77a034c2547021d675082aae0911be40f7

αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž˜αž·αž“αž˜αŸ‚αž“ 20 αž“αžΆαž‘αžΈαž‘αŸ αžαŸ’αž‰αž»αŸ†αžŸαžšαžŸαŸαžšαžœαžΆαž…αŸ’αžšαžΎαž“αžαŸ‚αŸ” αž“αŸ…αž€αŸ’αž“αž»αž„αžŸαž“αŸ’αž“αž·αžŸαž·αž‘ PgConf.Russia αžαŸ’αž‰αž»αŸ†αž”αžΆαž“αž‘αŸ…αž‡αž½αž” Heikki Linakangas αž–αžΈ Pivotal αž αžΎαž™αž”αžΆαž“αžŸαž½αžšαžαžΆ β€œαžαžΎαž˜αžΆαž“αž”αž‰αŸ’αž αžΆαž‡αžΆαž˜αž½αž™αž“αŸαŸ‡αž‘αŸ? αž αŸαžαž»β€‹αž’αŸ’αžœαžΈβ€‹αž”αžΆαž“β€‹αž‡αžΆβ€‹αž˜αž·αž“β€‹αž˜αžΆαž“β€‹αž§αž”αžŸαž˜αŸ’αž–αŸαž“αŸ’αž’β€‹αžαžΆαžšαžΆαž„β€‹αžŠαŸ‚αž›β€‹αž”αžΆαž“β€‹αž’αŸ’αžœαžΎβ€‹αž±αŸ’αž™β€‹αž”αŸ’αžšαžŸαžΎαžšβ€‹αž‘αžΎαž„β€‹? αž‚αžΆαžαŸ‹αž“αž·αž™αžΆαž™αžαžΆβ€œ αž’αŸ’αž“αž€αž™αž€αž‘αž·αž“αŸ’αž“αž“αŸαž™αŸ” αž’αŸ’αž“αž€αžαž˜αŸ’αžšαŸ€αž” αž’αŸ’αž“αž€αžšαŸ€αž”αž…αŸ†αž‘αžΎαž„αžœαž·αž‰αŸ” αžœαžΆβ€‹αž‚αŸ’αžšαžΆαž“αŸ‹β€‹αžαŸ‚β€‹αž‡αžΆβ€‹αž€αžΆαžšαž„αžΆαžšΒ»αŸ” αžαŸ’αž‰αž»αŸ†αŸ– "ធូ αž”αžΆαž‘ αž’αŸ’αž“αž€αž‚αŸ’αžšαžΆαž“αŸ‹αžαŸ‚αžαŸ’αžšαžΌαžœαž€αžΆαžšαžœαžΆ αž αžΎαž™αž’αŸ’αžœαžΎαžœαžΆ" αŸ” αž‚αžΆαžαŸ‹β€‹αž“αž·αž™αžΆαž™β€‹αžαžΆβ€‹αŸ– β€‹Β«β€‹αž”αžΆαž‘ αž™αžΎαž„β€‹αžαŸ’αžšαžΌαžœβ€‹αž€αžΆαžšβ€‹αžŠαŸƒβ€‹αž‘αŸ†αž“αŸαžšβ€‹αžŠαžΎαž˜αŸ’αž”αžΈβ€‹αž’αŸ’αžœαžΎβ€‹αž€αž·αž…αŸ’αž…αž€αžΆαžšβ€‹αž“αŸαŸ‡β€‹Β»αŸ” αžαŸ’αž‰αž»αŸ†β€‹αž‚αž·αžβ€‹αžαžΆβ€‹αžαŸ’αž‰αž»αŸ†β€‹αž…αŸ’αž”αžΆαžŸαŸ‹β€‹αž‡αžΆβ€‹αžαŸ’αžšαžΌαžœβ€‹αž’αŸ’αžœαžΎβ€‹αžšαžΏαž„β€‹αž“αŸαŸ‡αŸ”

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

αž’αŸ’αžœαžΈ αž“αž·αž„αž˜αžΌαž›αž αŸαžαž»αžŠαŸ‚αž›αž™αžΎαž„αž’αŸ’αžœαžΎαž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž”αŸ’αžšαž—αž–αž”αžΎαž€αž…αŸ†αž αŸ” Andrey Borodin (Yandex.Cloud)

https://github.com/greenplum-db/gpdb/issues/10150

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

αž’αŸ’αžœαžΈ αž“αž·αž„αž˜αžΌαž›αž αŸαžαž»αžŠαŸ‚αž›αž™αžΎαž„αž’αŸ’αžœαžΎαž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž”αŸ’αžšαž—αž–αž”αžΎαž€αž…αŸ†αž αŸ” Andrey Borodin (Yandex.Cloud)

https://github.com/greenplum-db/gpdb/pull/10290

αžαŸ’αž‰αž»αŸ†αž”αžΆαž“αž‡αž½αžŸαž‡αž»αž›αž€αŸ†αž αž»αžŸαž“αŸαŸ‡αŸ” αž”αžΆαž“αž•αŸ’αž‰αžΎαžŸαŸ†αžŽαžΎαž‘αžΆαž‰αž‘αŸ…αž€αžΆαž“αŸ‹αž’αŸ’αž“αž€αž‡αž½αžŸαž‡αž»αž›αŸ” αž‚αžΆαžαŸ‹αžαŸ’αžšαžΌαžœαž”αžΆαž“αž‚αŸαžŸαž˜αŸ’αž›αžΆαž”αŸ‹αŸ”

αž’αŸ’αžœαžΈ αž“αž·αž„αž˜αžΌαž›αž αŸαžαž»αžŠαŸ‚αž›αž™αžΎαž„αž’αŸ’αžœαžΎαž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž”αŸ’αžšαž—αž–αž”αžΎαž€αž…αŸ†αž αŸ” Andrey Borodin (Yandex.Cloud)

https://github.com/greenplum-db/gpdb-postgres-merge/pull/53

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

αž’αŸ’αžœαžΈ αž“αž·αž„αž˜αžΌαž›αž αŸαžαž»αžŠαŸ‚αž›αž™αžΎαž„αž’αŸ’αžœαžΎαž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž”αŸ’αžšαž—αž–αž”αžΎαž€αž…αŸ†αž αŸ” Andrey Borodin (Yandex.Cloud)

https://github.com/greenplum-db/gpdb/pull/10565

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

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

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

αž’αŸ’αžœαžΈ αž“αž·αž„αž˜αžΌαž›αž αŸαžαž»αžŠαŸ‚αž›αž™αžΎαž„αž’αŸ’αžœαžΎαž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž”αŸ’αžšαž—αž–αž”αžΎαž€αž…αŸ†αž αŸ” Andrey Borodin (Yandex.Cloud)

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

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

αž’αžŸαŸ‹αž αžΎαž™αŸ” αž…αžΌαžšαž™αžΎαž„αž”αž“αŸ’αžαž‘αŸ…αžŸαŸ†αžŽαž½αžšαŸ”

αž’αŸ’αžœαžΈ αž“αž·αž„αž˜αžΌαž›αž αŸαžαž»αžŠαŸ‚αž›αž™αžΎαž„αž’αŸ’αžœαžΎαž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž”αŸ’αžšαž—αž–αž”αžΎαž€αž…αŸ†αž αŸ” Andrey Borodin (Yandex.Cloud)

αžœαž‚αŸ’αž‚αžŸαŸ†αžŽαž½αžš

αžŸαž½αžŸαŸ’αžαžΈ! αž™αžΎαž„αž˜αžΆαž“αžœαž‚αŸ’αž‚αžŸαŸ†αžŽαž½αžš αž“αž·αž„αž…αž˜αŸ’αž›αžΎαž™αž˜αž½αž™αž‘αŸ€αžαŸ” αž αžΎαž™αž“αŸ…αž€αŸ’αž“αž»αž„αžŸαŸ’αž‘αžΌαžŒαžΈαž™αŸ„ Andrei Borodin αŸ” αž“αŸαŸ‡αž‚αžΊαž‡αžΆαž˜αž“αž»αžŸαŸ’αžŸαžŠαŸ‚αž›αž‘αžΎαž”αžαŸ‚αž”αŸ’αžšαžΆαž”αŸ‹αž’αŸ’αž“αž€αž’αŸ†αž–αžΈαž€αžΆαžšαžšαž½αž˜αž…αŸ†αžŽαŸ‚αž€αžšαž”αžŸαŸ‹ Yandex.Cloud αž“αž·αž„ Yandex αž‘αŸ…αž€αžΆαž“αŸ‹αž”αŸ’αžšαž—αž–αž”αžΎαž€αž…αŸ†αž αŸ” αžšαž”αžΆαž™αž€αžΆαžšαžŽαŸαžšαž”αžŸαŸ‹αž™αžΎαž„αž₯αž‘αžΌαžœαž“αŸαŸ‡αž‚αžΊαž˜αž·αž“αž˜αŸ‚αž“αž‘αžΆαŸ†αž„αžŸαŸ’αžšαž»αž„αž’αŸ†αž–αžΈ Cloud αž‘αŸ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž“αŸ…αž–αŸαž›αž‡αžΆαž˜αž½αž™αž‚αŸ’αž“αžΆαž“αŸαŸ‡αžŠαŸ‚αžš αž™αžΎαž„αž•αŸ’αž’αŸ‚αž€αž›αžΎαž”αž…αŸ’αž…αŸαž€αžœαž·αž‘αŸ’αž™αžΆαž”αŸ‚αž”αž“αŸαŸ‡αŸ” αž”αžΎαž‚αŸ’αž˜αžΆαž“αž’αŸ’αžœαžΈαžŠαŸ‚αž›αž’αŸ’αž“αž€αž”αžΆαž“αž’αŸ’αžœαžΎαž“αŸ…αž€αŸ’αž“αž»αž„ Yandex αž“αŸ„αŸ‡αžœαžΆαž“αžΉαž„αž˜αž·αž“αž˜αžΆαž“αžŸαŸαžœαžΆαž€αž˜αŸ’αž˜αž“αŸ…αž€αŸ’αž“αž»αž„ Yandex.Cloud αž‘αŸ αžŠαžΌαž…αŸ’αž“αŸαŸ‡αžŸαžΌαž˜αž’αžšαž‚αž»αžŽαž–αžΈαžαŸ’αž‰αž»αŸ†αž•αŸ’αž‘αžΆαž›αŸ‹αŸ” αž αžΎαž™αžŸαŸ†αžŽαž½αžšαžŠαŸ†αž”αžΌαž„αž–αžΈαž€αžΆαžšαž•αŸ’αžŸαžΆαž™αŸ– "αžαžΎαž‚αž˜αŸ’αžšαŸ„αž„αž“αžΈαž˜αž½αž™αŸ—αžŠαŸ‚αž›αž’αŸ’αž“αž€αž”αžΆαž“αž›αžΎαž€αž‘αžΎαž„αž“αŸ„αŸ‡αžŸαžšαžŸαŸαžšαž›αžΎαž’αŸ’αžœαžΈ?"

αž”αŸ’αžšαž–αŸαž“αŸ’αž’αž”αž˜αŸ’αžšαž»αž„αž‘αž»αž€αž“αŸ…αž€αŸ’αž“αž»αž„ WAL-G αžαŸ’αžšαžΌαžœαž”αžΆαž“αžŸαžšαžŸαŸαžšαž“αŸ…αž€αŸ’αž“αž»αž„ Go αŸ” αž“αŸαŸ‡β€‹αž‡αžΆβ€‹αž‚αž˜αŸ’αžšαŸ„αž„β€‹αžαŸ’αž˜αžΈβ€‹αž˜αž½αž™β€‹αž€αŸ’αž“αž»αž„β€‹αž…αŸ†αžŽαŸ„αž˜β€‹αž‚αž˜αŸ’αžšαŸ„αž„β€‹αžαŸ’αž˜αžΈβ€‹αž‡αžΆαž„β€‹αž“αŸαŸ‡β€‹αžŠαŸ‚αž›β€‹αž™αžΎαž„β€‹αž”αžΆαž“β€‹αž’αŸ’αžœαžΎαŸ” αž‚αžΆαžαŸ‹αž˜αžΆαž“αž’αžΆαž™αž»αžαŸ’αžšαžΉαž˜αžαŸ‚ 3 αž†αŸ’αž“αžΆαŸ†αž”αŸ‰αž»αžŽαŸ’αžŽαŸ„αŸ‡αŸ” αž αžΎαž™αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž‡αžΆαžšαžΏαž™αŸ—αž“αž·αž™αžΆαž™αž’αŸ†αž–αžΈαž—αžΆαž–αž’αžΆαž…αž‡αžΏαž‡αžΆαž€αŸ‹αž”αžΆαž“αŸ” αž αžΎαž™αž“αŸαŸ‡αž˜αžΆαž“αž“αŸαž™αžαžΆ αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž‚αžΊαž…αžΆαžŸαŸ‹αžŽαžΆαžŸαŸ‹ αž αžΎαž™αž‡αžΆαž’αž˜αŸ’αž˜αžαžΆαžœαžΆαžαŸ’αžšαžΌαžœαž”αžΆαž“αžŸαžšαžŸαŸαžšαž“αŸ…αž€αŸ’αž“αž»αž„ C. αž‚αž˜αŸ’αžšαŸ„αž„ Postgres αž”αžΆαž“αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αž”αŸ’αžšαž αŸ‚αž› 30 αž†αŸ’αž“αžΆαŸ†αž˜αž»αž“αŸ” αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž˜αž€ C89 αž‚αžΊαž‡αžΆαž‡αž˜αŸ’αžšαžΎαžŸαžŠαŸαžαŸ’αžšαžΉαž˜αžαŸ’αžšαžΌαžœαŸ” αž αžΎαž™ Postgres αžαŸ’αžšαžΌαžœαž”αžΆαž“αžŸαžšαžŸαŸαžšαž“αŸ…αž›αžΎαžœαžΆαŸ” αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž‘αŸ†αž“αžΎαž”αž‡αžΆαž…αŸ’αžšαžΎαž“αž‘αŸ€αžαžŠαžΌαž…αž‡αžΆ ClickHouse αž‡αžΆαž’αž˜αŸ’αž˜αžαžΆαžαŸ’αžšαžΌαžœαž”αžΆαž“αžŸαžšαžŸαŸαžšαž“αŸ…αž€αŸ’αž“αž»αž„ C++ αŸ” αž€αžΆαžšαž’αž—αž·αžœαžŒαŸ’αžαž“αŸαž”αŸ’αžšαž–αŸαž“αŸ’αž’αž‘αžΆαŸ†αž„αž’αžŸαŸ‹αž‚αžΊαž•αŸ’αž’αŸ‚αž€αž›αžΎ C αž“αž·αž„ C ++ αŸ”

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

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

αžŸαŸ†αžŽαž½αžšαž˜αž½αž™αž‘αŸ€αžαŸ– "αžαžΎαžαž˜αŸ’αžšαžΌαžœαž€αžΆαžšαžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αžαžΆαž„αž€αŸ’αžšαŸ…αžŠαŸ‚αž›αžšαžŸαŸ‹αž“αŸ…αž€αŸ’αž“αž»αž„ Yandex.Cloud αžαž»αžŸαž–αžΈαž’αŸ’αž“αž€αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αžαžΆαž„αž€αŸ’αž“αž»αž„αžŠαŸ‚αž›αžšαžŸαŸ‹αž“αŸ…αž€αŸ’αž“αž»αž„ Cloud αžαžΆαž„αž€αŸ’αž“αž»αž„αž¬?"

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

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

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

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

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

αžαžΎαž’αŸ’αž“αž€αž“αž·αž™αžΆαž™αžαžΆαž‚αŸ’αž˜αžΆαž“αž’αŸ’αž“αž€αžšαžαŸ‹αž“αŸ… ClickHouse αž‘αŸ?

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

αžŸαŸ†αžŽαž½αžšαž˜αž½αž™αž‘αŸ€αžαž–αžΈαž€αžΆαžšαž•αŸ’αžŸαžΆαž™αž–αžΈ Nikita: "αž αŸαžαž»αž’αŸ’αžœαžΈαž”αžΆαž“αž‡αžΆαž’αŸ’αž“αž€αž‡αž½αžŸαž‡αž»αž›αž€αŸ†αž αž»αžŸαž“αŸ…αž€αŸ’αž“αž»αž„ Greenplum αžŠαŸ„αž™αžαŸ’αž›αž½αž“αž―αž„αž αžΎαž™αž˜αž·αž“αž•αŸ’αžαž›αŸ‹αž±αŸ’αž™αžœαžΆαžŠαž›αŸ‹αž™αž»αžœαž‡αž“?" αž–αž·αžαž αžΎαž™ αžœαžΆαž˜αž·αž“αž…αŸ’αž”αžΆαžŸαŸ‹αž‘αŸαžαžΆαž’αŸ’αžœαžΈαž‡αžΆαž€αŸ†αž αž»αžŸ αž“αž·αž„αž“αŸ…αž€αŸ’αž“αž»αž„αžŸαŸαžœαžΆαž€αž˜αŸ’αž˜αž˜αž½αž™αžŽαžΆ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αžœαžΆαž”αŸ’αžšαž αŸ‚αž›αž‡αžΆαž˜αžΆαž“αž“αŸαž™αžαžΆαž‡αžΆαž€αŸ†αž αž»αžŸαžŠαŸ‚αž›αž’αŸ’αž“αž€αž”αžΆαž“αž“αž·αž™αžΆαž™αŸ”

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

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

αž“αŸαŸ‡αž‚αžΊαž‡αžΆαžŸαŸ†αžŽαž½αžšαž‚αž½αžšαž±αŸ’αž™αž…αžΆαž”αŸ‹αž’αžΆαžšαž˜αŸ’αž˜αžŽαŸαž˜αž½αž™: "αž€αž“αŸ’αž›αŸ‚αž„αžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜?" αž‡αžΆαž’αž˜αŸ’αž˜αžαžΆαžœαžΆαž–αž·αž”αžΆαž€αžŽαžΆαžŸαŸ‹αž€αŸ’αž“αž»αž„αž€αžΆαžšαž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αž‡αžΆαž˜αž½αž™αž’αŸ’αžœαžΈαž˜αž½αž™αž“αŸ…αž€αŸ’αž“αž»αž„αžαžΊαžŽαŸ‚αž›αŸ” αž‡αžΆαž§αž‘αžΆαž αžšαžŽαŸ αž“αŸ…αž€αŸ’αž“αž»αž„ Postgres αž˜αžΆαž“αž”αž‰αŸ’αž‡αžΈαžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž’αŸ’αžœαžΎαŸ” αž”αŸ‰αž»αž“αŸ’αžαŸ‚β€‹αžαžΆαž˜β€‹αž–αž·αž αž“αŸαŸ‡β€‹αž‡αžΆβ€‹αžŸαž“αŸ’αž›αžΉαž€β€‹αž“αŸƒβ€‹αž’αŸ’αžœαžΈβ€‹αžŠαŸ‚αž›β€‹αž‚αŸβ€‹αž–αŸ’αž™αžΆαž™αžΆαž˜β€‹αž’αŸ’αžœαžΎβ€‹αžαŸ‚β€‹αž˜αž·αž“β€‹αž”αžΆαž“β€‹αž‡αŸ„αž‚αž‡αŸαž™αŸ” αž‘αžΆαŸ†αž„αž“αŸαŸ‡αž‚αžΊαž‡αžΆαžšαžΏαž„αžŸαŸ’αž˜αž»αž‚αžŸαŸ’αž˜αžΆαž‰αŸ” αž αžΎαž™αž‡αžΆαž’αž˜αŸ’αž˜αžαžΆαž’αŸ’αž“αž€αž’αžΆαž…αžšαž€αžƒαžΎαž‰αž§αž”αž€αžšαžŽαŸαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž˜αž½αž™αž…αŸ†αž“αž½αž“αž“αŸ…αž€αŸ’αž“αž»αž„αž”αŸ’αžšαž–αŸαž“αŸ’αž’αž’αŸαž€αžΌ αž•αŸ’αž“αŸ‚αž€αž”αž“αŸ’αžαŸ‚αž˜αž˜αž½αž™αž…αŸ†αž“αž½αž“αžŠαŸ‚αž›αž’αžΆαž…αžαŸ’αžšαžΌαžœαž”αžΆαž“αž€αŸ‚αž›αž˜αŸ’αž’ αžŠαŸ‚αž›αž‘αžΆαž€αŸ‹αž‘αžΆαž‰αž€αžΆαžšαž™αž€αž…αž·αžαŸ’αžαž‘αž»αž€αžŠαžΆαž€αŸ‹αžαž·αž…αž–αžΈαž’αŸ’αž“αž€αž’αž—αž·αžœαžŒαŸ’αžαž“αŸαžαžΊαžŽαŸ‚αž›αŸ” αž αžΎαž™αžαžΆαž˜αž“αŸ„αŸ‡ αž˜αžΆαž“αž…αŸ†αžŽαž»αž…αž‡αžΆαž…αŸ’αžšαžΎαž“αž‘αŸ€αžαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αŸ†αžŽαžΎαž“αž“αŸ…αž‘αžΈαž“αŸ„αŸ‡αŸ” αž“αŸ…αž―αž€αž˜αŸ’αž˜αžœαž·αž’αžΈ Google Summer of code αž‡αžΆαžšαŸ€αž„αžšαžΆαž›αŸ‹αž†αŸ’αž“αžΆαŸ†αžŸαž αž‚αž˜αž“αŸ postgres αž”αž„αŸ’αž αžΆαž‰αž”αŸ’αžšαž’αžΆαž“αž”αž‘αž•αŸ’αžŸαŸαž„αŸ—αž‚αŸ’αž“αžΆαž‡αžΆαž…αŸ’αžšαžΎαž“αžŠαŸ‚αž›αž’αžΆαž…αžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž”αžΆαž“αŸ” αžαŸ’αž‰αž»αŸ†αž‚αž·αžαžαžΆαž†αŸ’αž“αžΆαŸ†αž“αŸαŸ‡αž™αžΎαž„αž˜αžΆαž“αžŸαž·αžŸαŸ’αžŸαž”αžΈαž“αžΆαž€αŸ‹αŸ” αž˜αž“αž»αžŸαŸ’αžŸαž˜αŸ’αž“αžΆαž€αŸ‹αžαŸ‚αž˜αž‘αžΆαŸ†αž„αž”αžΆαž“αžŸαžšαžŸαŸαžšαž“αŸ…αž€αŸ’αž“αž»αž„ WAL-G αž›αžΎαž”αŸ’αžšαž’αžΆαž“αž”αž‘αžŠαŸ‚αž›αž˜αžΆαž“αžŸαžΆαžšαŸˆαžŸαŸ†αžαžΆαž“αŸ‹αžŸαž˜αŸ’αžšαžΆαž”αŸ‹ Yandex αŸ” αž“αŸ…αž€αŸ’αž“αž»αž„ Greenplum αž’αŸ’αžœαžΈαž‚αŸ’αžšαž”αŸ‹αž™αŸ‰αžΆαž„αž‚αžΊαžŸαžΆαž˜αž‰αŸ’αž‰αž‡αžΆαž„αž“αŸ…αž€αŸ’αž“αž»αž„αžŸαž αž‚αž˜αž“αŸ Postgres αž–αžΈαž–αŸ’αžšαŸ„αŸ‡αž–αž½αž€ Hacker Greenplum αž–αŸ’αž™αžΆαž”αžΆαž›αžŸαŸ†αžŽαžΎαžšαž‘αžΆαž‰αž”αžΆαž“αž™αŸ‰αžΆαž„αž›αŸ’αž’ αž αžΎαž™αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αž–αž·αž“αž·αžαŸ’αž™αž˜αžΎαž›αž—αŸ’αž›αžΆαž˜αŸ—αŸ” αž€αžΆαžšαž•αŸ’αž‰αžΎαž”αŸ†αžŽαŸ‡αž‘αŸ… Postgres αž‚αžΊαž‡αžΆαž”αž‰αŸ’αž αžΆαž‡αžΆαž…αŸ’αžšαžΎαž“αžαŸ‚ αž”αŸ‰αž»αž“αŸ’αžαŸ‚ Greenplum αž“αžΉαž„αž˜αž€αž€αŸ’αž“αž»αž„αž˜αž½αž™αžαŸ’αž„αŸƒ αž αžΎαž™αž˜αžΎαž›αž’αŸ’αžœαžΈαžŠαŸ‚αž›αž’αŸ’αž“αž€αž”αžΆαž“αž’αŸ’αžœαžΎαŸ” αžšαžΏαž„αž˜αž½αž™αž‘αŸ€αžαž‚αžΊαžαžΆ Greenplum αžαŸ’αžšαžΌαžœαž€αžΆαžšαžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž”αž‰αŸ’αž αžΆαž”αž…αŸ’αž…αž»αž”αŸ’αž”αž“αŸ’αž“αŸ” Greenplum αž˜αž·αž“αžαŸ’αžšαžΌαžœαž”αžΆαž“αž‚αŸαž”αŸ’αžšαžΎαž™αŸ‰αžΆαž„αž‘αžΌαž›αŸ†αž‘αžΌαž›αžΆαž™αž‘αŸ αžŠαžΌαž…αŸ’αž“αŸαŸ‡αž€αžΆαžšαžŸαŸ’αžœαŸ‚αž„αžšαž€αž”αž‰αŸ’αž αžΆαžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αž‚αžΊαž–αž·αž”αžΆαž€αžŽαžΆαžŸαŸ‹αŸ” αž αžΎαž™αž‡αžΆαžŠαŸ†αž”αžΌαž„ αž™αžΎαž„αžαŸ’αžšαžΌαžœαžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž”αž‰αŸ’αž αžΆαŸ”

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