Beth a pham rydym yn ei wneud mewn cronfeydd data Ffynhonnell Agored. Andrey Borodin (Yandex.Cloud)

Beth a pham rydym yn ei wneud mewn cronfeydd data Ffynhonnell Agored. Andrey Borodin (Yandex.Cloud)

Bydd cyfraniad Yandex i'r cronfeydd data canlynol yn cael ei adolygu.

  • CliciwchHouse
  • Odyssey
  • Adferiad i bwynt mewn amser (WAL-G)
  • PostgreSQL (gan gynnwys logerrors, Amcheck, heapcheck)
  • Plwm gwyrdd

Fideo:

Helo Byd! Fy enw i yw Andrey Borodin. A'r hyn rydw i'n ei wneud yn Yandex.Cloud yw datblygu cronfeydd data perthynol agored er budd cleientiaid Yandex.Cloud a Yandex.Cloud.

Beth a pham rydym yn ei wneud mewn cronfeydd data Ffynhonnell Agored. Andrey Borodin (Yandex.Cloud)

Yn y sgwrs hon, byddwn yn siarad am yr heriau sy'n wynebu cronfeydd data agored ar raddfa fawr. Pam ei fod yn bwysig? Oherwydd ychydig, problemau bach sydd, fel mosgitos, wedyn yn dod yn eliffantod. Maen nhw'n mynd yn fawr pan fydd gennych chi lawer o glystyrau.

Ond nid dyna'r prif beth. Mae pethau anhygoel yn digwydd. Pethau sy'n digwydd mewn un o bob miliwn o achosion. Ac mewn amgylchedd cwmwl, mae'n rhaid i chi fod yn barod ar gyfer hynny, oherwydd mae pethau anhygoel yn dod yn hynod debygol pan fydd rhywbeth yn bodoli ar raddfa.

Ond! Beth yw mantais cronfeydd data agored? Y ffaith yw bod gennych chi gyfle damcaniaethol i ddelio ag unrhyw broblem. Mae gennych y cod ffynhonnell, mae gennych wybodaeth raglennu. Rydyn ni'n ei gyfuno ac mae'n gweithio.

Beth a pham rydym yn ei wneud mewn cronfeydd data Ffynhonnell Agored. Andrey Borodin (Yandex.Cloud)

Pa ddulliau sydd ar gael wrth weithio ar feddalwedd ffynhonnell agored?

  • Y dull mwyaf syml yw defnyddio meddalwedd. Os ydych chi'n defnyddio protocolau, os ydych chi'n defnyddio safonau, os ydych chi'n defnyddio fformatau, os ydych chi'n ysgrifennu ymholiadau mewn meddalwedd ffynhonnell agored, yna rydych chi eisoes yn ei gefnogi.
  • Rydych chi'n gwneud ei ecosystem yn fwy. Rydych chi'n gwneud y tebygolrwydd o ganfod byg yn gynnar yn fwy. Rydych chi'n cynyddu dibynadwyedd y system hon. Rydych chi'n cynyddu argaeledd datblygwyr yn y farchnad. Rydych chi'n gwella'r feddalwedd hon. Rydych chi'n gyfrannwr yn barod os gwnaethoch chi lanio cael steil a chael blas ar rywbeth yno.
  • Dull dealladwy arall yw noddi meddalwedd ffynhonnell agored. Er enghraifft, rhaglen adnabyddus Google Summer of Code, pan fydd Google yn talu arian dealladwy i nifer fawr o fyfyrwyr o bob cwr o'r byd fel eu bod yn datblygu prosiectau meddalwedd agored sy'n bodloni gofynion trwyddedu penodol.
  • Mae hwn yn ddull diddorol iawn oherwydd mae'n caniatáu i'r feddalwedd esblygu heb symud y ffocws i ffwrdd o'r gymuned. Nid yw Google, fel cawr technoleg, yn dweud ein bod ni eisiau'r nodwedd hon, rydyn ni am drwsio'r nam hwn a dyma lle mae angen i ni gloddio. Dywed Google: “Gwnewch yr hyn a wnewch. Daliwch ati i weithio fel rydych chi wedi bod yn gweithio a bydd popeth yn iawn.”
  • Y dull nesaf o gymryd rhan mewn ffynhonnell agored yw cyfranogiad. Pan fydd gennych broblem mewn meddalwedd ffynhonnell agored a bod datblygwyr, mae eich datblygwyr yn dechrau datrys y problemau. Maent yn dechrau gwneud eich seilwaith yn fwy effeithlon, eich rhaglenni'n gyflymach ac yn fwy dibynadwy.

Beth a pham rydym yn ei wneud mewn cronfeydd data Ffynhonnell Agored. Andrey Borodin (Yandex.Cloud)

Un o'r prosiectau Yandex enwocaf ym maes meddalwedd ffynhonnell agored yw ClickHouse. Dyma gronfa ddata a aned fel ymateb i'r heriau sy'n wynebu Yandex.Metrica.

Ac fel cronfa ddata, fe'i gwnaed mewn ffynhonnell agored er mwyn creu ecosystem a'i datblygu ynghyd â datblygwyr eraill (nid yn unig o fewn Yandex). Ac yn awr mae hwn yn brosiect mawr y mae llawer o wahanol gwmnïau yn cymryd rhan ynddo.

Beth a pham rydym yn ei wneud mewn cronfeydd data Ffynhonnell Agored. Andrey Borodin (Yandex.Cloud)

Yn Yandex.Cloud, fe wnaethon ni greu ClickHouse ar ben Yandex Object Storage, h.y. ar ben storfa cwmwl.

Beth a pham rydym yn ei wneud mewn cronfeydd data Ffynhonnell Agored. Andrey Borodin (Yandex.Cloud)

Pam fod hyn yn bwysig yn y cwmwl? Oherwydd bod unrhyw gronfa ddata yn gweithio yn y triongl hwn, yn y pyramid hwn, yn yr hierarchaeth hon o fathau o gof. Mae gennych chi gofrestrau cyflym ond bach a SSDs mawr ond araf rhad, gyriannau caled a rhai dyfeisiau bloc eraill. Ac os ydych chi'n effeithlon ar frig y pyramid, yna mae gennych chi gronfa ddata gyflym. os ydych chi'n effeithlon ar waelod y pyramid hwn, yna mae gennych chi gronfa ddata wrth raddfa. Ac yn hyn o beth, mae ychwanegu haen arall oddi isod yn ddull rhesymegol o gynyddu scalability y gronfa ddata.

Beth a pham rydym yn ei wneud mewn cronfeydd data Ffynhonnell Agored. Andrey Borodin (Yandex.Cloud)

