WAL-G: жаңы мүмкүнчүлүктөр жана коомчулуктун кеңейиши. Георгий Рылов

Мен сизге Георгий Рыловдун 2020-жылдын башында баяндамасынын стенограммасын окууну сунуштайм "WAL-G: жаңы мүмкүнчүлүктөр жана коомчулуктун кеңейиши"

Ачык булак тейлөөчүлөрү өскөн сайын көптөгөн кыйынчылыктарга туш болушат. Барган сайын көбүрөөк талап кылынган функцияларды кантип жазуу керек, барган сайын көбүрөөк көйгөйлөрдү чечүү жана барган сайын көбүрөөк тартуу сурамдарын көрүү үчүн кантип башкаруу керек? Мисал катары WAL-G (PostgreSQL үчүн резервдик курал) колдонуп, мен сизге университетте Ачык булактарды өнүктүрүү курсун ачуу менен бул көйгөйлөрдү кантип чечкенибизди, эмнеге жетиштик жана мындан ары кайда жыларыбызды айтып берем.

WAL-G: жаңы мүмкүнчүлүктөр жана коомчулуктун кеңейиши. Георгий Рылов

Баарына дагы бир жолу салам! Мен Екатеринбургдан Яндекс иштеп чыгуучусумун. Ал эми бүгүн мен WAL-G жөнүндө сүйлөшөм.

Отчеттун аталышында камдык көчүрмөлөр жөнүндө айтылган эмес. WAL-G деген эмне экенин ким билет? Же баары билет бекен? Билбесең колуңду көтөр. Ассаламу алейкум, сен отчетко келип, эмне жөнүндө экенин билбейсиң.

Бүгүн эмне болорун айтып берейин. Ошентип, биздин команда бир топ убакыттан бери резервдик көчүрмөлөрдү жасап жатат. Бул дагы бир катардагы отчет, анда биз маалыматтарды кантип коопсуз, коопсуз, ыңгайлуу жана натыйжалуу сактайбыз.

WAL-G: жаңы мүмкүнчүлүктөр жана коомчулуктун кеңейиши. Георгий Рылов

Буга чейинки серияларда Андрей Бородин менен Владимир Лесковдун көптөгөн баяндамалары бар болчу. Арабызда көп болгон. Ал эми биз 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: жаңы мүмкүнчүлүктөр жана коомчулуктун кеңейиши. Георгий Рылов

Бир нече жыл мурун, WAL-G биз Citus Dataдан алган бир топ кичинекей долбоор болчу. А биз аны жөн эле алдык. Ал эми аны бир адам иштеп чыккан.

Ал эми бир гана WAL-G болгон эмес:

  • Репликадан камдык көчүрмө.
  • Эч кандай кошумча камдык көчүрмөлөр болгон эмес.
  • WAL-Delta камдык көчүрмөлөрү болгон эмес.
  • Жана дагы эле көп нерсе жок болчу.

Бул бир нече жыл ичинде, WAL-G абдан өстү.

WAL-G: жаңы мүмкүнчүлүктөр жана коомчулуктун кеңейиши. Георгий Рылов

Ал эми 2020-жылга чейин жогоруда айтылгандардын баары пайда болгон. Буга бизде азыр бар нерсе кошулду:

  • GitHubда 1ден ашык жылдыз.
  • 150 айры.
  • 15ке жакын ачык пиар.
  • Жана дагы көптөгөн салым кошкондор.
  • Жана ар дайым ачык маселелер. Бул биз күн сайын ал жакка барып, бул жөнүндө бир нерсе кылганыбызга карабастан.

WAL-G: жаңы мүмкүнчүлүктөр жана коомчулуктун кеңейиши. Георгий Рылов

Жана биз бул долбоор биздин көбүрөөк көңүл буруубузду талап кылат деген жыйынтыкка келдик, ал тургай биз өзүбүздүн Яндексте башкарылуучу маалымат базалары кызматыбыз үчүн эч нерсени ишке ашыруунун кереги жок.

