WAL-G: เบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”เปƒเปเปˆ เปเบฅเบฐเบเบฒเบ™เบ‚เบฐเบซเบเบฒเบเบ•เบปเบงเบ‚เบญเบ‡เบŠเบธเบกเบŠเบปเบ™. Georgy Rylov

เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเบ‚เปเปเบ™เบฐเบ™เปเบฒเปƒเบซเป‰เบ—เปˆเบฒเบ™เบญเปˆเบฒเบ™เบšเบปเบ”เบšเบฑเบ™เบ—เบถเบเบ‚เบญเบ‡เบšเบปเบ”เบฅเบฒเบเบ‡เบฒเบ™เบ•เบปเป‰เบ™เบ›เบต 2020 เป‚เบ”เบ Georgy Rylov โ€œWAL-G: เป‚เบญเบเบฒเบ”เปƒเบซเบกเปˆเปเบฅเบฐเบเบฒเบ™เบ‚เบฐเบซเบเบฒเบเบŠเบธเบกเบŠเบปเบ™โ€

เบœเบนเป‰เบฎเบฑเบเบชเบฒ open-source เบ›เบฐเป€เบŠเบตเบ™เบเบฑเบšเบชเบดเปˆเบ‡เบ—เป‰เบฒเบ—เบฒเบเบซเบผเบฒเบเบขเปˆเบฒเบ‡เบเป‰เบญเบ™เบงเปˆเบฒเบžเบงเบเป€เบ‚เบปเบฒเป€เบ•เบตเบšเป‚เบ•. เบงเบดเบ—เบตเบเบฒเบ™เบ‚เบฝเบ™เบฅเบฑเบเบชเบฐเบ™เบฐเบ—เบตเปˆเบ•เป‰เบญเบ‡เบเบฒเบ™เบซเบผเบฒเบเปเบฅเบฐเบซเบผเบฒเบ, เปเบเป‰เป„เบ‚เบšเบฑเบ™เบซเบฒเบซเบผเบฒเบเปเบฅเบฐเบซเบผเบฒเบเปเบฅเบฐเบˆเบฑเบ”เบเบฒเบ™เป€เบšเบดเปˆเบ‡เบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเบ”เบถเบ‡เบซเบผเบฒเบเปเบฅเบฐเบซเบผเบฒเบ? เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰ WAL-G (เป€เบ„เบทเปˆเบญเบ‡เบกเบทเบชเปเบฒเบฎเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เบชเปเบฒเบฅเบฑเบš PostgreSQL) เป€เบ›เบฑเบ™เบ•เบปเบงเบขเปˆเบฒเบ‡, เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเบˆเบฐเบšเบญเบเบ—เปˆเบฒเบ™เบงเปˆเบฒเบžเบงเบเป€เบฎเบปเบฒเปเบเป‰เป„เบ‚เบšเบฑเบ™เบซเบฒเป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เป„เบ”เป‰เปเบ™เบงเปƒเบ”เป‚เบ”เบเบเบฒเบ™เป€เบ›เบตเบ”เบซเบผเบฑเบเบชเบนเบ”เบเบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒ Open-source เบขเบนเปˆเบกเบฐเบซเบฒเบงเบดเบ—เบฐเบเบฒเป„เบฅ, เบชเบดเปˆเบ‡เบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบšเบฑเบ™เบฅเบธเป„เบ”เป‰เปเบฅเบฐเบšเปˆเบญเบ™เบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบˆเบฐเบเป‰เบฒเบงเบ•เปเปˆเป„เบ›.

WAL-G: เบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”เปƒเปเปˆ เปเบฅเบฐเบเบฒเบ™เบ‚เบฐเบซเบเบฒเบเบ•เบปเบงเบ‚เบญเบ‡เบŠเบธเบกเบŠเบปเบ™. Georgy Rylov

เบชเบฐเบšเบฒเบเบ”เบตเบ—เบธเบเป†เบ„เบปเบ™! เบ‚เป‰เบญเบเป€เบ›เบฑเบ™เบœเบนเป‰เบžเบฑเบ”เบ—เบฐเบ™เบฒ Yandex เบˆเบฒเบ Yekaterinburg. เปเบฅเบฐเบกเบทเป‰เบ™เบตเป‰เบ‚เป‰เบญเบเบˆเบฐเป€เบงเบปเป‰เบฒเบเปˆเบฝเบงเบเบฑเบš WAL-G.

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

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

WAL-G: เบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”เปƒเปเปˆ เปเบฅเบฐเบเบฒเบ™เบ‚เบฐเบซเบเบฒเบเบ•เบปเบงเบ‚เบญเบ‡เบŠเบธเบกเบŠเบปเบ™. Georgy Rylov