Sut y gellid ei wneud? Mae hwn yn bwynt pwysig yn yr adroddiad hwn.

  • Gallem weithredu ClickHouse dros ISD. Mae MDS yn rhyngwyneb storio cwmwl mewnol Yandex. Mae'n fwy cymhleth na'r protocol S3 cyffredin, ond mae'n fwy addas ar gyfer dyfais bloc. Mae'n well ar gyfer cofnodi data. Mae angen mwy o raglennu. Bydd rhaglenwyr yn rhaglennu, mae hyd yn oed yn dda, mae'n ddiddorol.
  • Mae S3 yn ddull mwy cyffredin sy'n gwneud y rhyngwyneb yn symlach ar gost llai o addasu i rai mathau o lwythi gwaith.

Yn naturiol, gan fod eisiau darparu ymarferoldeb i ecosystem gyfan ClickHouse a gwneud y dasg sydd ei hangen y tu mewn i Yandex.Cloud, fe benderfynon ni sicrhau y byddai cymuned gyfan ClickHouse yn elwa ohono. Fe wnaethom weithredu ClickHouse dros S3, nid ClickHouse dros ISD. Ac mae hyn yn llawer o waith.

Beth a pham rydym yn ei wneud mewn cronfeydd data Ffynhonnell Agored. Andrey Borodin (Yandex.Cloud)

Cyfeiriadau:

https://github.com/ClickHouse/ClickHouse/pull/7946 "Haen tynnu system ffeiliau"
https://github.com/ClickHouse/ClickHouse/pull/8011 "Integreiddiad AWS SDK S3"
https://github.com/ClickHouse/ClickHouse/pull/8649 “Gweithrediad sylfaenol y rhyngwyneb IDDisk ar gyfer S3”
https://github.com/ClickHouse/ClickHouse/pull/8356 "Integreiddio peiriannau storio log gyda rhyngwyneb IDisk"
https://github.com/ClickHouse/ClickHouse/pull/8862 "Cymorth injan log ar gyfer S3 a SeekableReadBuffer"
https://github.com/ClickHouse/ClickHouse/pull/9128 "Cymorth Stripe Log S3"
https://github.com/ClickHouse/ClickHouse/pull/9415 "Cymorth cychwynnol Storio MergeTree ar gyfer S3"
https://github.com/ClickHouse/ClickHouse/pull/9646 "Cymorth llawn MergeTree i S3"
https://github.com/ClickHouse/ClickHouse/pull/10126 "CefnogiMergeTree Replicated dros S3"
https://github.com/ClickHouse/ClickHouse/pull/11134 “Ychwanegu manylion diofyn a phenawdau personol ar gyfer storfa s3”
https://github.com/ClickHouse/ClickHouse/pull/10576 "S3 gyda ffurfweddiad dirprwy deinamig"
https://github.com/ClickHouse/ClickHouse/pull/10744 "S3 gyda datryswr dirprwy"

Mae hon yn rhestr cais tynnu ar gyfer gweithredu system ffeiliau rhithwir yn ClickHouse. Mae hyn yn nifer fawr o geisiadau tynnu.

Beth a pham rydym yn ei wneud mewn cronfeydd data Ffynhonnell Agored. Andrey Borodin (Yandex.Cloud)

Cyfeiriadau:

https://github.com/ClickHouse/ClickHouse/pull/9760 "Dolenni caled DiskS3 yn gweithredu'r gweithrediad gorau posibl"
https://github.com/ClickHouse/ClickHouse/pull/11522 “Cleient S3 HTTP - Osgoi copïo ffrwd ymateb i'r cof”
https://github.com/ClickHouse/ClickHouse/pull/11561 “Osgowch gopïo ffrwd ymateb gyfan i'r cof yn S3 HTTP
cleient"
https://github.com/ClickHouse/ClickHouse/pull/13076 “Y gallu i gadw marc a mynegai ffeiliau ar gyfer disg S3”
https://github.com/ClickHouse/ClickHouse/pull/13459 "Symud rhannau o DiskLocal i DiskS3 ochr yn ochr"

Ond ni ddaeth y gwaith i ben yno. Ar ôl i'r nodwedd gael ei gwneud, roedd angen mwy o waith er mwyn gwneud y gorau o'r swyddogaeth hon.

Beth a pham rydym yn ei wneud mewn cronfeydd data Ffynhonnell Agored. Andrey Borodin (Yandex.Cloud)

Cyfeiriadau:

https://github.com/ClickHouse/ClickHouse/pull/12638 "Ychwanegu digwyddiadau SelectedRows a SelectedBytes"
https://github.com/ClickHouse/ClickHouse/pull/12464 msgstr "Ychwanegu digwyddiadau proffilio o gais S3 at system.events"
https://github.com/ClickHouse/ClickHouse/pull/13028 msgstr "Ychwanegu QueryTimeMicroseconds, SelectQueryTimeMicroseconds a InsertQueryTimeMicroseconds"

Ac yna roedd angen gwneud diagnosis ohono, sefydlu monitro a'i wneud yn hylaw.

A gwnaed hyn i gyd fel bod y gymuned gyfan, ecosystem gyfan ClickHouse, wedi derbyn canlyniad y gwaith hwn.

Beth a pham rydym yn ei wneud mewn cronfeydd data Ffynhonnell Agored. Andrey Borodin (Yandex.Cloud)

Gadewch i ni symud ymlaen i gronfeydd data trafodion, i gronfeydd data OLTP, sy'n agosach ataf yn bersonol.

Beth a pham rydym yn ei wneud mewn cronfeydd data Ffynhonnell Agored. Andrey Borodin (Yandex.Cloud)

Dyma adran datblygu ffynhonnell agored DBMS. Mae'r dynion hyn yn gwneud hud stryd i wella cronfeydd data agored trafodion.

Beth a pham rydym yn ei wneud mewn cronfeydd data Ffynhonnell Agored. Andrey Borodin (Yandex.Cloud)

Un o'r prosiectau, gan ddefnyddio enghraifft y gallwn siarad am sut a beth rydym yn ei wneud, yw'r Connection Pooler yn Postgres.

Cronfa ddata prosesau yw Postgres. Mae hyn yn golygu y dylai fod gan y gronfa ddata cyn lleied o gysylltiadau rhwydwaith â phosibl sy'n delio â thrafodion.

Ar y llaw arall, mewn amgylchedd cwmwl, sefyllfa nodweddiadol yw pan ddaw mil o gysylltiadau i un clwstwr ar unwaith. A thasg y cronwr cysylltiad yw pacio mil o gysylltiadau i nifer fach o gysylltiadau gweinydd.

