เบชเบดเปˆเบ‡เบ—เบตเปˆเปเบฅเบฐเป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบฎเบฑเบ”เปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™ Open Source. Andrey Borodin (Yandex.Cloud)

เบชเบดเปˆเบ‡เบ—เบตเปˆเปเบฅเบฐเป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบฎเบฑเบ”เปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™ Open Source. Andrey Borodin (Yandex.Cloud)

เบเบฒเบ™เบ›เบฐเบเบญเบšเบชเปˆเบงเบ™เบ‚เบญเบ‡ Yandex เบเบฑเบšเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบ•เปเปˆเป„เบ›เบ™เบตเป‰เบˆเบฐเบ–เบทเบเบ—เบปเบšเบ—เบงเบ™เบ„เบทเบ™.

  • เบเบปเบ”เบ›เบธเปˆเบก
  • Odyssey
  • เบเบฒเบ™โ€‹เบŸเบทเป‰เบ™โ€‹เบ•เบปเบงโ€‹เป€เบ–เบดเบ‡โ€‹เบˆเบธเบ”โ€‹เปƒเบ™โ€‹เป€เบงโ€‹เบฅเบฒ (WAL-Gโ€‹)
  • PostgreSQL (เบฅเบงเบกเบ—เบฑเบ‡ logerrors, Amcheck, heapcheck)
  • เบชเบตเบ‚เบฝเบงเบžเบธเปˆเบก

เบงเบดเบ”เบตเป‚เบญ:

เบชเบฐโ€‹เบšเบฒเบโ€‹เบ”เบตโ€‹เบŠเบฒเบงโ€‹เป‚เบฅเบ! เบ‚เป‰เบญเบเบŠเบทเปˆ Andrey Borodin. เปเบฅเบฐเบชเบดเปˆเบ‡เบ—เบตเปˆเบ‚เป‰เบญเบเป€เบฎเบฑเบ”เบขเบนเปˆ Yandex.Cloud เปเบกเปˆเบ™เบเบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบ„เบงเบฒเบกเบชเปเบฒเบžเบฑเบ™เบ—เบตเปˆเป€เบ›เบตเบ”เบขเบนเปˆเปƒเบ™เบœเบปเบ™เบ›เบฐเป‚เบซเบเบ”เบ‚เบญเบ‡เบฅเบนเบเบ„เป‰เบฒ Yandex.Cloud เปเบฅเบฐ Yandex.Cloud.

เบชเบดเปˆเบ‡เบ—เบตเปˆเปเบฅเบฐเป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบฎเบฑเบ”เปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™ Open Source. Andrey Borodin (Yandex.Cloud)

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

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

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

เบชเบดเปˆเบ‡เบ—เบตเปˆเปเบฅเบฐเป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบฎเบฑเบ”เปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™ Open Source. Andrey Borodin (Yandex.Cloud)

เบกเบตเบงเบดเบ—เบตเบเบฒเบ™เปƒเบ”เปเบ”เปˆเปƒเบ™เบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบเปˆเบฝเบงเบเบฑเบšเบŠเบญเบšเปเบงเปเบซเบผเปˆเบ‡เป€เบ›เบตเบ”?

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

เบชเบดเปˆเบ‡เบ—เบตเปˆเปเบฅเบฐเป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบฎเบฑเบ”เปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™ Open Source. Andrey Borodin (Yandex.Cloud)

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

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

เบชเบดเปˆเบ‡เบ—เบตเปˆเปเบฅเบฐเป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบฎเบฑเบ”เปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™ Open Source. Andrey Borodin (Yandex.Cloud)

เปƒเบ™ Yandex.Cloud, เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบชเป‰เบฒเบ‡ ClickHouse เบขเบนเปˆเป€เบ—เบดเบ‡เบชเบธเบ”เบ‚เบญเบ‡ Yandex Object Storage, i.e. เบขเบนเปˆเป€เบ—เบดเบ‡เบชเบธเบ”เบ‚เบญเบ‡เบเบฒเบ™เป€เบเบฑเบšเบฎเบฑเบเบชเบฒเบŸเบฑเบ‡.

เบชเบดเปˆเบ‡เบ—เบตเปˆเปเบฅเบฐเป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบฎเบฑเบ”เปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™ Open Source. Andrey Borodin (Yandex.Cloud)

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

เบชเบดเปˆเบ‡เบ—เบตเปˆเปเบฅเบฐเป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบฎเบฑเบ”เปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™ Open Source. Andrey Borodin (Yandex.Cloud)

เบกเบฑเบ™เบชเบฒเบกเบฒเบ”เป€เบฎเบฑเบ”เป„เบ”เป‰เปเบ™เบงเปƒเบ”? เบ™เบตเป‰เปเบกเปˆเบ™เบˆเบธเบ”เบชเปเบฒเบ„เบฑเบ™เปƒเบ™เบšเบปเบ”เบฅเบฒเบเบ‡เบฒเบ™เบ™เบตเป‰.

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

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

เบชเบดเปˆเบ‡เบ—เบตเปˆเปเบฅเบฐเป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบฎเบฑเบ”เปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™ Open Source. Andrey Borodin (Yandex.Cloud)

เป€เบญเบเบฐเบชเบฒเบ™เบญเป‰เบฒเบ‡เบญเบตเบ‡:

https://github.com/ClickHouse/ClickHouse/pull/7946 "เบŠเบฑเป‰เบ™ abstraction เบ‚เบญเบ‡เบฅเบฐเบšเบปเบšเป„เบŸเบฅเปŒ"
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 "เบชเบฐโ€‹เบซเบ™เบฑเบšโ€‹เบชเบฐโ€‹เบซเบ™เบนเบ™ ReplicatedMergeTree เปƒเบ™โ€‹เป„เบฅโ€‹เบเบฐ 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 เบเบฑเบšเบ•เบปเบงเปเบเป‰เป„เบ‚เบ•เบปเบงเปเบ—เบ™"