เปƒเบ™เบŠเบธเบ”เบ—เบตเปˆเบœเปˆเบฒเบ™เบกเบฒเบกเบตเบšเบปเบ”เบฅเบฒเบเบ‡เบฒเบ™เบˆเปเบฒเบ™เบงเบ™เบซเบผเบฒเบเป‚เบ”เบ Andrei Borodin เปเบฅเบฐ Vladimir Leskov. เบกเบตเบˆเปเบฒเบ™เบงเบ™เบซเบผเบฒเบเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ. เปเบฅเบฐเบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เป€เบงเบปเป‰เบฒเบเปˆเบฝเบงเบเบฑเบš WAL-G เป€เบ›เบฑเบ™เป€เบงเบฅเบฒเบซเบฅเบฒเบเบ›เบตเปเบฅเป‰เบง.

clck.ru/F8ioz โ€” https://www.highload.ru/moscow/2018/abstracts/3964

clck.ru/Ln8Qw โ€” https://www.highload.ru/moscow/2019/abstracts/5981

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

WAL-G: เบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”เปƒเปเปˆ เปเบฅเบฐเบเบฒเบ™เบ‚เบฐเบซเบเบฒเบเบ•เบปเบงเบ‚เบญเบ‡เบŠเบธเบกเบŠเบปเบ™. Georgy Rylov

เบชเบญเบ‡เบชเบฒเบกเบ›เบตเบเปˆเบญเบ™, WAL-G เป€เบ›เบฑเบ™เป‚เบ„เบ‡เบเบฒเบ™เบ‚เบฐเบซเบ™เบฒเบ”เบ™เป‰เบญเบเบžเปเบชเบปเบกเบ„เบงเบ™เบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบฎเบฑเบšเบˆเบฒเบ Citus Data. เปเบฅเบฐเบžเบงเบเป€เบฎเบปเบฒเบžเบฝเบ‡เปเบ•เปˆเป€เบญเบปเบฒเบกเบฑเบ™. เปเบฅเบฐเบกเบฑเบ™เป„เบ”เป‰เบ–เบทเบเบžเบฑเบ”เบ—เบฐเบ™เบฒเป‚เบ”เบเบ„เบปเบ™เบซเบ™เบถเปˆเบ‡.

เปเบฅเบฐเบžเบฝเบ‡เปเบ•เปˆ WAL-G เบšเปเปˆเบกเบต:

  • เบชเบณเบฎเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เบˆเบฒเบเป€เบ„เบทเปˆเบญเบ‡เบˆเบณเบฅเบญเบ‡.
  • เบšเปเปˆเบกเบตเบ‚เปเป‰เบกเบนเบ™เบชเบณเบฎเบญเบ‡เบ—เบตเปˆเป€เบžเบตเปˆเบกเบ‚เบถเป‰เบ™.
  • เบšเปเปˆเบกเบตเบเบฒเบ™เบชเบณเบฎเบญเบ‡เบ‚เปเป‰เบกเบนเบ™ WAL-Delta.
  • เปเบฅเบฐโ€‹เบเบฑเบ‡โ€‹เบ‚เบฒเบ”โ€‹เบซเบฒเบโ€‹เป„เบ›โ€‹เบซเบผเบฒเบโ€‹เบขเปˆเบฒเบ‡.

เปƒเบ™เป„เบฅเบเบฐเบชเบญเบ‡เบชเบฒเบกเบ›เบตเบœเปˆเบฒเบ™เบกเบฒเบ™เบตเป‰, WAL-G เป„เบ”เป‰เป€เบ•เบตเบšเปƒเบซเบเปˆเบซเบผเบฒเบ.

WAL-G: เบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”เปƒเปเปˆ เปเบฅเบฐเบเบฒเบ™เบ‚เบฐเบซเบเบฒเบเบ•เบปเบงเบ‚เบญเบ‡เบŠเบธเบกเบŠเบปเบ™. Georgy Rylov

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

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

WAL-G: เบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”เปƒเปเปˆ เปเบฅเบฐเบเบฒเบ™เบ‚เบฐเบซเบเบฒเบเบ•เบปเบงเบ‚เบญเบ‡เบŠเบธเบกเบŠเบปเบ™. Georgy Rylov

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

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

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