Ал эми 2018-жылдын күзүндө бир жерде биздин башыбызга бир идея келди. Адатта, командада кээ бир функцияларды иштеп чыгуунун же колуңуз жетишсиз болсо, мүчүлүштүктөрдү оңдоонун бир нече жолу бар. Мисалы, сиз башка иштеп чыгуучуну жалдап, ага акча төлөй аласыз. Же болбосо, бир аз убакытка стажировкага кабыл алып, ага бир аз айлык акы төлөй аласыз. Бирок дагы эле адамдардын абдан чоң тобу бар, алардын айрымдары кодду кантип жазууну билишет. Сиз коддун сапаты кандай экенин дайыма эле биле бербейсиз.

Биз ойлонуп, студенттерди тартууга аракет кылууну чечтик. Бирок студенттер биз менен бардык нерсеге катышпайт. Алар иштин бир бөлүгүн гана аткарышат. Жана алар, мисалы, тесттерди жазып, мүчүлүштүктөрдү оңдоп, негизги функционалдуулукка таасирин тийгизбеген функцияларды ишке ашырышат. Негизги функционал - резервдик көчүрмөлөрдү түзүү жана резервдик көчүрмөлөрдү калыбына келтирүү. Эгерде биз камдык көчүрмөнү түзүүдө ката кетирсек, биз маалыматтарды жоготуп алабыз. Анан муну эч ким каалабайт, албетте. Ар бир адам баары абдан коопсуз болушун каалайт. Ошондуктан, албетте, биз өзүбүзгө караганда азыраак ишенген кодго жол бергибиз келбейт. Башкача айтканда, ар кандай сын эмес кодду биз кошумча жумушчуларыбыздан алууну каалайбыз.

Студенттик PR кандай шарттарда кабыл алынат?

  • Алар тесттер менен кодун жабууга милдеттүү. Баары CIде болушу керек.
  • Ошондой эле биз 2 кароодон өтөбүз. Бири Андрей Бородин, бири мен.
  • Кошумчалай кетсек, бул биздин кызматта эч нерсе бузуп албасын текшерүү үчүн, мен бул милдеттенме менен ассамблеяны өзүнчө жүктөйм. Жана биз эч нерседен майнап чыкпаганын аягына чейин текшеребиз.

Ачык булак боюнча атайын курс

WAL-G: жаңы мүмкүнчүлүктөр жана коомчулуктун кеңейиши. Георгий Рылов

Бул эмне үчүн керек жана эмне үчүн бул жөнүндө бир аз, бул мага сонун идея болуп көрүнөт.

Биз үчүн пайда айкын:

  • Биз кошумча кол алабыз.
  • Ал эми биз акылдуу код жазган акылдуу студенттердин арасынан командага талапкерлерди издеп жатабыз.

Студенттер үчүн кандай пайдасы бар?

Алар анча деле айкын болушу мүмкүн, анткени студенттер, жок дегенде, алар жазган код үчүн акча алышпайт, бирок алардын студенттик жазуулары үчүн гана баа алышат.

Мен алардан бул тууралуу сурадым. Жана алардын сөздөрүндө:

  • Ачык булактагы салым кошуучу тажрыйбасы.
  • Резюмеңизде сызык алыңыз.
  • Өзүңүздү далилдеп, Яндексте интервьюдан өтүңүз.
  • GSoC мүчөсү болуңуз.
  • +1 Код жазгысы келгендер үчүн атайын курс.

Курс кандайча түзүлгөнү тууралуу айтпай эле коёюн. Мен жөн гана WAL-G негизги долбоор болгонун айта кетейин. Бул курска Odyssey, PostgreSQL жана ClickHouse сыяктуу долбоорлорду да киргиздик.

Жана алар бул курста эле проблемаларды эмес, дипломдорду, курстук иштерди да беришти.

Колдонуучулар үчүн пайдасы жөнүндө эмне айтууга болот?