เบ™เบตเป‰เปเบกเปˆเบ™เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆเบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเบ”เบถเบ‡เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบฅเบฐเบšเบปเบšเป„เบŸเบฅเปŒ virtual เปƒเบ™ ClickHouse. เบ™เบตเป‰เปเบกเปˆเบ™เบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเบ”เบถเบ‡เบˆเปเบฒเบ™เบงเบ™เบซเบฅเบฒเบ.

เบชเบดเปˆเบ‡เบ—เบตเปˆเปเบฅเบฐเป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบฎเบฑเบ”เปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™ Open Source. Andrey Borodin (Yandex.Cloud)

เป€เบญเบเบฐเบชเบฒเบ™เบญเป‰เบฒเบ‡เบญเบตเบ‡:

https://github.com/ClickHouse/ClickHouse/pull/9760 "เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ—เบตเปˆเบ”เบตเบ—เบตเปˆเบชเบธเบ”เบ‚เบญเบ‡ Hardlinks 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 "เบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เปƒเบ™เบเบฒเบ™ cache mark เปเบฅเบฐเบ”เบฑเบ”เบชเบฐเบ™เบตเป„เบŸเบฅเปŒเบชเปเบฒเบฅเบฑเบš S3 disk"
https://github.com/ClickHouse/ClickHouse/pull/13459 "เบเป‰เบฒเบเบžเบฒเบเบชเปˆเบงเบ™เบˆเบฒเบ DiskLocal เป„เบ› DiskS3 เปƒเบ™เบ‚เบฐเบซเบ™เบฒเบ™"

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

เบชเบดเปˆเบ‡เบ—เบตเปˆเปเบฅเบฐเป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบฎเบฑเบ”เปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™ Open Source. Andrey Borodin (Yandex.Cloud)

เป€เบญเบเบฐเบชเบฒเบ™เบญเป‰เบฒเบ‡เบญเบตเบ‡:

https://github.com/ClickHouse/ClickHouse/pull/12638 "เป€เบžเบตเปˆเบก SelectedRows เปเบฅเบฐ SelectedBytes เป€เบซเบ”เบเบฒเบ™"
https://github.com/ClickHouse/ClickHouse/pull/12464 "เป€เบžเบตเปˆเบกเป€เบซเบ”เบเบฒเบ™ profileing เบˆเบฒเบเบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เป S3 เบเบฑเบš system.events"
https://github.com/ClickHouse/ClickHouse/pull/13028 "เป€เบžเบตเปˆเบก QueryTimeMicroseconds, SelectQueryTimeMicroseconds เปเบฅเบฐ InsertQueryTimeMicroseconds"

เปเบฅเบฐเบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบกเบฑเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เป€เบฎเบฑเบ”เปƒเบซเป‰เบกเบฑเบ™เบชเบฒเบกเบฒเบ”เบงเบดเบ™เบดเบ”เป„เบช, เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเปเบฅเบฐเป€เบฎเบฑเบ”เปƒเบซเป‰เบกเบฑเบ™เบชเบฒเบกเบฒเบ”เบ„เบธเป‰เบกเบ„เบญเบ‡เป„เบ”เป‰.

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

เบชเบดเปˆเบ‡เบ—เบตเปˆเปเบฅเบฐเป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบฎเบฑเบ”เปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™ Open Source. Andrey Borodin (Yandex.Cloud)

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

เบชเบดเปˆเบ‡เบ—เบตเปˆเปเบฅเบฐเป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบฎเบฑเบ”เปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™ Open Source. Andrey Borodin (Yandex.Cloud)

เบ™เบตเป‰เปเบกเปˆเบ™เบžเบฐเปเบ™เบเบเบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒ DBMS เปเบซเบผเปˆเบ‡เป€เบ›เบตเบ”. เบ„เบปเบ™เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เบเปเบฒเบฅเบฑเบ‡เป€เบฎเบฑเบ” magic street เป€เบžเบทเปˆเบญเบ›เบฑเบšเบ›เบธเบ‡เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เป€เบ›เบตเบ”เบเบฒเบ™เป€เบฎเบฑเบ”เบ—เบธเบฅเบฐเบเปเบฒ.

เบชเบดเปˆเบ‡เบ—เบตเปˆเปเบฅเบฐเป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบฎเบฑเบ”เปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™ Open Source. Andrey Borodin (Yandex.Cloud)

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

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

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

เบชเบดเปˆเบ‡เบ—เบตเปˆเปเบฅเบฐเป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบฎเบฑเบ”เปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™ Open Source. Andrey Borodin (Yandex.Cloud)

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

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

เบชเบดเปˆเบ‡เบ—เบตเปˆเปเบฅเบฐเป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบฎเบฑเบ”เปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™ Open Source. Andrey Borodin (Yandex.Cloud)

https://pgconf.ru/2017/92899

เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบชเบทเบšเบชเบงเบ™เบ•เบปเบงเป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบ—เบตเปˆเป€เปเบฒเบฐเบชเบปเบกเบเบฑเบšเบเบธเปˆเบก postgres เบ—เบตเปˆเบกเบตเบเบฒเบ™เบˆเบฑเบ”เบเบฒเบ™. เปเบฅเบฐ PgBouncer เปเบกเปˆเบ™เบ—เบฒเบ‡เป€เบฅเบทเบญเบเบ—เบตเปˆเบ”เบตเบ—เบตเปˆเบชเบธเบ”เบชเปเบฒเบฅเบฑเบšเบžเบงเบเป€เบฎเบปเบฒ. เปเบ•เปˆเบžเบงเบเป€เบฎเบปเบฒเบžเบปเบšเบšเบฑเบ™เบซเบฒเบˆเปเบฒเบ™เบงเบ™เบซเบ™เบถเปˆเบ‡เบเบฑเบš PgBouncer. เบซเบฅเบฒเบเบ›เบตเบเปˆเบญเบ™, Volodya Borodin เปƒเบซเป‰เบฅเบฒเบเบ‡เบฒเบ™เบงเปˆเบฒเบžเบงเบเป€เบฎเบปเบฒเปƒเบŠเป‰ PgBouncer, เบžเบงเบเป€เบฎเบปเบฒเบกเบฑเบเบ—เบธเบเบชเบดเปˆเบ‡เบ—เบธเบเบขเปˆเบฒเบ‡, เปเบ•เปˆเบงเปˆเบฒเบกเบต nuances, เบกเบตเบšเบฒเบ‡เบชเบดเปˆเบ‡เบšเบฒเบ‡เบขเปˆเบฒเบ‡เบ—เบตเปˆเบˆเบฐเป€เบฎเบฑเบ”เบงเบฝเบ.