Beth a pham rydym yn ei wneud mewn cronfeydd data Ffynhonnell Agored. Andrey Borodin (Yandex.Cloud)

Gallwn ddweud mai'r casglwr cysylltiad yw'r gweithredwr ffôn sy'n aildrefnu'r bytes fel eu bod yn cyrraedd y gronfa ddata yn effeithlon.

Yn anffodus, nid oes gair Rwsieg da ar gyfer pwll cysylltiad. Weithiau fe'i gelwir yn gysylltiadau amlblecsydd. Os ydych chi'n gwybod beth i'w alw'n gronwr cysylltiad, yna gwnewch yn siŵr eich bod chi'n dweud wrthyf, byddaf yn hapus iawn i siarad yr iaith dechnegol Rwsieg gywir.

Beth a pham rydym yn ei wneud mewn cronfeydd data Ffynhonnell Agored. Andrey Borodin (Yandex.Cloud)

https://pgconf.ru/2017/92899

Gwnaethom ymchwilio i gronwyr cysylltiadau a oedd yn addas ar gyfer clwstwr postgres a reolir. A PgBouncer oedd y dewis gorau i ni. Ond cawsom nifer o broblemau gyda PgBouncer. Flynyddoedd lawer yn ôl, rhoddodd Volodya Borodin adroddiadau ein bod ni'n defnyddio PgBouncer, rydyn ni'n hoffi popeth, ond mae yna arlliwiau, mae yna rywbeth i weithio arno.

Beth a pham rydym yn ei wneud mewn cronfeydd data Ffynhonnell Agored. Andrey Borodin (Yandex.Cloud)

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

Ac fe wnaethon ni weithio. Fe wnaethom drwsio'r problemau y daethom ar eu traws, clytio Bouncer, a cheisio gwthio ceisiadau tynnu i fyny'r afon. Ond roedd yn anodd gweithio gydag edau sengl sylfaenol.

Roedd yn rhaid i ni gasglu rhaeadrau o Bouncers glytiog. Pan fydd gennym lawer o Bownswyr un edau, mae'r cysylltiadau ar yr haen uchaf yn cael eu trosglwyddo i haen fewnol y Bownsars. Mae hon yn system sydd wedi'i rheoli'n wael ac sy'n anodd ei hadeiladu a'i lleihau yn ôl ac ymlaen.

Beth a pham rydym yn ei wneud mewn cronfeydd data Ffynhonnell Agored. Andrey Borodin (Yandex.Cloud)

Daethom i'r casgliad ein bod wedi creu ein cronfa gyswllt ein hunain, a elwir yn Odyssey. Fe wnaethon ni ei ysgrifennu o'r dechrau.

Beth a pham rydym yn ei wneud mewn cronfeydd data Ffynhonnell Agored. Andrey Borodin (Yandex.Cloud)

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

Yn 2019, yn y gynhadledd PgCon, cyflwynais y pŵlwr hwn i'r gymuned ddatblygwyr. Nawr mae gennym ychydig yn llai na 2 o sêr ar GitHub, h.y. mae'r prosiect yn fyw, mae'r prosiect yn boblogaidd.

Ac os ydych chi'n creu clwstwr Postgres yn Yandex.Cloud, yna bydd yn glwstwr gydag Odyssey adeiledig, sy'n cael ei ail-gyflunio wrth raddio'r clwstwr yn ôl neu ymlaen.

Beth a pham rydym yn ei wneud mewn cronfeydd data Ffynhonnell Agored. Andrey Borodin (Yandex.Cloud)

Beth ddysgon ni o'r prosiect hwn? Mae lansio prosiect cystadleuol bob amser yn gam ymosodol, mae'n fesur eithafol pan ddywedwn fod problemau nad ydynt yn cael eu datrys yn ddigon cyflym, nad ydynt yn cael eu datrys o fewn y cyfnodau amser a fyddai'n gyfleus i ni. Ond mae hwn yn fesur effeithiol.

Dechreuodd PgBouncer ddatblygu'n gyflymach.

Ac yn awr mae prosiectau eraill wedi ymddangos. Er enghraifft, pgagroal, sy'n cael ei ddatblygu gan ddatblygwyr Red Hat. Maent yn dilyn nodau tebyg ac yn gweithredu syniadau tebyg, ond, wrth gwrs, gyda'u manylion eu hunain, sy'n agosach at ddatblygwyr pgagroal.

Beth a pham rydym yn ei wneud mewn cronfeydd data Ffynhonnell Agored. Andrey Borodin (Yandex.Cloud)

Achos arall o weithio gyda chymuned postgres yw adfer i bwynt mewn amser. Mae hyn yn adferiad ar ôl methiant, mae hyn yn adferiad o gopi wrth gefn.

Beth a pham rydym yn ei wneud mewn cronfeydd data Ffynhonnell Agored. Andrey Borodin (Yandex.Cloud)

Mae yna lawer o gopïau wrth gefn ac maen nhw i gyd yn wahanol. Mae gan bron pob gwerthwr Postgres ei ddatrysiad wrth gefn ei hun.

Os cymerwch yr holl systemau wrth gefn, creu matrics nodwedd a chyfrifo'r penderfynydd yn y matrics hwn yn cellwair, bydd yn sero. Beth mae hyn yn ei olygu? Beth os cymerwch ffeil wrth gefn benodol, yna ni ellir ei chydosod o ddarnau o'r lleill i gyd. Mae'n unigryw yn ei weithrediad, mae'n unigryw yn ei ddiben, mae'n unigryw yn y syniadau sydd wedi'u gwreiddio ynddo. Ac maent i gyd yn benodol.

Beth a pham rydym yn ei wneud mewn cronfeydd data Ffynhonnell Agored. Andrey Borodin (Yandex.Cloud)

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

Tra roeddem yn gweithio ar y mater hwn, lansiodd CitusData brosiect WAL-G. Mae hon yn system wrth gefn a wnaed gyda llygad i amgylchedd y cwmwl. Nawr mae CitusData eisoes yn rhan o Microsoft. Ac ar y foment honno, roeddem yn hoff iawn o'r syniadau a osodwyd yn y datganiadau cychwynnol o WAL-G. Ac fe ddechreuon ni gyfrannu at y prosiect hwn.

Beth a pham rydym yn ei wneud mewn cronfeydd data Ffynhonnell Agored. Andrey Borodin (Yandex.Cloud)

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

Nawr mae yna lawer o ddwsinau o ddatblygwyr yn y prosiect hwn, ond mae'r 10 cyfrannwr gorau i WAL-G yn cynnwys 6 Yandexoids. Daethom â llawer o'n syniadau yno. Ac, wrth gwrs, fe wnaethon ni eu gweithredu ein hunain, eu profi ein hunain, eu cyflwyno ein hunain i gynhyrchu, rydyn ni'n eu defnyddio ein hunain, rydyn ni ein hunain yn darganfod ble i symud nesaf, wrth ryngweithio â chymuned fawr WAL-G.