เบžเบฒเบเปƒเบ•เป‰เป€เบ‡เบทเปˆเบญเบ™เป„เบ‚เปƒเบ”เบ—เบตเปˆเบ™เบฑเบเบฎเบฝเบ™ PR เบ–เบทเบเบเบญเบกเบฎเบฑเบš?

  • เบžเบงเบเป€เบ‚เบปเบฒเบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบเบงเบกเป€เบญเบปเบฒเบฅเบฐเบซเบฑเบ”เบ‚เบญเบ‡เบžเบงเบเป€เบ‚เบปเบฒเบ”เป‰เบงเบเบเบฒเบ™เบ—เบปเบ”เบชเบญเบš. เบ—เบธเบเบชเบดเปˆเบ‡เบ—เบธเบเบขเปˆเบฒเบ‡เบ„เบงเบ™เบˆเบฐเป€เบเบตเบ”เบ‚เบถเป‰เบ™เปƒเบ™ CI.
  • เปเบฅเบฐเบžเบงเบเป€เบฎเบปเบฒเบเบฑเบ‡เบœเปˆเบฒเบ™ 2 เบเบฒเบ™เบ—เบปเบšเบ—เบงเบ™เบ„เบทเบ™. เบซเบ™เบถเปˆเบ‡เป‚เบ”เบ Andrey Borodin เปเบฅเบฐเบซเบ™เบถเปˆเบ‡เป‚เบ”เบเบ‚เป‰เบญเบ.
  • เปเบฅเบฐเบ™เบญเบเบˆเบฒเบเบ™เบฑเป‰เบ™, เป€เบžเบทเปˆเบญเบเบงเบ”เป€เบšเบดเปˆเบ‡เบงเปˆเบฒเบ™เบตเป‰เบˆเบฐเบšเปเปˆเบ—เปเบฒเบฅเบฒเบเบชเบดเปˆเบ‡เปƒเบ”เปƒเบ™เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ, เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเปเบเบเบเบฒเบ™เบ›เบฐเบเบญเบšเบเบฒเบ™เบ›เบฐเบเบญเบšเบเบฑเบšเบ„เปเบฒเบซเบกเบฑเป‰เบ™เบชเบฑเบ™เบเบฒเบ™เบตเป‰. เปเบฅเบฐเบžเบงเบเป€เบฎเบปเบฒเบเบงเบ”เป€เบšเบดเปˆเบ‡เปƒเบ™เบเบฒเบ™เบ—เบปเบ”เบชเบญเบš end-to-end เบงเปˆเบฒเบšเปเปˆเบกเบตเบซเบเบฑเบ‡เบฅเบปเป‰เบกเป€เบซเบฅเบง.

เบซเบผเบฑเบเบชเบนเบ”เบžเบดเป€เบชเบ” Open Source

WAL-G: เบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”เปƒเปเปˆ เปเบฅเบฐเบเบฒเบ™เบ‚เบฐเบซเบเบฒเบเบ•เบปเบงเบ‚เบญเบ‡เบŠเบธเบกเบŠเบปเบ™. Georgy Rylov

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

เบชเปเบฒเบฅเบฑเบšเบžเบงเบเป€เบฎเบปเบฒ, เบเปเบฒเป„เบฅเปเบกเปˆเบ™เบˆเบฐเปเบˆเป‰เบ‡:

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

เบœเบปเบ™เบ›เบฐเป‚เบซเบเบ”เบชเปเบฒเบฅเบฑเบšเบ™เบฑเบเบฎเบฝเบ™เปเบกเปˆเบ™เบซเบเบฑเบ‡?

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

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

  • เบ›เบฐเบชเบปเบšเบเบฒเบ™เบ‚เบญเบ‡เบœเบนเป‰เบ›เบฐเบเบญเบšเบชเปˆเบงเบ™เปƒเบ™เปเบซเบผเปˆเบ‡เป€เบ›เบตเบ”.
  • เบฎเบฑเบšเบชเบฒเบเปƒเบ™ CV เบ‚เบญเบ‡เบ—เปˆเบฒเบ™.
  • เบžเบดเบชเบนเบ”เบ•เบปเบงเบ—เปˆเบฒเบ™เป€เบญเบ‡เปเบฅเบฐเบœเปˆเบฒเบ™เบเบฒเบ™เบชเปเบฒเบžเบฒเบ”เปƒเบ™ Yandex.
  • เป€เบ›เบฑเบ™เบชเบฐเบกเบฒเบŠเบดเบ GSoC.
  • +1 เบซเบผเบฑเบเบชเบนเบ”เบžเบดเป€เบชเบ”เบชเบณเบฅเบฑเบšเบœเบนเป‰เบ—เบตเปˆเบ•เป‰เบญเบ‡เบเบฒเบ™เบ‚เบฝเบ™เบฅเบฐเบซเบฑเบ”.

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

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

เบœเบปเบ™เบ›เบฐเป‚เบซเบเบ”เบชเปเบฒเบฅเบฑเบšเบœเบนเป‰เปƒเบŠเป‰เปเบกเปˆเบ™เบซเบเบฑเบ‡?

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

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