เบชเบดเปˆเบ‡เบ—เบตเปˆเปเบฅเบฐเป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบฎเบฑเบ”เปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™ Open Source. Andrey Borodin (Yandex.Cloud)

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

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

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

เบชเบดเปˆเบ‡เบ—เบตเปˆเปเบฅเบฐเป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบฎเบฑเบ”เปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™ Open Source. Andrey Borodin (Yandex.Cloud)

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

เบชเบดเปˆเบ‡เบ—เบตเปˆเปเบฅเบฐเป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบฎเบฑเบ”เปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™ Open Source. Andrey Borodin (Yandex.Cloud)

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

เปƒเบ™เบ›เบต 2019, เปƒเบ™เบเบญเบ‡เบ›เบฐเบŠเบธเบก PgCon, เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเป„เบ”เป‰เบ™เปเบฒเบชเบฐเป€เบซเบ™เบต pooler เบ™เบตเป‰เบเบฑเบšเบŠเบธเบกเบŠเบปเบ™เบ™เบฑเบเบžเบฑเบ”เบ—เบฐเบ™เบฒ. เปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™เบžเบงเบเป€เบฎเบปเบฒเบกเบตเบซเบ™เป‰เบญเบเบเบงเปˆเบฒ 2 เบ”เบฒเบงเบขเบนเปˆเปƒเบ™ GitHub, i.e. เป‚เบ„เบ‡เบเบฒเบ™เปเบกเปˆเบ™เบกเบตเบŠเบตเบงเบดเบ”เบขเบนเปˆ, เป‚เบ„เบ‡เบเบฒเบ™เป€เบ›เบฑเบ™เบ—เบตเปˆเบ™เบดเบเบปเบก.

เปเบฅเบฐเบ–เป‰เบฒเบ—เปˆเบฒเบ™เบชเป‰เบฒเบ‡เบเบธเปˆเบก Postgres เปƒเบ™ Yandex.Cloud, เบกเบฑเบ™เบˆเบฐเป€เบ›เบฑเบ™เบเบธเปˆเบกเบ—เบตเปˆเบกเบต Odyssey เบชเป‰เบฒเบ‡เบ‚เบถเป‰เบ™, เป€เบŠเบดเปˆเบ‡เบ–เบทเบเบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบ„เบทเบ™เปƒเบซเบกเปˆเป€เบกเบทเปˆเบญเบ›เบฑเบšเบ‚เบฐเบซเบ™เบฒเบ”เบ‚เบญเบ‡เบเบธเปˆเบกเบเบฑเบšเบ„เบทเบ™เบซเบผเบทเบญเบญเบเป„เบ›.

เบชเบดเปˆเบ‡เบ—เบตเปˆเปเบฅเบฐเป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบฎเบฑเบ”เปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™ Open Source. Andrey Borodin (Yandex.Cloud)

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

PgBouncer เป€เบฅเบตเปˆเบกเบžเบฑเบ”เบ—เบฐเบ™เบฒเป„เบงเบ‚เบถเป‰เบ™.

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

เบชเบดเปˆเบ‡เบ—เบตเปˆเปเบฅเบฐเป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบฎเบฑเบ”เปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™ Open Source. Andrey Borodin (Yandex.Cloud)

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

เบชเบดเปˆเบ‡เบ—เบตเปˆเปเบฅเบฐเป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบฎเบฑเบ”เปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™ Open Source. Andrey Borodin (Yandex.Cloud)

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

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

เบชเบดเปˆเบ‡เบ—เบตเปˆเปเบฅเบฐเป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบฎเบฑเบ”เปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™ Open Source. 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 เปƒเบ™เป€เบšเบทเป‰เบญเบ‡เบ•เบปเป‰เบ™. เปเบฅเบฐเบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เป€เบฅเบตเปˆเบกเบ›เบฐเบเบญเบšเบชเปˆเบงเบ™เป€เบ‚เบปเป‰เบฒเปƒเบ™เป‚เบ„เบ‡เบเบฒเบ™เบ™เบตเป‰.

เบชเบดเปˆเบ‡เบ—เบตเปˆเปเบฅเบฐเป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบฎเบฑเบ”เปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™ Open Source. Andrey Borodin (Yandex.Cloud)

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

เปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™เบกเบตเบœเบนเป‰เบžเบฑเบ”เบ—เบฐเบ™เบฒเบซเบผเบฒเบเบชเบดเบšเบ„เบปเบ™เปƒเบ™เป‚เบ„เบ‡เบเบฒเบ™เบ™เบตเป‰, เปเบ•เปˆเบœเบนเป‰เบ›เบฐเบเบญเบšเบชเปˆเบงเบ™ 10 เบญเบฑเบ™เบ”เบฑเบšเบชเบนเบ‡เบชเบธเบ”เบ‚เบญเบ‡ WAL-G เบ›เบฐเบเบญเบšเบกเบต 6 Yandexoids. เบžเบงเบโ€‹เป€เบฎเบปเบฒโ€‹เป„เบ”เป‰โ€‹เบ™เปเบฒโ€‹เป€เบญเบปเบฒโ€‹เบซเบผเบฒเบโ€‹เบ‚เบญเบ‡โ€‹เบ„เบงเบฒเบกโ€‹เบ„เบดเบ”โ€‹เบ‚เบญเบ‡โ€‹เบžเบงเบโ€‹เป€เบฎเบปเบฒโ€‹เบ—เบตเปˆโ€‹เบ™เบฑเป‰เบ™โ€‹. เปเบฅเบฐ, เปเบ™เปˆเบ™เบญเบ™, เบžเบงเบเป€เบฎเบปเบฒเบ›เบฐเบ•เบดเบšเบฑเบ”เบžเบงเบเบกเบฑเบ™เบ”เป‰เบงเบเบ•เบปเบ™เป€เบญเบ‡, เบ—เบปเบ”เบชเบญเบšเบ•เบปเบงเป€เบญเบ‡, เบกเป‰เบงเบ™เบžเบงเบเบกเบฑเบ™เบญเบญเบเปƒเบ™เบเบฒเบ™เบœเบฐเบฅเบดเบ”เบ•เบปเบงเป€เบฎเบปเบฒเป€เบญเบ‡, เบžเบงเบเป€เบฎเบปเบฒเปƒเบŠเป‰เบ•เบปเบงเป€เบญเบ‡, เบžเบงเบเป€เบฎเบปเบฒเบ„เบดเบ”เบญเบญเบเบšเปˆเบญเบ™เบ—เบตเปˆเบˆเบฐเบเป‰เบฒเบเบญเบญเบเป„เบ›, เปƒเบ™เบ‚เบฐเบ™เบฐเบ—เบตเปˆเบžเบปเบงเบžเบฑเบ™เบเบฑเบšเบŠเบธเบกเบŠเบปเบ™ WAL-G เบ‚เบฐเบซเบ™เบฒเบ”เปƒเบซเบเปˆ.