Beth a pham rydym yn ei wneud mewn cronfeydd data Ffynhonnell Agored. Andrey Borodin (Yandex.Cloud)

Ac o'n safbwynt ni, nawr mae'r system wrth gefn hon, gan gynnwys ystyried ein hymdrechion, wedi dod yn optimaidd ar gyfer amgylchedd cwmwl. Dyma'r gost orau o wneud copïau wrth gefn Postgres yn y cwmwl.

Beth mae'n ei olygu? Roeddem yn hyrwyddo syniad gweddol fawr: dylai copi wrth gefn fod yn ddiogel, yn rhad i'w weithredu ac mor gyflym â phosibl i'w adfer.

Pam ddylai fod yn rhad i weithredu? Pan nad oes dim wedi torri, ni ddylech wybod bod gennych chi gopïau wrth gefn. Mae popeth yn gweithio'n iawn, rydych chi'n gwastraffu cyn lleied o CPU â phosib, rydych chi'n defnyddio cyn lleied o adnoddau eich disg â phosib, ac rydych chi'n anfon cyn lleied o beitau â phosib i'r rhwydwaith er mwyn peidio ag ymyrryd â llwyth tâl eich gwasanaethau gwerthfawr.

A phan fydd popeth yn torri, er enghraifft, gollyngodd y gweinyddwr y data, aeth rhywbeth o'i le, ac mae angen i chi fynd yn ôl i'r gorffennol ar frys, rydych chi'n gwella gyda'r holl arian, oherwydd rydych chi am gael eich data yn ôl yn gyflym ac yn gyfan.

Ac fe wnaethom hyrwyddo'r syniad syml hwn. Ac, mae'n ymddangos i ni, rydym wedi llwyddo i'w roi ar waith.

Beth a pham rydym yn ei wneud mewn cronfeydd data Ffynhonnell Agored. Andrey Borodin (Yandex.Cloud)

Ond nid dyna'r cyfan. Roedden ni eisiau un peth bach arall. Roedden ni eisiau llawer o gronfeydd data gwahanol. Nid yw pob un o'n cleientiaid yn defnyddio Postgres. Mae rhai pobl yn defnyddio MySQL, MongoDB. Yn y gymuned, mae datblygwyr eraill wedi cefnogi FoundationDB. Ac mae'r rhestr hon yn ehangu'n gyson.

Mae'r gymuned yn hoffi'r syniad bod y gronfa ddata yn cael ei rhedeg mewn amgylchedd rheoledig yn y cwmwl. Ac mae datblygwyr yn cynnal eu cronfeydd data, y gellir eu hategu'n unffurf ynghyd â Postgres gyda'n system wrth gefn.

Beth a pham rydym yn ei wneud mewn cronfeydd data Ffynhonnell Agored. Andrey Borodin (Yandex.Cloud)

Beth ydyn ni wedi'i ddysgu o'r stori hon? Nid yw ein cynnyrch, fel is-adran datblygu, yn llinellau cod, nid datganiadau, nid ffeiliau ydyw. Nid yw ein cynnyrch yn geisiadau tynnu. Dyma’r syniadau rydyn ni’n eu cyfleu i’r gymuned. Dyma arbenigedd technolegol a symudiad technoleg tuag at amgylchedd cwmwl.

Beth a pham rydym yn ei wneud mewn cronfeydd data Ffynhonnell Agored. Andrey Borodin (Yandex.Cloud)

Mae cronfa ddata o'r fath â Postgres. Rwy'n hoffi craidd Postgres fwyaf. Rwy'n treulio llawer o amser yn datblygu craidd Postgres gyda'r gymuned.

Beth a pham rydym yn ei wneud mewn cronfeydd data Ffynhonnell Agored. Andrey Borodin (Yandex.Cloud)

Ond yma mae'n rhaid dweud bod gan Yandex.Cloud osodiad mewnol o gronfeydd data a reolir. Ac fe ddechreuodd amser maith yn ôl yn Yandex.Mail. Cafodd yr arbenigedd sydd bellach wedi arwain at reoli Postgres ei gronni pan oedd y post am symud i Postgres.

Mae gan bost ofynion tebyg iawn i'r cwmwl. Mae angen i chi allu ehangu i dwf esbonyddol annisgwyl ar unrhyw adeg yn eich data. Ac roedd gan y post lwyth eisoes gyda rhai cannoedd o filiynau o flychau post nifer enfawr o ddefnyddwyr sy'n gwneud llawer o geisiadau yn gyson.

Ac roedd hon yn her eithaf difrifol i’r tîm oedd yn datblygu Postgres. Yn ôl wedyn, roedd unrhyw broblemau y daethom ar eu traws yn cael eu hadrodd i'r gymuned. Ac mae'r problemau hyn yn cael eu cywiro, a'u cywiro gan y gymuned mewn rhai mannau hyd yn oed ar lefel y cymorth taledig ar gyfer rhai cronfeydd data eraill a hyd yn oed yn well. Hynny yw, gallwch anfon llythyr at haciwr PgSQL a derbyn ymateb o fewn 40 munud. Efallai y bydd cymorth taledig mewn rhai cronfeydd data yn meddwl bod mwy o bethau â blaenoriaeth na'ch byg.

Nawr mae gosodiad mewnol Postgres yn rhai petabytes o ddata. Dyma rai miliynau o geisiadau yr eiliad. Dyma filoedd o glystyrau. Mae ar raddfa fawr iawn.

Ond mae naws. Mae'n byw nid ar yriannau rhwydwaith ffansi, ond ar galedwedd eithaf syml. Ac mae yna amgylchedd prawf yn benodol ar gyfer pethau newydd diddorol.

Beth a pham rydym yn ei wneud mewn cronfeydd data Ffynhonnell Agored. Andrey Borodin (Yandex.Cloud)

Ac ar adeg benodol yn yr amgylchedd prawf cawsom neges sy'n nodi bod amrywiadau mewnol y mynegeion cronfa ddata wedi'u torri.

Rhyw fath o berthynas y disgwyliwn ei chynnal bob amser yw amrywiad.

Sefyllfa dyngedfennol iawn i ni. Mae'n dangos y gallai rhywfaint o ddata fod wedi'i golli. Ac mae colli data yn rhywbeth hollol drychinebus.