WAL-G: เบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”เปƒเปเปˆ เปเบฅเบฐเบเบฒเบ™เบ‚เบฐเบซเบเบฒเบเบ•เบปเบงเบ‚เบญเบ‡เบŠเบธเบกเบŠเบปเบ™. Georgy Rylov

เบชเบฐโ€‹เบซเบ™เบฑเบšโ€‹เบชเบฐโ€‹เบซเบ™เบนเบ™ Tablespacesโ€‹. Tablespaces เปƒเบ™ WAL-G เบ„เบฒเบ”เบงเปˆเบฒเบˆเบฐเป€เบ›เบฑเบ™เบ•เบฑเป‰เบ‡เปเบ•เปˆเบเบฒเบ™เป€เบ›เบตเบ”เบ•เบปเบงเบ‚เบญเบ‡ WAL-G, เป€เบžเบฒเบฐเบงเปˆเบฒ WAL-G เป€เบ›เบฑเบ™เบœเบนเป‰เบชเบทเบšเบ—เบญเบ”เบ‚เบญเบ‡เป€เบ„เบทเปˆเบญเบ‡เบกเบทเบชเปเบฒเบฎเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เบญเบทเปˆเบ™ WAL-E, เบšเปˆเบญเบ™เบ—เบตเปˆเบเบฒเบ™เบชเปเบฒเบฎเบญเบ‡เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเบกเบตเบžเบทเป‰เบ™เบ—เบตเปˆเบ•เบฒเบ•เบฐเบฅเบฒเบ‡เป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™.

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

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

WAL-G: เบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”เปƒเปเปˆ เปเบฅเบฐเบเบฒเบ™เบ‚เบฐเบซเบเบฒเบเบ•เบปเบงเบ‚เบญเบ‡เบŠเบธเบกเบŠเบปเบ™. Georgy Rylov

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

WAL-G: เบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”เปƒเปเปˆ เปเบฅเบฐเบเบฒเบ™เบ‚เบฐเบซเบเบฒเบเบ•เบปเบงเบ‚เบญเบ‡เบŠเบธเบกเบŠเบปเบ™. Georgy Rylov

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

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

WAL-G: เบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”เปƒเปเปˆ เปเบฅเบฐเบเบฒเบ™เบ‚เบฐเบซเบเบฒเบเบ•เบปเบงเบ‚เบญเบ‡เบŠเบธเบกเบŠเบปเบ™. Georgy Rylov

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

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

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

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

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

เบžเบทเป‰เบ™เบ–เบฒเบ™เบญเบทเปˆเบ™เป†

เบ™เบฑเบเบชเบถเบเบชเบฒเบเบฑเบ‡เป„เบ”เป‰เบ™เปเบฒเบžเบงเบเป€เบฎเบปเบฒเบซเบผเบฒเบเบฅเบฑเบเบชเบฐเบ™เบฐเปƒเบ™เป€เบงเบฅเบฒเบ”เบฝเบงเบเบฑเบ™. เป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเบงเปˆเบฒเบขเบนเปˆ Yandex เบžเบงเบเป€เบฎเบปเบฒเปเบ•เปˆเบ‡เบเบดเบ™เบšเปเปˆเบžเบฝเบ‡เปเบ•เปˆ Postgres, เบžเบงเบเป€เบฎเบปเบฒเบเบฑเบ‡เบกเบต MySQL, MongoDB, Redis, ClickHouse, เปƒเบ™เบšเบฒเบ‡เบˆเบธเบ”เบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบ•เป‰เบญเบ‡เบเบฒเบ™เบชเบฒเบกเบฒเบ”เป€เบฎเบฑเบ”เบเบฒเบ™เบชเปเบฒเบฎเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเบกเบตเบเบฒเบ™เบŸเบทเป‰เบ™เบ•เบปเบงเปเบšเบš point-in-time เบชเปเบฒเบฅเบฑเบš MySQL, เปเบฅเบฐเป€เบžเบทเปˆเบญเปƒเบซเป‰เบกเบตเป‚เบญเบเบฒเบ”เบ—เบตเปˆเบˆเบฐเบญเบฑเบšเป‚เบซเบฅเบ”. เป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒเป„เบ›เบŸเบฑเบ‡เป„เบ”เป‰.

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

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

WAL-G: เบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”เปƒเปเปˆ เปเบฅเบฐเบเบฒเบ™เบ‚เบฐเบซเบเบฒเบเบ•เบปเบงเบ‚เบญเบ‡เบŠเบธเบกเบŠเบปเบ™. Georgy Rylov

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

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