เบชเบดเปˆเบ‡เบ—เบตเปˆเปเบฅเบฐเป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบฎเบฑเบ”เปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™ Open Source. Andrey Borodin (Yandex.Cloud)

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

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

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

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

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

เบชเบดเปˆเบ‡เบ—เบตเปˆเปเบฅเบฐเป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบฎเบฑเบ”เปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™ Open Source. Andrey Borodin (Yandex.Cloud)

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

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

เบชเบดเปˆเบ‡เบ—เบตเปˆเปเบฅเบฐเป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบฎเบฑเบ”เปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™ Open Source. Andrey Borodin (Yandex.Cloud)

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

เบชเบดเปˆเบ‡เบ—เบตเปˆเปเบฅเบฐเป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบฎเบฑเบ”เปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™ Open Source. Andrey Borodin (Yandex.Cloud)

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

เบชเบดเปˆเบ‡เบ—เบตเปˆเปเบฅเบฐเป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบฎเบฑเบ”เปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™ Open Source. Andrey Borodin (Yandex.Cloud)

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

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

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

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

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

เบชเบดเปˆเบ‡เบ—เบตเปˆเปเบฅเบฐเป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบฎเบฑเบ”เปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™ Open Source. Andrey Borodin (Yandex.Cloud)

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

invariant เปเบกเปˆเบ™เบšเบฒเบ‡เบ›เบฐเป€เบžเบ”เบ‚เบญเบ‡เบ„เบงเบฒเบกเบชเปเบฒเบžเบฑเบ™เบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบ„เบฒเบ”เบซเบงเบฑเบ‡เบงเปˆเบฒเบˆเบฐเบ–เบทเบชเบฐเป€เบซเบกเบต.

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

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

เปเบฅเบฐเปƒเบ™เบ—เบตเปˆเบ™เบตเป‰เบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เป€เบเบตเบ”เบ‚เบทเป‰เบ™เบ—เบตเปˆเปเบ™เบฐเบ™เปเบฒเบงเปˆเบฒเบญเบฒเบ”เบˆเบฐเบกเบตเบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบญเบฒเบ”เบˆเบฐเบšเปเปˆเบเบฝเบกเบžเป‰เบญเบก. เปเบฅเบฐเบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เป€เบฅเบตเปˆเบกเบเบฐเบเบฝเบกเบชเปเบฒเบฅเบฑเบšเบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เบ™เบตเป‰.

เบชเบดเปˆเบ‡เบ—เบตเปˆเปเบฅเบฐเป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบฎเบฑเบ”เปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™ Open Source. Andrey Borodin (Yandex.Cloud)

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

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

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

เบชเบดเปˆเบ‡เบ—เบตเปˆเปเบฅเบฐเป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบฎเบฑเบ”เปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™ Open Source. Andrey Borodin (Yandex.Cloud)

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

เปเบ•เปˆ! เบšเบฑเบ™เบ—เบถเบเบเบฒเบ™เบชเบฐเปเบเบ™เปเบกเปˆเบ™เบเบฒเบ™เบ”เปเบฒเป€เบ™เบตเบ™เบ‡เบฒเบ™เบฅเบฒเบ„เบฒเบ–เบทเบเบขเบนเปˆเปƒเบ™เบเบธเปˆเบกเบ”เบฝเบง เปเบฅเบฐเบฅเบฒเบ„เบฒเปเบžเบ‡เบ—เบตเปˆเบฎเป‰เบฒเบเบเบฒเบ”เบชเปเบฒเบฅเบฑเบšเบซเบ™เบถเปˆเบ‡เบžเบฑเบ™ clusters.

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

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

เบชเบดเปˆเบ‡เบ—เบตเปˆเปเบฅเบฐเป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบฎเบฑเบ”เปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™ Open Source. Andrey Borodin (Yandex.Cloud)

https://www.postgresql.org/message-id/flat/[email protected]

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

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

เบชเบดเปˆเบ‡เบ—เบตเปˆเปเบฅเบฐเป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบฎเบฑเบ”เปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™ Open Source. Andrey Borodin (Yandex.Cloud)

https://www.postgresql.org/message-id/flat/[email protected]

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

เบชเบดเปˆเบ‡เบ—เบตเปˆเปเบฅเบฐเป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบฎเบฑเบ”เปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™ Open Source. Andrey Borodin (Yandex.Cloud)

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

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