Y syniad cyffredinol a ddilynwn mewn cronfeydd data a reolir yw y bydd yn anodd colli data hyd yn oed gydag ymdrech. Hyd yn oed os byddwch yn cael gwared arnynt yn fwriadol, bydd angen i chi anwybyddu eu habsenoldeb am gyfnod hir o hyd. Mae diogelwch data yn grefydd yr ydym yn ei dilyn yn eithaf diwyd.

Ac yma cyfyd sefyllfa sy’n awgrymu y gallai fod sefyllfa na fyddwn yn barod amdani o bosibl. Ac fe ddechreuon ni baratoi ar gyfer y sefyllfa hon.

Beth a pham rydym yn ei wneud mewn cronfeydd data Ffynhonnell Agored. Andrey Borodin (Yandex.Cloud)

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

Y peth cyntaf a wnaethom oedd claddu'r boncyffion o'r miloedd o glystyrau hyn. Canfuwyd pa un o'r clystyrau oedd wedi'u lleoli ar ddisgiau gyda firmware problemus a oedd yn colli diweddariadau tudalennau data. Wedi marcio holl god data Postgres. Ac fe wnaethom farcio'r negeseuon hynny sy'n nodi achosion o dorri amrywiadau mewnol gyda chod sydd wedi'i gynllunio i ganfod llygredd data.

Derbyniwyd y darn hwn yn ymarferol gan y gymuned heb lawer o drafod, oherwydd ym mhob achos penodol roedd yn amlwg bod rhywbeth drwg wedi digwydd a bod angen ei adrodd i'r log.

Beth a pham rydym yn ei wneud mewn cronfeydd data Ffynhonnell Agored. Andrey Borodin (Yandex.Cloud)

Ar ôl hyn, daethom at y pwynt bod gennym fonitro sy'n sganio logiau. Ac rhag ofn y bydd negeseuon amheus, mae'n deffro'r swyddog ar ddyletswydd, ac mae'r swyddog ar ddyletswydd yn ei atgyweirio.

Ond! Mae sganio boncyffion yn weithrediad rhad ar un clwstwr ac yn drychinebus o ddrud i fil o glystyrau.

Fe wnaethon ni ysgrifennu estyniad o'r enw Logwallau. Mae'n creu golwg o'r gronfa ddata lle gallwch ddewis ystadegau ar wallau'r gorffennol yn rhad ac yn gyflym. Ac os bydd angen i ni ddeffro'r swyddog ar ddyletswydd, yna byddwn yn dod i wybod am hyn heb sganio ffeiliau gigabyte, ond trwy dynnu ychydig o bytes o'r tabl hash.

Mae'r estyniad hwn wedi'i fabwysiadu, er enghraifft, yn y storfa ar gyfer CentOS. Os ydych chi am ei ddefnyddio, gallwch chi ei osod eich hun. Wrth gwrs mae'n ffynhonnell agored.

Beth a pham rydym yn ei wneud mewn cronfeydd data Ffynhonnell Agored. Andrey Borodin (Yandex.Cloud)

https://www.postgresql.org/message-id/flat/[e-bost wedi'i warchod]

Ond nid dyna'r cyfan. Dechreuon ni ddefnyddio Amcheck, estyniad a adeiladwyd yn y gymuned, i ddod o hyd i droseddau amrywiol mewn mynegeion.

Ac fe wnaethom ddarganfod, os ydych chi'n ei weithredu ar raddfa fawr, bod yna fygiau. Dechreuon ni eu trwsio. Mae ein cywiriadau wedi eu derbyn.

Beth a pham rydym yn ei wneud mewn cronfeydd data Ffynhonnell Agored. Andrey Borodin (Yandex.Cloud)

https://www.postgresql.org/message-id/flat/[e-bost wedi'i warchod]

Fe wnaethom ddarganfod na all yr estyniad hwn ddadansoddi mynegeion GiST a GIT. Fe wnaethon ni eu cefnogi. Ond mae'r gefnogaeth hon yn dal i gael ei thrafod gan y gymuned, oherwydd mae hwn yn swyddogaeth gymharol newydd ac mae llawer o fanylion yno.

Beth a pham rydym yn ei wneud mewn cronfeydd data Ffynhonnell Agored. Andrey Borodin (Yandex.Cloud)

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

Ac fe wnaethom hefyd ddarganfod, wrth wirio mynegeion am droseddau ar yr arweinydd atgynhyrchu, ar y meistr, bod popeth yn gweithio'n dda, ond ar y copïau, ar y dilynwr, nid yw'r chwilio am lygredd mor effeithiol. Nid yw pob amrywiad yn cael ei wirio. Ac roedd un newidyn yn ein poeni ni'n fawr. A threuliasom flwyddyn a hanner yn cyfathrebu â'r gymuned er mwyn galluogi'r gwiriad hwn ar atgynyrchiadau.

Fe wnaethon ni ysgrifennu cod a ddylai ddilyn pob protocol y gall... Buom yn trafod y darn hwn ers cryn amser gyda Peter Gaghan o Crunchy Data. Bu'n rhaid iddo addasu ychydig ar y goeden B bresennol yn Postgres er mwyn derbyn y darn hwn. Derbyniwyd ef. Ac yn awr mae gwirio mynegeion ar atgynyrchiadau hefyd wedi dod yn ddigon effeithiol i ganfod y troseddau y daethom ar eu traws. Hynny yw, dyma'r troseddau y gellir eu hachosi gan wallau mewn firmware disg, bygiau yn Postgres, chwilod yn y cnewyllyn Linux, a phroblemau caledwedd. Rhestr eithaf helaeth o ffynonellau problemau yr oeddem yn paratoi ar eu cyfer.

Beth a pham rydym yn ei wneud mewn cronfeydd data Ffynhonnell Agored. Andrey Borodin (Yandex.Cloud)

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

Ond ar wahân i fynegeion, mae yna ran fel pentwr, h.y. y man lle mae'r data'n cael ei storio. Ac nid oes llawer o amrywiadau y gellid eu gwirio.

Mae gennym estyniad o'r enw Heapcheck. Dechreuon ni ei ddatblygu. Ac ochr yn ochr â ni, ynghyd â ni, dechreuodd y cwmni EnterpriseDB hefyd ysgrifennu modiwl, y maent yn ei alw'n Heapcheck yn yr un modd. Dim ond fe wnaethom ei alw'n PgHeapcheck, a dyma nhw'n ei alw'n Heapcheck. Mae ganddyn nhw swyddogaethau tebyg, llofnod ychydig yn wahanol, ond gyda'r un syniadau. Fe wnaethant eu gweithredu ychydig yn well mewn rhai mannau. Ac fe wnaethon nhw ei bostio mewn ffynhonnell agored o'r blaen.