Эми сизди абдан кызыктырган бөлүккө өтөбүз. Мунун сага эмне пайдасы бар? Кеп окуучулардын бир топ мүчүлүштүктөрдү оңдогондугунда. Жана сиз бизден сураган өтүнүч функцияларын жасадык.

Ал эми сиз көптөн бери эңсеп жүргөн жана ишке ашкан нерселер тууралуу айтып берейин.

WAL-G: жаңы мүмкүнчүлүктөр жана коомчулуктун кеңейиши. Георгий Рылов

Tablespaces колдоо. WAL-Gдеги таблица мейкиндиктери, кыязы, WAL-G чыккандан бери күтүлгөн, анткени WAL-G башка камдык көчүрмөчү WAL-E инструментинин мураскери, мында стол мейкиндиктери менен маалымат базасынын камдык көчүрмөлөрү колдоого алынган.

Бул эмне экенин жана эмне үчүн зарыл экенин кыскача эскертип кетейин. Адатта, бардык Postgres маалыматтарыңыз база деп аталган файл тутумундагы бир каталогду ээлейт. Жана бул каталог Postgres талап кылган бардык файлдарды жана подкаталогдорду камтыйт.

Tablespaces - Postgres маалыматтарын камтыган каталогдор, бирок алар базалык каталогдон тышкары жайгашкан эмес. Слайд таблицалар базалык каталогдон тышкары жайгашканын көрсөтөт.

WAL-G: жаңы мүмкүнчүлүктөр жана коомчулуктун кеңейиши. Георгий Рылов

Бул Postgres өзү үчүн кандай көрүнөт? Негизги каталогдо pg_tblspc өзүнчө подкаталоги бар. Жана ал базалык каталогдон тышкары Postgres маалыматтарын камтыган каталогдорго символдук шилтемелерди камтыйт.

WAL-G: жаңы мүмкүнчүлүктөр жана коомчулуктун кеңейиши. Георгий Рылов

Мунун баарын колдонгондо, сиз үчүн бул буйруктар ушул сыяктуу көрүнүшү мүмкүн. Башкача айтканда, сиз белгилүү бир таблица мейкиндигинде таблица түзүп, анын азыр кайда экенин көрөсүз. Бул акыркы эки саптар, акыркы эки буйрук деп аталат. Ал жерде кандайдыр бир жол бар экени көрүнүп турат. Бирок иш жүзүндө бул чыныгы жол эмес. Бул базалык каталогдон таблица мейкиндигине чейинки префикстүү жол. Жана ал жерден сиздин чыныгы маалыматтарыңызга алып баруучу символдук шилтеме менен дал келет.

Биз мунун бардыгын биздин командада колдонбойбуз, бирок аны WAL-Gге өтүүнү каалаган башка көптөгөн WAL-E колдонуучулары колдонгон, бирок бул аларды токтотуп жаткан. Бул азыр колдоого алынат.

WAL-G: жаңы мүмкүнчүлүктөр жана коомчулуктун кеңейиши. Георгий Рылов

Биздин атайын курстун бизге алып келген дагы бир өзгөчөлүгү - бул кармаш. Постгреске караганда Oracle менен көбүрөөк иштеген адамдар catchup жөнүндө билишет.

Бул эмне жөнүндө кыскача. Биздин кызматыбыздагы кластер топологиясы, адатта, ушул сыяктуу көрүнүшү мүмкүн. Бизде кожоюн бар. Андан алдын ала жазуу журналын алып турган реплика бар. Ал эми реплика мастерге учурда кайсы LSNде экенин айтып берет. Ал эми ушуга параллелдүү бир жерде журналды архивдештирүүгө болот. Жана журналды архивдөөдөн тышкары, камдык көчүрмөлөр да булутка жөнөтүлөт. Жана дельта камдык көчүрмөлөрү жөнөтүлөт.

Көйгөй эмне болушу мүмкүн? Сизде жетишерлик чоң маалымат базасы болгондо, сиздин репликаңыз кожоюндан бир топ артта кала баштайт. Жана ал ушунчалык артта калгандыктан, аны эч качан кууп жете албайт. Бул көйгөй, адатта, кандайдыр бир жол менен чечилиши керек.