เบเบฒเบ™เบเปเปˆเบชเป‰เบฒเบ‡เบ•เปˆเบฒเบ‡เป†เบชเปเบฒเบฅเบฑเบš Postgres, MySQL, MongoDB, Redis

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

WAL-G: เบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”เปƒเปเปˆ เปเบฅเบฐเบเบฒเบ™เบ‚เบฐเบซเบเบฒเบเบ•เบปเบงเบ‚เบญเบ‡เบŠเบธเบกเบŠเบปเบ™. Georgy Rylov

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

WAL-G: เบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”เปƒเปเปˆ เปเบฅเบฐเบเบฒเบ™เบ‚เบฐเบซเบเบฒเบเบ•เบปเบงเบ‚เบญเบ‡เบŠเบธเบกเบŠเบปเบ™. Georgy Rylov

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

เบ™เบตเป‰เปเบกเปˆเบ™ MySQL, เป€เบŠเบดเปˆเบ‡เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบชเปเบฒเบฎเบญเบ‡เป‚เบ”เบเปƒเบŠเป‰ WAL-G เปƒเบ™เบ—เบฒเบ‡เบ™เบตเป‰เบซเบผเบฒเบเบเบงเปˆเบฒเบซเบ™เบถเปˆเบ‡เบ›เบต.

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

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

WAL-G: เบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”เปƒเปเปˆ เปเบฅเบฐเบเบฒเบ™เบ‚เบฐเบซเบเบฒเบเบ•เบปเบงเบ‚เบญเบ‡เบŠเบธเบกเบŠเบปเบ™. Georgy Rylov

เบ™เบฑเบเบฎเบฝเบ™เป€เบญเบปเบฒเบซเบเบฑเบ‡เบญเบตเบ? เบžเบงเบเป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒเป„เบ”เป‰เบ™เปเบฒเป€เบญเบปเบฒเบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบเบฒเบ™เป€เบ‚เบปเป‰เบฒเบฅเบฐเบซเบฑเบ” Libsodium เบเบฑเบš WAL-G.

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

WAL-G: เบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”เปƒเปเปˆ เปเบฅเบฐเบเบฒเบ™เบ‚เบฐเบซเบเบฒเบเบ•เบปเบงเบ‚เบญเบ‡เบŠเบธเบกเบŠเบปเบ™. Georgy Rylov

เบœเบปเบ™เบ‚เบญเบ‡เบเบฒเบ™เบ—เบปเบ”เบฅเบญเบ‡เบ™เบตเป‰เปเบกเปˆเบ™เบซเบเบฑเบ‡?

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

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

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

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

เปเบœเบ™เบชเปเบฒเบฅเบฑเบšเบญเบฐเบ™เบฒเบ„เบปเบ”

เบžเบงเบเป€เบฎเบปเบฒเบกเบตเปเบœเบ™เบเบฒเบ™เบญเบฑเบ™เปƒเบ”เบชเปเบฒเบฅเบฑเบšเบญเบฐเบ™เบฒเบ„เบปเบ”?

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

  • เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบ„เบงเบฒเบกเบ–เบทเบเบ•เป‰เบญเบ‡เบ‚เบญเบ‡เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเป€เบชเบฑเป‰เบ™เป€เบงเบฅเบฒเปƒเบ™เปเบŸเป‰เบกเบˆเบฑเบ”เป€เบเบฑเบšเบ‚เปเป‰เบกเบนเบ™เบชเบณเบฎเบญเบ‡เบ‚เบญเบ‡เบเบธเปˆเบก HA. เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เป€เบฎเบฑเบ”เป„เบ”เป‰เบ”เป‰เบงเบ WAL-G. เปเบฅเบฐเบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเบ„เบดเบ”เบงเปˆเบฒเบžเบงเบเป€เบฎเบปเบฒเบˆเบฐเบกเบตเบ™เบฑเบเบฎเบฝเบ™เบ—เบตเปˆเบˆเบฐเบฎเบฑเบšเบœเบดเบ”เบŠเบญเบšเป€เบฅเบทเปˆเบญเบ‡เบ™เบตเป‰.
  • เบžเบงเบโ€‹เป€เบฎเบปเบฒโ€‹เบกเบตโ€‹เบœเบนเป‰โ€‹เบฎเบฑเบšโ€‹เบœเบดเบ”โ€‹เบŠเบญเบšโ€‹เบชเปเบฒโ€‹เบฅเบฑเบšโ€‹เบเบฒเบ™โ€‹เป‚เบญเบ™โ€‹เบชเปเบฒโ€‹เบฎเบญเบ‡โ€‹เบ‚เปเป‰โ€‹เบกเบนเบ™โ€‹เปเบฅเบฐ WAL เบฅเบฐโ€‹เบซเบงเปˆเบฒเบ‡โ€‹เบ„โ€‹เบฅเบฒเบงโ€‹.
  • เปเบฅเบฐเบžเบงเบเป€เบฎเบปเบฒเบšเปเปˆเบ”เบปเบ™เบกเบฒเบ™เบตเป‰เป„เบ”เป‰เป€เบœเบตเบเปเบœเปˆเปเบ™เบงเบ„เบงเบฒเบกเบ„เบดเบ”เบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบชเบฒเบกเบฒเบ”เป€เบฅเบฑเปˆเบ‡ WAL-G เบ•เบทเปˆเบกเบญเบตเบเป‚เบ”เบเบเบฒเบ™ unpacking incremental backups เป‚เบ”เบเบšเปเปˆเบกเบตเบเบฒเบ™เบ‚เบฝเบ™เบซเบ™เป‰เบฒเปƒเบซเบกเปˆเปเบฅเบฐ optimizing archives เบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบชเบปเปˆเบ‡เป„เบ›เบ™เบฑเป‰เบ™.

เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เปเบšเปˆเบ‡เบ›เบฑเบ™เบžเบงเบเบกเบฑเบ™เป„เบ”เป‰เบ—เบตเปˆเบ™เบตเป‰

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

WAL-G: เบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”เปƒเปเปˆ เปเบฅเบฐเบเบฒเบ™เบ‚เบฐเบซเบเบฒเบเบ•เบปเบงเบ‚เบญเบ‡เบŠเบธเบกเบŠเบปเบ™. Georgy Rylov

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

WAL-G: เบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”เปƒเปเปˆ เปเบฅเบฐเบเบฒเบ™เบ‚เบฐเบซเบเบฒเบเบ•เบปเบงเบ‚เบญเบ‡เบŠเบธเบกเบŠเบปเบ™. Georgy Rylov

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

เบชเบฐเบšเบฒเบเบ”เบต! เบ‚เบญเบšเปƒเบˆเบชเปเบฒเบฅเบฑเบšเบšเบปเบ”เบฅเบฒเบเบ‡เบฒเบ™! เบ„เปเบฒเบ–เบฒเบกเบเปˆเบฝเบงเบเบฑเบš WAL-G, เปเบ•เปˆเบšเปเปˆเปเบกเปˆเบ™เบเปˆเบฝเบงเบเบฑเบš Postgres. WAL-G เบชเบณเบฎเบญเบ‡ MySQL เปเบฅเบฐเป‚เบ—เบซเบฒเบเบฒเบ™เบชเปเบฒเบฎเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เป€เบžเบตเปˆเบกเป€เบ•เบตเบก. เบ–เป‰เบฒเบžเบงเบเป€เบฎเบปเบฒเป€เบญเบปเบฒเบเบฒเบ™เบ•เบดเบ”เบ•เบฑเป‰เบ‡เบ—เบตเปˆเบ—เบฑเบ™เบชเบฐเป„เบซเบกเปƒเบ™ CentOS เปเบฅเบฐเบ–เป‰เบฒเบ—เปˆเบฒเบ™เบ•เบดเบ”เบ•เบฑเป‰เบ‡ MySQL, MariDB เบˆเบฐเบ–เบทเบเบ•เบดเบ”เบ•เบฑเป‰เบ‡. เบˆเบฒเบเป€เบงเบตเบŠเบฑเบ™ 10.3 เบšเปเปˆเบฎเบญเบ‡เบฎเบฑเบšเบเบฒเบ™เบชเบณเบฎเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เบžเบดเป€เบชเบ”, เบเบฒเบ™เบชเบณเบฎเบญเบ‡เบ‚เปเป‰เบกเบนเบ™ MariDB เปเบกเปˆเบ™เบฎเบญเบ‡เบฎเบฑเบš. เป€เบˆเบปเป‰เบฒเป€เบ›เบฑเบ™เปเบ™เบงเปƒเบ”เบเบฑเบšเป€เบฅเบทเปˆเบญเบ‡เบ™เบตเป‰?

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