เบžเบงเบเป€เบฎเบปเบฒเบ‚เบฝเบ™เบฅเบฐเบซเบฑเบ”เบ—เบตเปˆเบ„เบงเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ•เบฒเบก can... protocols. เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบชเบปเบ™เบ—เบฐเบ™เบฒเบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เปเบเป‰เป„เบ‚เบ™เบตเป‰เบชเปเบฒเบฅเบฑเบšเป€เบงเบฅเบฒเปƒเบ”เบซเบ™เบถเปˆเบ‡เบเบฑเบš Peter Gaghan เบˆเบฒเบ Crunchy Data. เบฅเบฒเบงเบ•เป‰เบญเบ‡เบ”เบฑเบ”เปเบ›เบ‡ B-tree เบ—เบตเปˆเบกเบตเบขเบนเปˆเบเปˆเบญเบ™เปเบฅเป‰เบงเปƒเบ™ Postgres เป€เบฅเบฑเบเบ™เป‰เบญเบเป€เบžเบทเปˆเบญเบเบญเบกเบฎเบฑเบšเป€เบญเบปเบฒเปเบœเปˆเบ™เบ™เบตเป‰. เบฅเบฒเบงเป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบเบญเบกเบฎเบฑเบš. เปเบฅเบฐเปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™เบเบฒเบ™เบเบงเบ”เบชเบญเบšเบ”เบฑเบ”เบชเบฐเบ™เบตเบเปˆเบฝเบงเบเบฑเบš replicas เป„เบ”เป‰เบเบฒเบเป€เบ›เบฑเบ™เบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบšเบžเบฝเบ‡เบžเปเบ—เบตเปˆเบˆเบฐเบเบงเบ”เบžเบปเบšเบเบฒเบ™เบฅเบฐเป€เบกเบตเบ”เบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบžเบปเบš. เบ™เบฑเป‰เบ™เปเบกเปˆเบ™, เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เปเบกเปˆเบ™เบเบฒเบ™เบฅเบฐเป€เบกเบตเบ”เบ—เบตเปˆเบชเบฒเบกเบฒเบ”เป€เบเบตเบ”เบˆเบฒเบเบ„เบงเบฒเบกเบœเบดเบ”เบžเบฒเบ”เปƒเบ™ firmware เปเบœเปˆเบ™, เปเบกเบ‡เป„เบกเป‰เปƒเบ™ Postgres, เปเบกเบ‡เป„เบกเป‰เปƒเบ™ Linux kernel, เปเบฅเบฐเบšเบฑเบ™เบซเบฒเบฎเบฒเบ”เปเบง. เบ‚เป‰เบญเบ™เบ‚เป‰เบฒเบ‡เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆเบขเปˆเบฒเบ‡เบเบงเป‰เบฒเบ‡เบ‚เบงเบฒเบ‡เบ‚เบญเบ‡เปเบซเบผเปˆเบ‡เบ‚เบญเบ‡เบšเบฑเบ™เบซเบฒเบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบเบฐเบเบฝเบก.

เบชเบดเปˆเบ‡เบ—เบตเปˆเปเบฅเบฐเป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบฎเบฑเบ”เปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™ Open Source. Andrey Borodin (Yandex.Cloud)

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

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

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

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

เบชเบดเปˆเบ‡เบ—เบตเปˆเปเบฅเบฐเป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบฎเบฑเบ”เปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™ Open Source. Andrey Borodin (Yandex.Cloud)

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

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

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

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

เบชเบดเปˆเบ‡เบ—เบตเปˆเปเบฅเบฐเป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบฎเบฑเบ”เปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™ Open Source. Andrey Borodin (Yandex.Cloud)

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

เบŠเบธเบกเบŠเบปเบ™เบ•เบญเบšเบงเปˆเบฒ, "เป‚เบญเป‰, เบžเบงเบเป€เบฎเบปเบฒเบ•เป‰เบญเบ‡เปเบเป‰เป„เบ‚เบกเบฑเบ™เปเบ—เป‰เป†."

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

เบชเบดเปˆเบ‡เบ—เบตเปˆเปเบฅเบฐเป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบฎเบฑเบ”เปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™ Open Source. Andrey Borodin (Yandex.Cloud)

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

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

เบชเบดเปˆเบ‡เบ—เบตเปˆเปเบฅเบฐเป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบฎเบฑเบ”เปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™ Open Source. Andrey Borodin (Yandex.Cloud)

เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเบซเบ™เป‰เบฒเบชเบปเบ™เปƒเบˆเปเบกเปˆเบ™ Greenplum. เบกเบฑเบ™เป€เบ›เบฑเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเบกเบตเบ„เบงเบฒเบกเบ‚เบฐเบซเบ™เบฒเบ™เบเบฑเบ™เบชเบนเบ‡เป‚เบ”เบเบญเบตเบ‡เปƒเบชเปˆเบฅเบฐเบซเบฑเบ” Postgres, เบ—เบตเปˆเบ‚เป‰เบญเบเบ„เบธเป‰เบ™เป€เบ„เบตเบเบซเบผเบฒเบ.

เบชเบดเปˆเบ‡เบ—เบตเปˆเปเบฅเบฐเป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบฎเบฑเบ”เปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™ Open Source. Andrey Borodin (Yandex.Cloud)

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

เปเบฅเบฐ Greenplum เบกเบตเบซเบ™เป‰เบฒเบ—เบตเปˆเบ—เบตเปˆเบซเบ™เป‰เบฒเบชเบปเบ™เปƒเบˆ - append optimized tables . เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เปเบกเปˆเบ™เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบ—เบตเปˆเบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เป€เบžเบตเปˆเบกเป„เบ”เป‰เป„เบง. เบžเบงเบเป€เบ‚เบปเบฒเบชเบฒเบกเบฒเบ”เป€เบ›เบฑเบ™เบ–เบฑเบ™เบซเบผเบทเปเบ–เบง.

เปเบ•เปˆเบšเปเปˆเบกเบตเบเบธเปˆเบก, i.e. เบšเปเปˆเบกเบตเบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบ—เบตเปˆเบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบˆเบฑเบ”เบฅเบฝเบ‡เบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเบขเบนเปˆเปƒเบ™เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบ•เบฒเบกเบฅเปเบฒเบ”เบฑเบšเบ—เบตเปˆเบขเบนเปˆเปƒเบ™เบซเบ™เบถเปˆเบ‡เปƒเบ™เบ”เบฑเบ”เบŠเบฐเบ™เบต.

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