Эң оңой жолу - репликаны алып салуу жана аны кайра жүктөө, анткени ал эч качан жете албайт жана көйгөйдү чечүү керек. Бирок бул абдан көп убакыт, анткени 10 ТБ маалымат базасынын толук резервдик көчүрмөсүн калыбына келтирүү абдан, абдан узак убакыт. Анан ушундай көйгөйлөр жаралса, мунун баарын тезирээк бүтүргүбүз келет. Жана дал ушул үчүн кармалып турат.

Catchup булутта ушундай жол менен сакталган дельта камдык көчүрмөлөрүн колдонууга мүмкүндүк берет. Учурда артта калган реплика кайсы LSN күйүп жатканын айтасыз жана ошол LSN менен учурда кластериңиз жайгашкан LSN ортосунда дельта камдык көчүрмөсүн түзүү үчүн аны catchup буйругунда белгилейсиз. Ошондон кийин сиз бул камдык көчүрмөнү артта калган репликага калыбына келтиресиз.

Башка негиздер

Студенттер бизге бир эле учурда көптөгөн өзгөчөлүктөрдү алып келишти. Яндексте биз Postgres гана эмес, бизде MySQL, MongoDB, Redis, ClickHouse да бар, ошондуктан кайсы бир учурда MySQL үчүн өз убагында калыбына келтирүү менен камдык көчүрмөлөрдү жасай алышыбыз керек болчу жана жүктөө мүмкүнчүлүгү бар болчу. аларды булутка.

Биз муну WAL-G кылгандай кылып жасагыбыз келди. Жана биз эксперимент жана анын баары кандай болорун көрүүнү чечтик.

Жана алгач бул логиканы эч кандай бөлүшпөстөн, алар кодду айрыга жазышты. Алар бизде кандайдыр бир жумушчу моделдин бар экенин жана ал уча аларын көрүштү. Анан биздин негизги жамаатыбыз постгресисттер, алар WAL-G колдонушат деп ойлодук. Ошондуктан биз кандайдыр бир жол менен бул бөлүктөрүн бөлүп алышыбыз керек. Башкача айтканда, биз Postgres үчүн кодду түзөткөндө, биз MySQLди сындырбайбыз; MySQLди оңдогондо, Postgresти сындырбайбыз.

WAL-G: жаңы мүмкүнчүлүктөр жана коомчулуктун кеңейиши. Георгий Рылов

Муну кантип ажыратуу жөнүндө биринчи идея PostgreSQL кеңейтүүлөрүндө колдонулган ыкманы колдонуу идеясы болгон. Жана, чындыгында, MySQL камдык көчүрмөсүн түзүү үчүн динамикалык китепкананын кандайдыр бир түрүн орнотуу керек болчу.

Бирок бул жерде бул ыкманын асимметриясы дароо көрүнүп турат. Postgres камдык көчүрмөсүн сактаганда, сиз Postgres үчүн кадимки камдык көчүрмөнү коесуз жана баары жакшы. Ал эми MySQL үчүн сиз Postgres үчүн камдык көчүрмөнү орнотуп, ал үчүн MySQL үчүн динамикалык китепкананы орнотосуз. Бул кызыктай угулат. Биз да ошентип ойлоп, бул бизге керектүү чечим эмес деп чечтик.

Postgres, MySQL, MongoDB, Redis үчүн ар кандай түзүлүштөр

Бирок бул бизге туура чечимге — ар турдуу базалар учун ар турдуу ассамблеяларды белуп берууге мумкундук берди окшойт. Бул WAL-G ишке ашырган жалпы API'ге кире турган ар кандай маалымат базаларынын резервдик көчүрмөлөрү менен байланышкан логиканы изоляциялоого мүмкүндүк берди.

WAL-G: жаңы мүмкүнчүлүктөр жана коомчулуктун кеңейиши. Георгий Рылов