Ac yn awr yr ydym yn datblygu eu hehangiad, oherwydd nid eu hehangiad hwy ydyw mwyach, ond ehangiad y gymuned. Ac yn y dyfodol, mae hyn yn rhan o'r cnewyllyn a fydd yn cael ei gyflenwi i bawb fel y gallant wybod am broblemau'r dyfodol ymlaen llaw.

Beth a pham rydym yn ei wneud mewn cronfeydd data Ffynhonnell Agored. Andrey Borodin (Yandex.Cloud)

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

Mewn rhai mannau, daethom hyd yn oed i’r casgliad bod gennym bethau cadarnhaol ffug yn ein systemau monitro. Er enghraifft, y system 1C. Wrth ddefnyddio cronfa ddata, mae Postgres weithiau'n ysgrifennu data iddi y gall ei ddarllen, ond ni all pg_dump ddarllen.

Roedd y sefyllfa hon yn edrych fel llygredd i'n system canfod problemau. Deffrowyd y swyddog ar ddyletswydd. Edrychodd y swyddog ar ddyletswydd ar yr hyn oedd yn digwydd. Ar ôl peth amser, daeth cleient a dweud bod gen i broblemau. Eglurodd y cynorthwyydd beth oedd y broblem. Ond mae'r broblem yng nghraidd Postgres.

Deuthum o hyd i drafodaeth am y nodwedd hon. Ac ysgrifennodd ein bod yn dod ar draws y nodwedd hon ac roedd yn annymunol, deffrodd person yn y nos er mwyn darganfod beth ydoedd.

Beth a pham rydym yn ei wneud mewn cronfeydd data Ffynhonnell Agored. Andrey Borodin (Yandex.Cloud)

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

Ymatebodd y gymuned, “O, mae gwir angen i ni ei drwsio.”

Mae gen i gyfatebiaeth syml. Os ydych chi'n cerdded mewn esgid sydd â gronyn o dywod ynddo, yna, mewn egwyddor, gallwch chi symud ymlaen - dim problem. Os ydych chi'n gwerthu esgidiau i filoedd o bobl, yna gadewch i ni wneud esgidiau heb dywod o gwbl. Ac os yw un o ddefnyddwyr eich esgidiau yn mynd i redeg marathon, yna rydych chi am wneud esgidiau da iawn, ac yna eu graddio i'ch holl ddefnyddwyr. Ac mae defnyddwyr annisgwyl o'r fath bob amser yn amgylchedd y cwmwl. Mae yna bob amser ddefnyddwyr sy'n ecsbloetio'r clwstwr mewn rhyw ffordd wreiddiol. Rhaid i chi baratoi ar gyfer hyn bob amser.

Beth a pham rydym yn ei wneud mewn cronfeydd data Ffynhonnell Agored. Andrey Borodin (Yandex.Cloud)

Beth ydym ni wedi'i ddysgu yma? Fe ddysgon ni beth syml: y peth pwysicaf yw esbonio i'r gymuned bod yna broblem. Os yw'r gymuned wedi cydnabod y broblem, yna mae cystadleuaeth naturiol yn codi i ddatrys y broblem. Oherwydd bod pawb eisiau datrys problem bwysig. Mae pob gwerthwr, pob haciwr yn deall y gallant hwy eu hunain gamu ar y rhaca hwn, felly maent am eu dileu.

Os ydych chi'n gweithio ar broblem, ond mae'n poeni neb ond chi, ond rydych chi'n gweithio arno'n systematig ac yn y pen draw yn cael ei ystyried yn broblem, yna bydd eich cais tynnu yn bendant yn cael ei dderbyn. Bydd eich ardal yn cael ei derbyn, eich gwelliannau neu hyd yn oed geisiadau am welliannau yn cael eu hadolygu gan y gymuned. Ar ddiwedd y dydd, rydym yn gwneud y gronfa ddata yn well i'n gilydd.

Beth a pham rydym yn ei wneud mewn cronfeydd data Ffynhonnell Agored. Andrey Borodin (Yandex.Cloud)

Cronfa ddata ddiddorol yw Greenplum. Mae'n gronfa ddata gyfochrog iawn sy'n seiliedig ar gronfa godau Postgres, yr wyf yn gyfarwydd iawn â hi.

Beth a pham rydym yn ei wneud mewn cronfeydd data Ffynhonnell Agored. Andrey Borodin (Yandex.Cloud)

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

Ac mae gan Greenplum ymarferoldeb diddorol - atodi tablau wedi'u optimeiddio. Mae'r rhain yn dablau y gallwch chi ychwanegu atynt yn gyflym. Gallant fod naill ai'n golofnog neu'n rhes.

Ond nid oedd clystyru, h.y. nid oedd unrhyw swyddogaeth lle gallwch drefnu'r data a leolir yn y tabl yn unol â'r drefn sydd yn un o'r mynegeion.

Daeth y bois o'r tacsi ataf a dweud: “Andrey, ti'n nabod Postgres. Ac yma mae bron yr un peth. Newid i 20 munud. Rydych chi'n ei gymryd ac yn ei wneud." Roeddwn i'n meddwl bod, dwi'n nabod Postgres, yn newid am 20 munud - mae angen i mi wneud hyn.

Beth a pham rydym yn ei wneud mewn cronfeydd data Ffynhonnell Agored. Andrey Borodin (Yandex.Cloud)

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

Ond na, nid oedd yn 20 munud, ysgrifennais ef dros fisoedd. Yn y gynhadledd PgConf.Russia, es at Heikki Linakangas o Pivotal a gofyn: “A oes unrhyw broblemau gyda hyn? Pam nad oes clystyru tabl wedi'i optimeiddio mewn atodiadau?” Dywed: “Rydych chi'n cymryd y data. Rydych chi'n didoli, rydych chi'n aildrefnu. Dim ond swydd yw hi." Fi: “O, ie, does ond angen i chi ei gymryd a'i wneud.” Dywed: “Ie, mae angen dwylo rhydd arnom i wneud hyn.” Roeddwn i'n meddwl bod angen i mi wneud hyn yn bendant.

Ac ychydig fisoedd yn ddiweddarach cyflwynais gais tynnu a roddodd y swyddogaeth hon ar waith. Adolygwyd y cais tynnu hwn gan Pivotal ynghyd â'r gymuned. Wrth gwrs, roedd yna fygiau.

Beth a pham rydym yn ei wneud mewn cronfeydd data Ffynhonnell Agored. Andrey Borodin (Yandex.Cloud)

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