เบชเบดเปˆเบ‡เบ—เบตเปˆเปเบฅเบฐเป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบฎเบฑเบ”เปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™ Open Source. Andrey Borodin (Yandex.Cloud)

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

เปเบ•เปˆเบšเปเปˆ, เบกเบฑเบ™เบšเปเปˆเปเบกเปˆเบ™ 20 เบ™เบฒเบ—เบต, เบ‚เป‰เบญเบเบ‚เบฝเบ™เบกเบฑเบ™เบซเบผเบฒเบเป€เบ”เบทเบญเบ™. เปƒเบ™เบเบญเบ‡เบ›เบฐเบŠเบธเบก PgConf.Russia, เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเป„เบ”เป‰เป€เบ‚เบปเป‰เบฒเบซเบฒ Heikki Linakangas เบˆเบฒเบ Pivotal เปเบฅเบฐเบ–เบฒเบกเบงเปˆเบฒ: "เบกเบตเบšเบฑเบ™เบซเบฒเบเบฑเบšเป€เบฅเบทเปˆเบญเบ‡เบ™เบตเป‰เบšเป? เป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบˆเบถเปˆเบ‡เบšเปเปˆเบกเบตเบชเปˆเบงเบ™เบŠเป‰เบญเบ™เบ—เป‰เบฒเบเบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบ—เบตเปˆเบ›เบฑเบšเปเบ•เปˆเบ‡เปƒเบซเป‰เป€เปเบฒเบฐเบชเบปเบก?โ€ เบฅเบฒเบงโ€‹เป€เบงเบปเป‰เบฒโ€‹เบงเปˆเบฒ: โ€œเป€เบˆเบปเป‰เบฒโ€‹เป€เบญเบปเบฒโ€‹เบ‚เปเป‰โ€‹เบกเบนเบ™. เบ—เปˆเบฒเบ™เบˆเบฑเบ”เบฎเบฝเบ‡, เบ—เปˆเบฒเบ™เบˆเบฑเบ”เบฎเบฝเบ‡เปƒเบซเบกเปˆ. เบกเบฑเบ™เป€เบ›เบฑเบ™เบžเบฝเบ‡เปเบ•เปˆเบงเบฝเบ." เบ‚เป‰เบญเบ: "เป‚เบญเป‰, เปเบกเปˆเบ™เปเบฅเป‰เบง, เป€เบˆเบปเป‰เบฒเบžเบฝเบ‡เปเบ•เปˆเบ•เป‰เบญเบ‡เบเบฒเบ™เป€เบญเบปเบฒเบกเบฑเบ™เปเบฅเบฐเป€เบฎเบฑเบ”เบกเบฑเบ™." เบฅเบฒเบงเป€เบงเบปเป‰เบฒเบงเปˆเบฒ: "เปเบกเปˆเบ™เปเบฅเป‰เบง, เบžเบงเบเป€เบฎเบปเบฒเบ•เป‰เบญเบ‡เบเบฒเบ™เบกเบทเบ—เบตเปˆเบšเปเปˆเป€เบชเบเบ„เปˆเบฒเป€เบžเบทเปˆเบญเป€เบฎเบฑเบ”เบชเบดเปˆเบ‡เบ™เบตเป‰." เบ‚เป‰เบฒโ€‹เบžเบฐโ€‹เป€เบˆเบปเป‰เบฒโ€‹เบ„เบดเบ”โ€‹เบงเปˆเบฒโ€‹เบ‚เป‰เบฒโ€‹เบžเบฐโ€‹เป€เบˆเบปเป‰เบฒโ€‹เบˆเปเบฒโ€‹เป€เบ›เบฑเบ™โ€‹เบ•เป‰เบญเบ‡โ€‹เป€เบฎเบฑเบ”โ€‹เบชเบดเปˆเบ‡โ€‹เบ™เบตเป‰โ€‹เปเบ™เปˆโ€‹เบ™เบญเบ™.

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

เบชเบดเปˆเบ‡เบ—เบตเปˆเปเบฅเบฐเป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบฎเบฑเบ”เปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™ Open Source. Andrey Borodin (Yandex.Cloud)

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

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

เบชเบดเปˆเบ‡เบ—เบตเปˆเปเบฅเบฐเป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบฎเบฑเบ”เปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™ Open Source. Andrey Borodin (Yandex.Cloud)

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

เบ‚เป‰เบญเบเปเบเป‰เป„เบ‚ bug เบ™เบตเป‰. เบชเบปเปˆเบ‡เบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเบ”เบถเบ‡เป„เบ›เบซเบฒเบœเบนเป‰เปเบเป‰เป„เบ‚. เบฅเบฒเบงเป„เบ”เป‰เบ–เบทเบเบ‚เป‰เบฒเบ•เบฒเบ.

เบชเบดเปˆเบ‡เบ—เบตเปˆเปเบฅเบฐเป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบฎเบฑเบ”เปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™ Open Source. Andrey Borodin (Yandex.Cloud)

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

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

เบชเบดเปˆเบ‡เบ—เบตเปˆเปเบฅเบฐเป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบฎเบฑเบ”เปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™ Open Source. Andrey Borodin (Yandex.Cloud)

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

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

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

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

เบชเบดเปˆเบ‡เบ—เบตเปˆเปเบฅเบฐเป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบฎเบฑเบ”เปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™ Open Source. Andrey Borodin (Yandex.Cloud)

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

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

เบซเบกเบปเบ”โ€‹เป€เบ—เบปเปˆเบฒโ€‹เบ™เบตเป‰. เบ‚เปเปƒเบซเป‰เบเป‰เบฒเบงเป„เบ›เบชเบนเปˆเบ„เปเบฒเบ–เบฒเบก.