Бул студенттерге көйгөйлөрдү берүүдөн мурун биз өзүбүз жазган бөлүгүбүз. Башкача айтканда, бул алар туура эмес нерсе кылышы мүмкүн болгон бөлүгү, ошондуктан биз ушундай нерсени кылсак жакшы болот жана баары жакшы болот деп чечтик.

WAL-G: жаңы мүмкүнчүлүктөр жана коомчулуктун кеңейиши. Георгий Рылов

Андан кийин көйгөйлөрдү чечтик. Алар дароо эле демонтаждалган. Студенттер үч базаны колдоо талап кылынган.

Бул MySQL, биз бир жылдан ашык убакыттан бери ушундай жол менен WAL-G аркылуу камдык көчүрмөсүн сактап келе жатабыз.

Азыр MongoDB өндүрүшкө жакындап калды, алар аны файл менен бүтүрүп жатышат. Чынында мунун баарынын алкагын жазганбыз. Андан кийин окуучулар ишке жарамдуу нерселерди жазышты. Анан биз өндүрүшкө кабыл ала турган абалга келтиребиз.

Бул көйгөйлөр студенттерге бул маалымат базаларынын ар бири үчүн толук камдык куралдарды жазууга муктаж болгон жок. Бизде мындай көйгөй болгон эмес. Биздин көйгөй - биз өз убагында калыбына келтирүүнү каалап, булуттун камдык көчүрмөсүн сактагыбыз келген. Жана алар студенттерден муну чече турган код жазууну суранышты. Студенттер кандайдыр бир жол менен камдык көчүрмөлөрдү алып турган мурунтан эле камдык көчүрмөнү сактоо куралдарын колдонушту, анан баарын булутка жөнөткөн WAL-G менен жабыштырышты. Ошондой эле алар буга өз убагында калыбына келтирүүнү кошушту.

WAL-G: жаңы мүмкүнчүлүктөр жана коомчулуктун кеңейиши. Георгий Рылов

Окуучулар дагы эмнелерди алып келишти? Алар WAL-Gге Libsodium шифрлөө колдоосун алып келишти.

Бизде камдык сактоо саясаттары да бар. Эми камдык көчүрмөлөр туруктуу деп белгилениши мүмкүн. Жана кандайдыр бир жол менен аларды сактоо процессин автоматташтыруу сиздин кызматыңызга ыңгайлуу.

WAL-G: жаңы мүмкүнчүлүктөр жана коомчулуктун кеңейиши. Георгий Рылов

Бул эксперименттин жыйынтыгы кандай болду?

Курска алгач 100дөн ашык адам катталган. Мен башында Екатеринбургдагы университетти Урал федералдык университети деп айткан эмесмин. Биз ал жерде бардыгын жарыяладык. 100 адам катталган. Чындыгында, бир нерсе кыла баштагандар азыраак, 30га жакын адам.

Курсту андан да азыраак адамдар аяктаган, анткени буга чейин бар коддор үчүн тест жазуу керек болчу. Жана ошондой эле кээ бир мүчүлүштүктөрдү оңдоо же кандайдыр бир функцияларды жасоо. Ал эми кээ бир студенттер дагы эле курсту жаап салышты.

Учурда бул курстун жүрүшүндө студенттер 14кө жакын маселени чечишти жана ар кандай өлчөмдөгү 10 функцияны жасашты. Жана, менимче, бул бир же эки иштеп чыгуучунун толук кандуу алмаштыруусу.

Анын ичинде дипломдорду, курстук иштерди бердик. Ал эми 12си дипломдорго ээ болушту. Алардын ичинен 6 адам буга чейин “5” менен корголгон. Калгандардын коргоосу жок болчу, бирок алар үчүн да баары жакшы болот деп ойлойм.

келечек үчүн пландар

Келечекке кандай пландарыбыз бар?