Ond y peth mwyaf diddorol yw pan gafodd y cais tynnu hwn ei uno, daethpwyd o hyd i fygiau yn Greenplum ei hun. Rydym wedi canfod bod tablau pentwr weithiau'n torri trafodion pan fyddant wedi'u clystyru. Ac mae hyn yn beth y mae angen ei drwsio. Ac mae hi yn y lle yr wyf newydd ei gyffwrdd. A fy ymateb naturiol oedd – iawn, gadewch i mi wneud hyn hefyd.

Beth a pham rydym yn ei wneud mewn cronfeydd data Ffynhonnell Agored. Andrey Borodin (Yandex.Cloud)

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

Trwsiais y byg hwn. Anfon cais tynnu at y gosodwyr. Cafodd ei ladd.

Beth a pham rydym yn ei wneud mewn cronfeydd data Ffynhonnell Agored. Andrey Borodin (Yandex.Cloud)

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

Ar ôl hynny daeth i'r amlwg bod angen cael y swyddogaeth hon yn fersiwn Greenplum ar gyfer PostgreSQL 12. Hynny yw, mae'r antur 20 munud yn parhau gydag anturiaethau diddorol newydd. Roedd yn ddiddorol cyffwrdd â'r datblygiad presennol, lle mae'r gymuned yn torri nodweddion newydd a phwysicaf. Mae wedi rhewi.

Beth a pham rydym yn ei wneud mewn cronfeydd data Ffynhonnell Agored. Andrey Borodin (Yandex.Cloud)

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

Ond ni ddaeth i ben yno. Ar ôl popeth, daeth yn amlwg bod angen i ni ysgrifennu dogfennaeth ar gyfer hyn i gyd.

Dechreuais ysgrifennu dogfennaeth. Yn ffodus, daeth y rhaglenwyr dogfen o Pivotal draw. Saesneg yw eu hiaith frodorol. Fe wnaethon nhw fy helpu gyda'r ddogfennaeth. Yn wir, fe wnaethon nhw eu hunain ailysgrifennu'r hyn a gynigiais i mewn i Saesneg go iawn.

Ac yma, mae'n ymddangos, daeth yr antur i ben. Ac ydych chi'n gwybod beth ddigwyddodd wedyn? Daeth y bechgyn o’r tacsi ataf a dweud: “Mae dwy antur o hyd, pob un am 10 munud.” A beth ddylwn i ei ddweud wrthyn nhw? Dywedais y byddaf nawr yn rhoi adroddiad ar raddfa, yna byddwn yn gweld eich anturiaethau, oherwydd mae hon yn swydd ddiddorol.

Beth a pham rydym yn ei wneud mewn cronfeydd data Ffynhonnell Agored. Andrey Borodin (Yandex.Cloud)

Beth ddysgon ni o'r achos hwn? Gan fod gweithio gyda ffynhonnell agored bob amser yn gweithio gyda pherson penodol, mae bob amser yn gweithio gyda'r gymuned. Oherwydd ar bob cam roeddwn yn gweithio gyda rhai datblygwr, rhai profwr, rhai haciwr, rhai dogfennydd, rhai pensaer. Doeddwn i ddim yn gweithio gyda Greenplum, roeddwn i'n gweithio gyda phobl o gwmpas Greenplum.

Ond! Mae pwynt pwysig arall - dim ond gwaith ydyw. Hynny yw, rydych chi'n dod, yn yfed coffi, yn ysgrifennu cod. Mae pob math o invariants syml yn gweithio. Gwnewch hynny fel arfer - bydd yn iawn! Ac mae'n swydd eithaf diddorol. Mae yna gais am y gwaith hwn gan gleientiaid Yandex.Cloud, defnyddwyr ein clystyrau y tu mewn i Yandex a thu allan. A chredaf y bydd nifer y prosiectau y byddwn yn cymryd rhan ynddynt yn cynyddu a bydd dyfnder ein cyfranogiad hefyd yn cynyddu.

Dyna i gyd. Symudwn ymlaen at y cwestiynau.

Beth a pham rydym yn ei wneud mewn cronfeydd data Ffynhonnell Agored. Andrey Borodin (Yandex.Cloud)

Sesiwn cwestiynau

Helo! Mae gennym sesiwn cwestiwn ac ateb arall. Ac yn y stiwdio Andrei Borodin. Dyma'r person sydd newydd ddweud wrthych am gyfraniad Yandex.Cloud a Yandex i ffynhonnell agored. Nid yw ein hadroddiad yn awr yn ymwneud yn gyfan gwbl â'r Cwmwl, ond ar yr un pryd rydym yn seiliedig ar dechnolegau o'r fath. Heb yr hyn a wnaethoch y tu mewn i Yandex, ni fyddai unrhyw wasanaeth yn Yandex.Cloud, felly diolch i chi gennyf yn bersonol. A’r cwestiwn cyntaf o’r darllediad: “Ar beth mae pob un o’r prosiectau y soniasoch amdanynt yn ysgrifenedig?”

Mae'r system wrth gefn yn WAL-G wedi'i hysgrifennu yn Go. Dyma un o'r prosiectau mwy newydd yr ydym wedi gweithio arno. Yn llythrennol dim ond 3 oed yw e. Ac mae cronfa ddata yn aml yn ymwneud â dibynadwyedd. Ac mae hyn yn golygu bod y cronfeydd data yn eithaf hen ac maent fel arfer yn cael eu hysgrifennu yn C. Dechreuodd prosiect Postgres tua 30 mlynedd yn ôl. Yna'r C89 oedd y dewis cywir. Ac mae Postgres wedi'i ysgrifennu arno. Mae cronfeydd data mwy modern fel ClickHouse fel arfer yn cael eu hysgrifennu yn C++. Mae pob datblygiad system yn seiliedig ar C a C++.

Cwestiwn gan ein rheolwr ariannol, sy'n gyfrifol am dreuliau yn Cloud: "Pam mae Cloud yn gwario arian ar gefnogi ffynhonnell agored?"

Mae ateb syml i'r rheolwr ariannol yma. Gwnawn hyn i wella ein gwasanaethau. Ym mha ffyrdd y gallwn ni wneud yn well? Gallwn wneud pethau'n fwy effeithlon, yn gyflymach, a gwneud pethau'n fwy graddadwy. Ond i ni, mae'r stori hon yn ymwneud yn bennaf â dibynadwyedd. Er enghraifft, mewn system wrth gefn rydym yn adolygu 100% o'r clytiau sy'n berthnasol iddo. Rydyn ni'n gwybod beth yw'r cod. Ac rydym yn fwy cyfforddus yn cyflwyno fersiynau newydd i gynhyrchu. Hynny yw, yn gyntaf oll, mae'n ymwneud â hyder, parodrwydd ar gyfer datblygiad a dibynadwyedd