เบชเบดเปˆเบ‡เบ—เบตเปˆเปเบฅเบฐเป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบฎเบฑเบ”เปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™ Open Source. 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% เบ‚เบญเบ‡ patches เบ—เบตเปˆเปƒเบŠเป‰เบเบฑเบšเบกเบฑเบ™. เบžเบงเบเป€เบฎเบปเบฒเบฎเบนเป‰เบงเปˆเบฒเบฅเบฐเบซเบฑเบ”เปเบกเปˆเบ™เบซเบเบฑเบ‡. เปเบฅเบฐเบžเบงเบเป€เบฎเบปเบฒเบกเบตเบ„เบงเบฒเบกเบชเบฐเบ”เบงเบเบชเบฐเบšเบฒเบเบเบงเปˆเบฒเบ—เบตเปˆเบˆเบฐเบญเบญเบเบฅเบธเป‰เบ™เปƒเปเปˆเปƒเบซเป‰เบเบฑเบšเบเบฒเบ™เบœเบฐเบฅเบดเบ”. เบ™เบฑเป‰เบ™เปเบกเปˆเบ™, เบเปˆเบญเบ™เบญเบทเปˆเบ™ เปเบปเบ”, เบกเบฑเบ™เปเบกเปˆเบ™เบเปˆเบฝเบงเบเบฑเบšเบ„เบงเบฒเบกเบซเบกเบฑเป‰เบ™เปƒเบˆ, เบเปˆเบฝเบงเบเบฑเบšเบ„เบงเบฒเบกเบžเป‰เบญเบกเปƒเบ™เบเบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒเปเบฅเบฐเบ„เบงเบฒเบกเบซเบ™เป‰เบฒเป€เบŠเบทเปˆเบญเบ–เบท

เบ„เปเบฒเบ–เบฒเบกเบญเบตเบเบญเบฑเบ™เบซเบ™เบถเปˆเบ‡: "เบ„เบงเบฒเบกเบ•เป‰เบญเบ‡เบเบฒเบ™เบ‚เบญเบ‡เบœเบนเป‰เปƒเบŠเป‰เบžเบฒเบเบ™เบญเบเบ—เบตเปˆเบญเบฒเป„เบชเบขเบนเปˆเปƒเบ™ Yandex.Cloud เปเบ•เบเบ•เปˆเบฒเบ‡เบˆเบฒเบเบœเบนเป‰เปƒเบŠเป‰เบžเบฒเบเปƒเบ™เบ—เบตเปˆเบญเบฒเป„เบชเบขเบนเปˆเปƒเบ™ Cloud เบžเบฒเบเปƒเบ™เบšเป?"

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

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

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

เป€เบˆเบปเป‰เบฒเป€เบงเบปเป‰เบฒเบซเบผเบฒเบเบเปˆเบฝเบงเบเบฑเบšเบกเบฒเบฃเบฒเบ—เบญเบ™. เบ‚เป‰เบญเบเบฎเบนเป‰เบงเปˆเบฒเป€เบˆเบปเป‰เบฒเปเบฅเปˆเบ™เบกเบฒเบฃเบฒเบ—เบญเบ™เบขเบนเปˆเบกเบญเบ”เป‚เบ. เบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบš? เป€เบญเบปเบฒเบŠเบฐเบ™เบฐเบ„เบปเบ™เบˆเบฒเบ PostgreSQL เบšเป?

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

เป€เบˆเบปเป‰เบฒเป€เบงเบปเป‰เบฒเบงเปˆเบฒเบšเปเปˆเบกเบตเบ™เบฑเบเปเบฅเปˆเบ™เบขเบนเปˆ ClickHouse เบšเป?

เบ‚เป‰เบญเบเบฎเบนเป‰เปเบ™เปˆเบ™เบญเบ™เบงเปˆเบฒเบžเบงเบเป€เบ‚เบปเบฒเบขเบนเปˆเบ—เบตเปˆเบ™เบฑเป‰เบ™. ClickHouse เบเบฑเบ‡เป€เบ›เบฑเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™. เป‚เบ”เบเบงเบดเบ—เบตเบ—เบฒเบ‡เบเบฒเบ™, เบ•เบญเบ™เบ™เบตเป‰ Oleg เบเปเบฒเบฅเบฑเบ‡เบ‚เบฝเบ™เบเบฑเบšเบ‚เป‰เบญเบเบงเปˆเบฒ: "เบžเบงเบเป€เบฎเบปเบฒเบˆเบฐเป„เบ›เปเบฅเปˆเบ™เบซเบผเบฑเบ‡เบˆเบฒเบเบฅเบฒเบเบ‡เบฒเบ™เบšเป?" เบ™เบตเป‰เปเบกเปˆเบ™เบ„เบงเบฒเบกเบ„เบดเบ”เบ—เบตเปˆเบ”เบต.

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

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

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