Жок дегенде, биз колдонуучулардан уккан жана кылгыбыз келген функция сурамдары. Бул:

  • HA кластеринин резервдик архивинде хронологияны көзөмөлдөөнүн тууралыгына мониторинг жүргүзүү. Сиз муну WAL-G менен кыла аласыз. Ал эми бизде бул ишти колго ала турган студенттер болот деп ойлойм.
  • Бизде камдык көчүрмөлөрдү жана булуттардын ортосунда WAL өткөрүү үчүн жооптуу адам бар.
  • Жана жакында биз WAL-G-ди ого бетер тездете алабыз деген идеяны жарыялаганбыз, анда кошумча камдык көчүрмөлөрдү барактарды кайра жазбастан жана ал жакка жөнөткөн архивдерди оптималдаштырбастан ачуу.

Аларды бул жерден бөлүшө аласыз

Бул отчет эмне үчүн болгон? Анын үстүнө азыр бул долбоорду колдогон 4 адамдан тышкары, бизде кошумча колдор бар, алардын ичинен бир топ эле колубуз бар. Айрыкча, аларга жеке билдирүү жазсаңыз. Жана эгер сиз маалыматтарыңыздын камдык көчүрмөсүн сактап, аны WAL-G аркылуу жасасаңыз же WAL-Gге өтүүнү кааласаңыз, анда биз сиздин каалооңузду оңой эле аткара алабыз.

WAL-G: жаңы мүмкүнчүлүктөр жана коомчулуктун кеңейиши. Георгий Рылов

Бул QR коду жана шилтеме. Аларды аралап өтүп, бардык каалоо-тилектерин жазсаңыз болот. Мисалы, биз кандайдыр бир мүчүлүштүктөрдү оңдоп жаткан жокпуз. Же сиз чындап эле кандайдыр бир функцияны каалайсыз, бирок кандайдыр бир себептерден улам ал эч кандай камдык көчүрмөдө, анын ичинде биздикинде жок. Бул тууралуу сөзсүз жазыңыз.

WAL-G: жаңы мүмкүнчүлүктөр жана коомчулуктун кеңейиши. Георгий Рылов

суроолор

Салам! Баяндама үчүн рахмат! WAL-G жөнүндө суроо, бирок Postgres жөнүндө эмес. WAL-G MySQLдин камдык көчүрмөсүн түзөт жана кошумча камдык көчүрмөнү чакырат. Эгер биз CentOSто заманбап орнотууларды алсак жана MySQLди орнотууну жасасаңыз, MariDB орнотулат. 10.3 версиясынан кошумча камдык көчүрмө колдоого алынбайт, MariDB камдык көчүрмөсү колдоого алынат. Муну менен кандай мамиледесиз?

Учурда биз MariDB камдык көчүрмөсүн алууга аракет кылган жокпуз. Бизде FoundationDB колдоосуна кайрылуулар болгон, бирок жалпысынан мындай өтүнүч болсо, биз аны аткара турган адамдарды таба алабыз. Бул мен ойлогондой узак же кыйын эмес.

Кутмандуу күнүң менен! Баяндама үчүн рахмат! Потенциалдуу жаңы функциялар жөнүндө суроо. Сиз кассетага камдык көчүрмөнү сактоо үчүн WAL-G ленталар менен иштөөгө даярсызбы?

Тасма сактагычтагы камдык көчүрмө дегенди билдирет окшойт?

Ооба.

Бул суроого менден жакшыраак жооп бере турган Андрей Бородин бар.

(Андрей) Ооба, суроо үчүн рахмат! Бизде камдык көчүрмөнү булут сактагычынан кассетага өткөрүү өтүнүчү бар болчу. Жана бул үчүн араалоо булуттардын ортосунда өткөрүп берүү. Анткени булуттан булутка которуу лента өткөрүп берүүнүн жалпыланган версиясы. Мындан тышкары, бизде сактагычтар жагынан кеңейтилген архитектура бар. Айтмакчы, көптөгөн Storoges студенттер тарабынан жазылган. Ал эми лента үчүн сактагычты жазсаңыз, анда ал, албетте, колдоого алынат. Биз тартуу өтүнүчтөрүн кароого даярбыз. Ал жерде файл жазуу, файлды окуу керек. Эгер сиз муну Go программасында жасасаңыз, адатта 50 сап код менен аяктайсыз. Ошондо лента WAL-Gде колдоого алынат.