เบชเบฐโ€‹เบšเบฒเบโ€‹เบ”เบตโ€‹เบ•เบญเบ™โ€‹เบชเบงเบฒเบ เบ‚เบญเบšเปƒเบˆเบชเปเบฒเบฅเบฑเบšเบšเบปเบ”เบฅเบฒเบเบ‡เบฒเบ™! เบ„เปเบฒเบ–เบฒเบกเบเปˆเบฝเบงเบเบฑเบšเบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”เปƒเบซเบกเปˆเบ—เบตเปˆเป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰. เบ—เปˆเบฒเบ™เบžเป‰เบญเบกเบ—เบตเปˆเบˆเบฐเป€เบฎเบฑเบ”เปƒเบซเป‰ WAL-G เป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบšเป€เบ—เบšเป€เบžเบทเปˆเบญเปƒเบซเป‰เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบชเปเบฒเบฎเบญเบ‡เปƒเบชเปˆเป€เบ—เบšเป„เบ”เป‰เบšเป?

เบเบฒเบ™เบชเปเบฒเบฎเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เป€เบเบฑเบšเบฎเบฑเบเบชเบฒ tape เบ›เบฒเบเบปเบ”เบ‚เบทเป‰เบ™เบซเบกเบฒเบเบ„เบงเบฒเบกเบงเปˆเบฒ?

เปเบกเปˆเบ™เปเบฅเป‰เบง.

เบกเบต Andrei Borodin, เบœเบนเป‰เบ—เบตเปˆเบชเบฒเบกเบฒเบ”เบ•เบญเบšเบ„เปเบฒเบ–เบฒเบกเบ™เบตเป‰เป„เบ”เป‰เบ”เบตเบเบงเปˆเบฒเบ‚เป‰เบญเบ.

(Andrey) เปเบกเปˆเบ™เปเบฅเป‰เบง, เบ‚เบญเบšเปƒเบˆเบชเปเบฒเบฅเบฑเบšเบ„เปเบฒเบ–เบฒเบก! เบžเบงเบโ€‹เป€เบฎเบปเบฒโ€‹เป„เบ”เป‰โ€‹เบกเบตโ€‹เบเบฒเบ™โ€‹เบฎเป‰เบญเบ‡โ€‹เบ‚เปโ€‹เปƒเบซเป‰โ€‹เป‚เบญเบ™โ€‹เบชเปเบฒโ€‹เบฎเบญเบ‡โ€‹เบ‚เปเป‰โ€‹เบกเบนเบ™โ€‹เปƒเบชเปˆ tape เบˆเบฒเบโ€‹เบเบฒเบ™โ€‹เป€เบเบฑเบšโ€‹เบฎเบฑเบโ€‹เบชเบฒโ€‹เบ„เบฅเบฒเบงโ€‹. เปเบฅเบฐเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ™เบตเป‰ เป€เบฅเบทเปˆเบญเบ เป‚เบญเบ™เบฅเบฐเบซเบงเปˆเบฒเบ‡เป€เบกเบ„. เป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเบงเปˆเบฒ cloud-to-cloud transfer เปเบกเปˆเบ™เบชเบฐเบšเบฑเบšเบ—เบปเปˆเบงเป„เบ›เบ‚เบญเบ‡เบเบฒเบ™เป‚เบญเบ™ tape. เบ™เบญเบเบˆเบฒเบเบ™เบฑเป‰เบ™, เบžเบงเบเป€เบฎเบปเบฒเบกเบตเบชเบฐเบ–เบฒเบ›เบฑเบ”เบ•เบฐเบเบฐเบเปเบฒเบ—เบตเปˆเบชเบฒเบกเบฒเบ”เบ‚เบฐเบซเบเบฒเบเป„เบ”เป‰เปƒเบ™เปเบ‡เปˆเบ‚เบญเบ‡เบเบฒเบ™เป€เบเบฑเบšเบฎเบฑเบเบชเบฒ. เป‚เบ”เบเบงเบดเบ—เบตเบ—เบฒเบ‡เบเบฒเบ™, Storoges เบซเบผเบฒเบเบ„เบปเบ™เป„เบ”เป‰เบ–เบทเบเบ‚เบฝเบ™เป‚เบ”เบเบ™เบฑเบเบฎเบฝเบ™. เปเบฅเบฐเบ–เป‰เบฒเบ—เปˆเบฒเบ™เบ‚เบฝเบ™ Storage เบชเปเบฒเบฅเบฑเบš tape, เปเบ™เปˆเบ™เบญเบ™, เบกเบฑเบ™เบˆเบฐเป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™. เบžเบงเบเป€เบฎเบปเบฒเบžเป‰เบญเบกเบ—เบตเปˆเบˆเบฐเบžเบดเบˆเบฒเบฅเบฐเบ™เบฒเบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเบ”เบถเบ‡. เบขเบนเปˆเบ—เบตเปˆเบ™เบฑเป‰เบ™เบ—เปˆเบฒเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบ‚เบฝเบ™เป„เบŸเบฅเปŒ, เบญเปˆเบฒเบ™เป„เบŸเบฅเปŒ. เบ–เป‰เบฒเบ—เปˆเบฒเบ™เป€เบฎเบฑเบ”เบชเบดเปˆเบ‡เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เปƒเบ™ Go, เบ›เบปเบเบเบฐเบ•เบดเปเบฅเป‰เบงเบ—เปˆเบฒเบ™เบˆเบฐเบชเบดเป‰เบ™เบชเบธเบ”เบ”เป‰เบงเบเบฅเบฐเบซเบฑเบ” 50 เปเบ–เบง. เปเบฅเบฐเบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™ tape เบˆเบฐเป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เปƒเบ™ WAL-G.

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

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