เบ™เบตเป‰เปเบกเปˆเบ™เบ„เปเบฒเบ–เบฒเบกเบ—เบตเปˆเบซเบ™เป‰เบฒเบชเบปเบ™เปƒเบˆ: "เบšเปˆเบญเบ™เบ—เบตเปˆเบˆเบฐเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™?" เบ›เบปเบเบเบฐเบ•เบดเปเบฅเป‰เบงเบกเบฑเบ™เบ‚เป‰เบญเบ™เบ‚เป‰เบฒเบ‡เบเบฒเบเบ—เบตเปˆเบˆเบฐเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ”เป‰เบงเบเบšเบฒเบ‡เบชเบดเปˆเบ‡เบšเบฒเบ‡เบขเปˆเบฒเบ‡เปƒเบ™เปเบเปˆเบ™. เบชเปเบฒเบฅเบฑเบšเบ•เบปเบงเบขเปˆเบฒเบ‡, เปƒเบ™ Postgres, เบกเบตเบฅเบฒเบเบเบฒเบ™เบ—เบตเปˆเบ•เป‰เบญเบ‡เป€เบฎเบฑเบ”. เปเบ•เปˆโ€‹เปƒเบ™โ€‹เบ„เบงเบฒเบกโ€‹เป€เบ›เบฑเบ™โ€‹เบˆเบดเบ‡, เบ™เบตเป‰โ€‹เปเบกเปˆเบ™โ€‹เปเบœเปˆเบ™โ€‹เบ‚เบญเบ‡โ€‹เบชเบดเปˆเบ‡โ€‹เบ—เบตเปˆโ€‹เป€เบ‚เบปเบฒโ€‹เป€เบˆเบปเป‰เบฒโ€‹เบžเบฐโ€‹เบเบฒโ€‹เบเบฒเบกโ€‹เป€เบฎเบฑเบ”โ€‹, เปเบ•เปˆโ€‹เบšเปเปˆโ€‹เบชเปเบฒโ€‹เป€เบฅเบฑเบ”โ€‹. เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เปเบกเปˆเบ™เบชเบดเปˆเบ‡เบ—เบตเปˆเบชเบฑเบšเบชเบปเบ™. เปเบฅเบฐเบ›เบปเบเบเบฐเบ•เบดเปเบฅเป‰เบงเบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบŠเบญเบเบซเบฒเบชเบดเปˆเบ‡เบญเปเบฒเบ™เบงเบเบ„เบงเบฒเบกเบชเบฐเบ”เบงเบเบšเบฒเบ‡เบขเปˆเบฒเบ‡เปƒเบ™เบฅเบฐเบšเบปเบšเบ™เบดเป€เบงเบ”, เบšเบฒเบ‡เบชเปˆเบงเบ™เบ‚เบฐเบซเบเบฒเบเบ—เบตเปˆเบชเบฒเบกเบฒเบ”เบ›เบฑเบšเบ›เบธเบ‡เป„เบ”เป‰, เบ—เบตเปˆเบ”เบถเบ‡เบ”เบนเบ”เบ„เบงเบฒเบกเบชเบปเบ™เปƒเบˆเบซเบ™เป‰เบญเบเบฅเบปเบ‡เบˆเบฒเบเบœเบนเป‰เบžเบฑเบ”เบ—เบฐเบ™เบฒ kernel. เปเบฅเบฐ, เบ•เบฒเบกเบ„เบงเบฒเบกเป€เบซเบกเบฒเบฐเบชเบปเบก, เบกเบตเบˆเบธเบ”เป€เบžเบตเปˆเบกเป€เบ•เบตเบกเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ‚เบฐเบซเบเบฒเบเบ•เบปเบงเบขเบนเปˆเบ—เบตเปˆเบ™เบฑเป‰เบ™. เบขเบนเปˆเปƒเบ™ Google Summer of code program, เบ—เบธเบเป†เบ›เบตเบŠเบธเบกเบŠเบปเบ™ postgres เบชเบฐเป€เบซเบ™เบตเบซเบปเบงเบ‚เปเป‰เบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™เบซเบผเบฒเบเบ—เบตเปˆเบชเบฒเบกเบฒเบ”เปเบเป‰เป„เบ‚เป„เบ”เป‰. เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเบ„เบดเบ”เบงเปˆเบฒเบ›เบตเบ™เบตเป‰เบžเบงเบเป€เบฎเบปเบฒเบกเบตเบ™เบฑเบเบฎเบฝเบ™เบชเบฒเบกเบ„เบปเบ™. เบœเบนเป‰เบซเบ™เบถเปˆเบ‡เบเปเปˆเบ‚เบฝเบ™เปƒเบ™ WAL-G เบเปˆเบฝเบงเบเบฑเบšเบซเบปเบงเบ‚เปเป‰เบ—เบตเปˆเบกเบตเบ„เบงเบฒเบกเบชเปเบฒเบ„เบฑเบ™เบเบฑเบš Yandex. เปƒเบ™ Greenplum, เบ—เบธเบเบชเบดเปˆเบ‡เบ—เบธเบเบขเปˆเบฒเบ‡เปเบกเปˆเบ™เบ‡เปˆเบฒเบเบ”เบฒเบเบเบงเปˆเบฒเปƒเบ™เบŠเบธเบกเบŠเบปเบ™ Postgres, เป€เบžเบฒเบฐเบงเปˆเบฒเปเบฎเบเป€เบเบต Greenplum เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเบ”เบถเบ‡เป„เบ”เป‰เบ”เบตเบซเบผเบฒเบเปเบฅเบฐเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบเบฒเบ™เบ—เบปเบšเบ—เบงเบ™เบ„เบทเบ™เบ—เบฑเบ™เบ—เบต. เบเบฒเบ™เบชเบปเปˆเบ‡ patch เป„เบ› Postgres เปเบกเปˆเบ™เปƒเบŠเป‰เป€เบงเบฅเบฒเบซเบผเบฒเบเป€เบ”เบทเบญเบ™, เปเบ•เปˆ Greenplum เบˆเบฐเบกเบฒเปƒเบ™เบกเบทเป‰เบซเบ™เบถเปˆเบ‡เปเบฅเบฐเป€เบšเบดเปˆเบ‡เบชเบดเปˆเบ‡เบ—เบตเปˆเบ—เปˆเบฒเบ™เป„เบ”เป‰เป€เบฎเบฑเบ”. เบชเบดเปˆเบ‡เบญเบทเปˆเบ™เปเบกเปˆเบ™เบงเปˆเบฒ Greenplum เบ•เป‰เบญเบ‡เบเบฒเบ™เปเบเป‰เป„เบ‚เบšเบฑเบ™เบซเบฒเปƒเบ™เบ›เบฐเบˆเบธเบšเบฑเบ™. Greenplum เบšเปเปˆเป„เบ”เป‰เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เบขเปˆเบฒเบ‡เบเบงเป‰เบฒเบ‡เบ‚เบงเบฒเบ‡, เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบเบฒเบ™เบŠเบญเบเบซเบฒเบšเบฑเบ™เบซเบฒเบ‚เบญเบ‡เบ—เปˆเบฒเบ™เปเบกเปˆเบ™เบ‚เป‰เบญเบ™เบ‚เป‰เบฒเบ‡เบเบฒเบ. เปเบฅเบฐเบ—เปเบฒเบญเบดเบ”เบ‚เบญเบ‡เบเบฒเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”, เบžเบงเบเป€เบฎเบปเบฒเบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เปเบเป‰เป„เบ‚เบšเบฑเบ™เบซเบฒ, เปเบ™เปˆเบ™เบญเบ™.

เปเบซเบผเปˆเบ‡เบ‚เปเป‰เบกเบนเบ™: www.habr.com