Баяндама үчүн рахмат! Кызыктуу өнүгүү процесси. Камдык көчүрмө - бул тесттер менен жакшы камтылууга тийиш болгон олуттуу функция. Жаңы маалымат базалары үчүн функцияны ишке ашырганыңызда, студенттер тесттерди да жазыштыбы же тесттерди өзүңүз жазып, анан студенттерге ишке бердиңиз беле?

Окуучулар тесттерди да жазышты. Бирок студенттер жаңы маалымат базалары сыяктуу функциялар үчүн көбүрөөк жазышкан. Алар интеграциялык тесттерди жазышкан. Жана алар бирдик тесттерин жазышты. Эгерде интеграция өтүп кетсе, башкача айтканда, учурда бул сиз кол менен аткарган скрипт же сизде, мисалы, cron бар. Башкача айтканда, ал жерде сценарий абдан түшүнүктүү.

Студенттердин тажрыйбасы аз. Карап чыгуу көп убакытты талап кылабы?

Ооба, сын-пикирлер бир топ убакытты талап кылат. Башкача айтканда, адатта, бир эле учурда бир нече комиссия келип, мен муну кылдым, мен муну кылдым деп айтышса, анда алар ал жерде эмне жазганын түшүнүш үчүн ойлонуп, жарым күн убакыт бөлүү керек. Анткени кодду жакшылап окуу керек. Алар интервью алышкан жок. Биз аларды жакшы билбейбиз, ошондуктан бир топ убакытты талап кылат.

Баяндама үчүн рахмат! Буга чейин Андрей Бородин WAL-Gдеги archive_command түз чакырылышы керек деп айткан. Бирок кластердик картридждин кандайдыр бир түрү болгон учурда, валдарды жөнөтө турган түйүндү аныктоо үчүн бизге кошумча логика керек. Бул маселени өзүңүз кантип чечесиз?

Бул жерде сиздин көйгөйүңүз кандай? Сизде камдык көчүрмөнү жасап жаткан синхрондуу репликаңыз бар дейли? Же эмне?

(Андрей) Чындыгында WAL-G скриптсиз колдонууга арналган. Эгерде бир нерсе жок болсо, анда WAL-G ичинде болушу керек болгон логиканы кошолу. Архивдөө кайдан болушу керек дегенге келсек, биз архивдөө кластердеги учурдагы мастерден болушу керек деп эсептейбиз. Репликадан архивдөө жаман идея. Көйгөйлөрдүн ар кандай сценарийлери бар. Атап айтканда, хронологияны жана ар кандай кошумча маалыматты архивдөө көйгөйлөрү. Сурооңуз үчүн рахмат!

(Түшүндүрүү: Биз кабык скрипттеринен арылдык бул маселеде)

Кайырлуу кеч! Баяндама үчүн рахмат! Мен сиз айткан кармануу өзгөчөлүгүнө кызыгам. Биз реплика артта калып, жете албай калган кырдаалга туш болдук. Мен WAL-G документтеринде бул өзгөчөлүктүн сүрөттөлүшүн тапкан жокмун.

Катчап түзмө-түз 20-жылдын 2020-январында пайда болгон. Документке дагы бир аз иштөө керек болушу мүмкүн. Биз өзүбүз жазабыз, аны супер жакшы жазбайбыз. Балким, биз студенттерден аны жазууну талап кыла башташыбыз керек.

Ал буга чейин чыгарылганбы?

Тартуу өтүнүчү мурунтан эле өлүп калган, б.а. мен аны текшердим. Мен муну сыноо кластеринде сынап көрдүм. Азырынча бизде муну согуштук мисалда сынай турган жагдай болгон эмес.

Качан күтүү керек?

Мен билбейм. Бир ай күтө тур, биз сөзсүз текшеребиз.

Source: www.habr.com

Комментарий кошуу