เบ™เบฑเบเบฎเบฝเบ™เบšเปเปˆเบกเบตเบ›เบฐเบชเบปเบšเบเบฒเบ™เบซเบผเบฒเบ. เบเบฒเบ™เบเบงเบ”เบชเบญเบšเปƒเบŠเป‰เป€เบงเบฅเบฒเบซเบผเบฒเบเบšเป?

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

เบ‚เบญเบšเปƒเบˆเบชเปเบฒเบฅเบฑเบšเบšเบปเบ”เบฅเบฒเบเบ‡เบฒเบ™! เบเปˆเบญเบ™เบซเบ™เป‰เบฒเบ™เบตเป‰, Andrey Borodin เป„เบ”เป‰เบเปˆเบฒเบงเบงเปˆเบฒ archive_command เปƒเบ™ WAL-G เบ„เบงเบ™เบ–เบทเบเป€เบญเบตเป‰เบ™เป‚เบ”เบเบเบปเบ‡. เปเบ•เปˆเปƒเบ™เบเปเบฅเบฐเบ™เบตเบ‚เบญเบ‡เบšเบฒเบ‡เบ›เบฐเป€เบžเบ”เบ‚เบญเบ‡เป„เบชเป‰เบ•เบญเบ‡ cluster, เบžเบงเบเป€เบฎเบปเบฒเบ•เป‰เบญเบ‡เบเบฒเบ™เป€เบซเบ”เบœเบปเบ™เป€เบžเบตเปˆเบกเป€เบ•เบตเบกเป€เบžเบทเปˆเบญเบเปเบฒเบ™เบปเบ”เบ‚เปเป‰เบ—เบตเปˆเบˆเบฐเบชเบปเปˆเบ‡ shafts เป„เบ”เป‰. เป€เบˆเบปเป‰เบฒเปเบเป‰เป„เบ‚เบšเบฑเบ™เบซเบฒเบ™เบตเป‰เบ”เป‰เบงเบเบ•เบปเบงเป€เบญเบ‡เปเบ™เบงเปƒเบ”?

เบšเบฑเบ™เบซเบฒเบ‚เบญเบ‡เป€เบˆเบปเป‰เบฒเปเบกเปˆเบ™เบซเบเบฑเบ‡เบขเบนเปˆเบ™เบตเป‰? เปƒเบซเป‰เป€เบงเบปเป‰เบฒเบงเปˆเบฒเบ—เปˆเบฒเบ™เบกเบต replica synchronous เบ—เบตเปˆเบ—เปˆเบฒเบ™เบเปเบฒเบฅเบฑเบ‡เป€เบฎเบฑเบ”เบเบฒเบ™เบชเปเบฒเบฎเบญเบ‡เบ‚เปเป‰เบกเบนเบ™? เบซเบผเบทเบงเปˆเบฒเปเบ™เบงเปƒเบ”?

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

(เบ„เบงเบฒเบกเบเบฐเบˆเปˆเบฒเบ‡เปเบˆเป‰เบ‡: เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบเปเบฒเบˆเบฑเบ”เบชเบฐเบ„เบดเบšเปเบเบฐ เปƒเบ™โ€‹เบšเบฑเบ™โ€‹เบซเบฒโ€‹เบ™เบตเป‰โ€‹)

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

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

เบกเบฑเบ™เบญเบญเบเปเบฅเป‰เบงเบšเป?

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

เป€เบกเบทเปˆเบญเปƒเบ”เบ—เบตเปˆเบ„เบฒเบ”เบซเบงเบฑเบ‡?

เบ‚เป‰เบญเบโ€‹เบšเปเปˆโ€‹เบฎเบนเป‰. เบฅเปเบ–เป‰เบฒเป€เบ”เบทเบญเบ™เบซเบ™เบถเปˆเบ‡, เบžเบงเบเป€เบฎเบปเบฒเบˆเบฐเบเบงเบ”เบชเบญเบšเปƒเบซเป‰เปเบ™เปˆเปƒเบˆเบงเปˆเบฒ.

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

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