Cwestiwn arall: “A yw gofynion defnyddwyr allanol sy'n byw yn Yandex.Cloud yn wahanol i ddefnyddwyr mewnol sy'n byw yn y Cwmwl mewnol?”

Mae'r proffil llwyth, wrth gwrs, yn wahanol. Ond o safbwynt fy adran, mae'r holl achosion arbennig a diddorol yn cael eu creu ar lwyth ansafonol. Mae datblygwyr â dychymyg, datblygwyr sy'n gwneud yr annisgwyl, yr un mor debygol o gael eu canfod yn fewnol ac yn allanol. Yn hyn o beth, rydym i gyd tua'r un peth. Ac, yn ôl pob tebyg, yr unig nodwedd bwysig y tu mewn i weithrediad Yandex o gronfeydd data fydd bod gennym ni ddysgeidiaeth y tu mewn i Yandex. Ar ryw adeg, mae rhywfaint o barth argaeledd yn mynd i gysgod yn llwyr, a rhaid i bob gwasanaeth Yandex barhau i weithredu er gwaethaf hyn rywsut. Gwahaniaeth bach yw hwn. Ond mae'n creu llawer o ddatblygiad ymchwil ar ryngwyneb y gronfa ddata a'r pentwr rhwydwaith. Fel arall, mae gosodiadau allanol a mewnol yn cynhyrchu'r un ceisiadau am nodweddion a cheisiadau tebyg ar gyfer gwella dibynadwyedd a pherfformiad.

Cwestiwn nesaf: “Sut ydych chi'n bersonol yn teimlo am y ffaith bod llawer o'r hyn rydych chi'n ei wneud yn cael ei ddefnyddio gan Gymylau eraill?” Ni fyddwn yn enwi rhai penodol, ond mae llawer o brosiectau a wnaed yn Yandex.Cloud yn cael eu defnyddio yng nghymylau pobl eraill.

Mae hyn yn cŵl. Yn gyntaf, mae’n arwydd ein bod wedi gwneud rhywbeth yn iawn. Ac mae'n crafu'r ego. Ac rydym yn fwy hyderus ein bod wedi gwneud y penderfyniad cywir. Ar y llaw arall, dyma'r gobaith yn y dyfodol y bydd hyn yn dod â syniadau newydd i ni, ceisiadau newydd gan ddefnyddwyr trydydd parti. Mae'r rhan fwyaf o faterion ar GitHub yn cael eu creu gan weinyddwyr system unigol, DBAs unigol, penseiri unigol, peirianwyr unigol, ond weithiau mae pobl â phrofiad systematig yn dod i ddweud bod gennym y broblem hon mewn 30% o rai achosion a gadewch i ni feddwl sut i'w datrys. Dyma beth rydym yn edrych ymlaen ato fwyaf. Edrychwn ymlaen at rannu profiadau gyda llwyfannau cwmwl eraill.

Fe wnaethoch chi siarad llawer am y marathon. Gwn eich bod wedi rhedeg marathon ym Moscow. Fel canlyniad? Goddiweddyd y bois o PostgreSQL?

Na, mae Oleg Bartunov yn rhedeg yn gyflym iawn. Gorffennodd awr o fy mlaen. Ar y cyfan, rwy'n hapus â pha mor bell yr es. I mi, roedd gorffen yn unig yn gamp. Ar y cyfan, mae'n syndod bod cymaint o redwyr yn y gymuned postgres. Mae’n ymddangos i mi fod rhyw fath o berthynas rhwng chwaraeon aerobig a’r awydd am raglennu systemau.

Ydych chi'n dweud nad oes rhedwyr yn ClickHouse?

Gwn yn sicr eu bod yno. Mae ClickHouse hefyd yn gronfa ddata. Gyda llaw, mae Oleg nawr yn ysgrifennu ataf: “A gawn ni redeg ar ôl yr adroddiad?” Mae hwn yn syniad gwych.

Cwestiwn arall o’r darllediad gan Nikita: “Pam wnaethoch chi drwsio’r byg yn Greenplum eich hun a pheidio â’i roi i blant iau?” Yn wir, nid yw'n glir iawn beth yw'r byg ac ym mha wasanaeth, ond mae'n debyg ei fod yn golygu'r un y siaradoch chi amdano.

Ie, mewn egwyddor, gallai fod wedi ei roi i rywun. Dim ond y cod yr wyf newydd ei newid. Ac roedd yn naturiol i barhau i wneud hynny ar unwaith. Mewn egwyddor, mae'r syniad o rannu arbenigedd gyda'r tîm yn syniad da. Byddwn yn bendant yn rhannu tasgau Greenplum ymhlith holl aelodau ein hadran.

Gan ein bod ni'n siarad am blant iau, dyma gwestiwn. Penderfynodd y person greu'r ymrwymiad cyntaf yn Postgres. Beth sydd angen iddo ei wneud i gyflawni'r ymrwymiad cyntaf?

Mae hwn yn gwestiwn diddorol: “Ble i ddechrau?” Fel arfer mae'n eithaf anodd dechrau gyda rhywbeth yn y cnewyllyn. Yn Postgres, er enghraifft, mae rhestr i'w gwneud. Ond mewn gwirionedd, dyma daflen o'r hyn y maent yn ceisio ei wneud, ond ni lwyddodd. Mae'r rhain yn bethau cymhleth. Ac fel arfer gallwch ddod o hyd i rai cyfleustodau yn yr ecosystem, rhai estyniadau y gellir eu gwella, sy'n denu llai o sylw gan ddatblygwyr cnewyllyn. Ac, yn unol â hynny, mae mwy o bwyntiau ar gyfer twf yno. Yn y rhaglen Google Summer of code, bob blwyddyn mae cymuned postgres yn cyflwyno llawer o wahanol bynciau y gellid mynd i'r afael â nhw. Eleni, rwy'n meddwl, roedd gennym dri myfyriwr. Ysgrifennodd un hyd yn oed yn WAL-G ar bynciau sy'n bwysig i Yandex. Yn Greenplum, mae popeth yn symlach nag yng nghymuned Postgres, oherwydd mae hacwyr Greenplum yn trin ceisiadau tynnu yn dda iawn ac yn dechrau adolygu ar unwaith. Mater o fisoedd yw anfon darn i Postgres, ond bydd Greenplum yn dod mewn diwrnod i weld beth rydych chi wedi'i wneud. Peth arall yw bod angen i Greenplum ddatrys problemau cyfredol. Nid yw Greenplum yn cael ei ddefnyddio'n eang, felly mae dod o hyd i'ch problem yn eithaf anodd. Ac yn gyntaf oll, mae angen inni ddatrys problemau, wrth gwrs.

Ffynhonnell: hab.com