19 hidra koppe. Goeie oorsig van die program

Op 11-12 Julie word 'n konferensie in St Hydratoegewy aan die ontwikkeling van parallelle en verspreide stelsels. Die ding van Hydra is dat dit topwetenskaplikes (wat gewoonlik net by buitelandse wetenskaplike konferensies gevind word) en bekende praktiserende ingenieurs kombineer in een groot program op die kruising van wetenskap en praktyk.

Hydra is een van ons belangrikste konferensies die afgelope jare. Dit is voorafgegaan deur baie ernstige voorbereiding, keuring van sprekers en verslae. verlede week daaroor habro-onderhoud uitgekom met die direkteur van die JUG.ru Groep, Alexey Fedorov (23 derevo).

Ons is reeds vertel oor drie belangrike deelnemers, die stigters van die teorie van verspreide stelsels - Leslie Lamport, Maurice Herlihy en Michael Scott. Dit is tyd om meer oor die hele program te praat!

19 hidra koppe. Goeie oorsig van die program

Motivering

As jy programmeer, dan het jy op een of ander manier te doen met multithreading en verspreide rekenaars. Spesialiste in die betrokke velde werk direk met hulle, maar implisiet kyk verspreiding van oral na ons: in enige multi-kern rekenaar of verspreide diens is daar iets wat berekeninge parallel doen.

Daar is baie konferensies wat sekere aspekte van toepassingsprogrammering dek. Aan die ander kant van die spektrum het ons spesiale wetenskaplike skole, in die formaat van lesings, wat groot hoeveelhede komplekse teorie openbaar. Byvoorbeeld, parallel met Hydra in St. SPTDC skool. By die Hydra-konferensie het ons probeer om die harde praktyk, en wetenskap, en alles wat by hul kruising is, bymekaar te bring.

Dink hieraan: ons leef in 'n wonderlike tyd waar jy die stigters van die veld van wetenskap en ingenieurswese waarmee ons besig is, lewendig kan ontmoet. Fisici sal nie Newton of Einstein ontmoet nie – die trein het vertrek. Maar diegene wat die fondamente van die teorie van verspreide stelsels geskep het, gewilde programmeertale uitgevind het en dit alles vir die eerste keer in werkende prototipes beliggaam het, woon steeds langs ons. Hierdie mense het nie halfpad hul werk bedank nie, doen tans werklike take by wêreldbekende universiteite en maatskappye, en is vandag se grootste bronne van kennis en ervaring.

Aan die ander kant bly die geleentheid om hulle te ontmoet gewoonlik suiwer teoreties: min van ons kan voortdurend openbare geleenthede by een of ander Universiteit van Rochester monitor om dan na die VSA te jaag en terug na 'n lesing deur Michael Scott. Om al die lede van Hydra in die algemeen te besoek sal 'n klein fortuin wees, afgesien van die afgrond van tyd wat spandeer word (hoewel dit na 'n interessante soeke klink).

Aan die ander kant het ons baie top-ingenieurs wat tans aan die werklike probleme van verspreide stelsels werk, en hulle het beslis iets om te vertel. Maar hier is die probleem - hulle werken hulle tyd is kosbaar. Ja, as jy ’n werknemer van Microsoft, Google of JetBrains is, neem die waarskynlikheid om een ​​van die bekende sprekers by ’n interne geleentheid te ontmoet dramaties toe, maar oor die algemeen – nee, dit gebeur nie elke dag nie.

Op hierdie manier bereik die Hydra-konferensie 'n belangrike taak wat die meeste van ons nie op ons eie kan doen nie - op een plek en op een tyd, bring mense byeen wie se idees of kommunikasie met wie jou lewe kan verander. Ek gee toe dat nie almal verspreide stelsels nodig het nie, sommige komplekse fundamentele dinge. Jy kan vir die res van jou lewe CRUD's in PHP programmeer en heeltemal gelukkig wees. Maar wie het dit nodig - dit is jou kans.

Nogal baie tyd het verloop sedert die eerste aankondiging van die Hydra-konferensie op Habré. Gedurende hierdie tyd is baie werk gedoen - en nou het ons 'n lys van byna alle verslae. Geen trae enkeldraadalgoritmes nie, net suiwer verspreide hardcore! Kom ons eindig met algemene woorde, en kyk wat ons nou byderhand het.

Hoofnote

Keynotes begin en eindig die dae van die konferensie. Gewoonlik is die doel van die openingstoespraak om die algemene gees en rigting van die konferensie te bepaal. Die slottoespraak trek 'n streep en verduidelik hoe ons kan saamleef met die kennis en vaardighede wat gedurende die dae van die konferensie opgedoen is. Begin en einde: wat die beste onthou word, en in die algemeen, het 'n groter waarde.

Cliff klik- Die H2O-verspreide K/V-algoritme

19 hidra koppe. Goeie oorsig van die program Cliff is 'n legende in die Java-wêreld. In die laat 90's het hy vir 'n PhD-tesis 'n referaat geskryf genaamd "Kombineer ontledings, kombineer optimalisering", wat na 'n geruime tyd die basis geword het vir die HotSpot JVM Server Compiler. Twee jaar later het hy reeds by Sun Microsystems aan die JVM gewerk en vir die hele wêreld gewys dat die JIT bestaansreg het. Hierdie hele storie dat Java een van die vinnigste moderne looptye is met die slimste en vinnigste optimaliserings, het van Cliff Click gekom. Heel aan die begin is daar geglo dat as daar iets beskikbaar is vir 'n statiese samesteller, jy dit nie eers kan probeer jit nie. Danksy die werk van Cliff en die span, begin alle nuwe tale geskep word met die idee van JIT-samestelling by verstek. Dit was natuurlik nie die werk van een persoon nie, maar Cliff het 'n baie belangrike rol daarin gespeel.

In die openingstoespraak sal Cliff oor sy ander onderneming praat - H20, 'n in-geheue platform vir verspreide en skaalbare masjienleer vir industriële toepassings. Meer presies, oor die verspreide berging van sleutel-waarde-pare daarin. Dit is 'n baie vinnige berging met baie interessante eienskappe (die presiese lys is in beskrywing) wat die gebruik van soortgelyke oplossings in die wiskunde van groot datastroom toelaat.

Nog 'n praatjie wat Cliff sal hou is Die Azul Hardware Transactional Memory-ervaring. Nog 'n deel van sy biografie - tien jaar werk in Azul, waar hy baie dinge in die Azul-hardeware- en tegnologiestapel opgedateer en verbeter het: JIT-samestellers, looptyd, draadmodel, fouthantering, stapelmanipulasie, hardeware-onderbrekings, klaslaai, ensovoorts, ensovoorts - wel, jy kry die idee.

Die interessantste deel het begin toe hulle hardeware vir groot ondernemings gemaak het - 'n superrekenaar om Java te laat loop. Dit was nogal 'n innoverende ding, spesifiek aangepas vir Java, wat spesiale vereistes het - geheue hindernisse vir lees vir lae-pouse vullisversameling, skikkings met perke kontrolering, virtuele oproepe ... Een van die coolste tegnologieë is hardeware transaksionele geheue. Die hele L1 van enige van die 864 kerns kan deelneem aan 'n transaksionele skryfwerk, wat veral belangrik is om met slotte in Java te werk (gesinchroniseerde blokke kan parallel werk, solank daar geen werklike geheuekonflik is nie). Maar die pragtige idee het teen die harde werklikheid gebots - en in hierdie verslag sal Cliff jou vertel hoekom HTM en STM nie goed geskik is vir die praktiese behoeftes van multi-threaded rekenaar nie.

Michael Scott- Dubbele datastrukture

19 hidra koppe. Goeie oorsig van die program Michael Scott - Professor in Rekenaarwetenskap aan die Universiteit van Rochester, met wie die noodlot hom verbind het al 34 jaar lank, en by sy geboorteland Universiteit van Wisconsin–Madison, was vyf jaar lank dekaan. Hy is besig met navorsing op die gebied van parallelle en verspreide programmering en taalontwerp en leer dit aan studente.

Die hele wêreld ken Michael danksy die handboek "Programmering van taalpragmatiek", waarvan die jongste uitgawe betreklik onlangs gepubliseer is - in 2015. Sy werk "Algorithmes vir skaalbare sinchronisasie op multiverwerkers met gedeelde geheue" ontvang Dijkstra-prys as een van die bekendste op die gebied van verspreide rekenaars en lê openlik by die Universiteit van Rochester se aanlynbiblioteek. Jy ken hom dalk ook as die skrywer van dieselfde Michael-Scott-algoritme van "Eenvoudige, vinnige en praktiese nie-blokkerende en blokkerende gelyktydige tou-algoritmes".

Wat die Java-wêreld betref, is dit 'n spesiale geval: saam met Doug Lea het hy daardie nie-blokkerende algoritmes en sinchroniese rye ontwikkel waarop Java-biblioteke loop. Dit is waaroor die "Dual data structures" hoofnota gaan handel - die bekendstelling van hierdie strukture in Java SE 6 het ons in staat gestel om prestasie met 10 keer te verbeter java.util.concurrent.ThreadPoolExecutor. As jy vooraf belangstel wat hierdie "Dubbele datastrukture" is, dan is daar verwante werk.

Maurice Herlihy- Blokkettings en die toekoms van verspreide rekenaars

19 hidra koppe. Goeie oorsig van die program Maurice Herlihy - Wenner van twee Dijkstra-toekennings. Die eerste is vir werk "Wagvrye sinchronisasie" (Brown University), en die tweede, meer onlangse - "Transaksionele geheue: argitektoniese ondersteuning vir slotvrye datastrukture" (Virginia Tech University). Die Dijkstra-prys word gegee vir werke waarvan die betekenis en invloed reeds vir minstens tien jaar merkbaar is, en dit is duidelik dat Maurice een van die bekendste spesialiste op die gebied is. Hy is tans 'n professor aan die Brown Universiteit en het paragraaflange prestasies.

In hierdie slottoespraak sal Maurice praat oor die teorie en praktyk van blockchain-verspreide stelsels vanuit die oogpunt van die klassieke van verspreide rekenaars en hoe dit baie verwante probleme vereenvoudig. Hierdie verslag handel uitsluitlik oor die onderwerp van die konferensie – glad nie oor die mynbou-hype nie, maar eerder oor hoe ons kennis verbasend effektief en toepaslik gebruik kan word met betrekking tot 'n verskeidenheid take.

In Julie 2017 het Maurice reeds na Rusland na die SPTDC-skool gekom, aan die JUG.ru-byeenkoms deelgeneem, en die opname kan op YouTube bekyk word:

Hoofprogram

Dan sal daar 'n kort oorsig wees van die verslae wat in die program ingesluit is. Sommige van die verslae word hier in detail beskryf, sommige meer kortliks. Lang beskrywings het hoofsaaklik gegaan na Engelstalige verslae wat skakels na wetenskaplike referate, terme op Wikipedia, ensovoorts vereis. 'n Volledige lys kan wees sien op die konferensie webwerf. Die lys op die webwerf sal bygewerk en aangevul word.

Leslie Lamport- V & A

19 hidra koppe. Goeie oorsig van die program Leslie Lamport is 'n baanbreker skrywer van verspreide rekenaars. LaTeX staan ​​vir "Lamport TeX". Dit was hy wat vir die eerste keer, terug in 1979, die konsep bekendgestel het konsekwente konsekwentheid, en sy artikel "Hoe om 'n multiverwerker-rekenaar te maak wat multiproses-programme korrek uitvoer" die Dijkstra-prys ontvang.

Dit is die mees ongewone deel van die program wat formaat betref, want dit is nie eers 'n verslag nie, maar 'n vraag-en-antwoordsessie. Wanneer 'n beduidende deel van die gehoor reeds vertroud is (of vertroud kan raak) met allerlei werke gebaseer op Lamport se teorie, sy eie artikels en verslae, is dit belangriker om alle beskikbare tyd aan direkte kommunikasie te bestee.

Die idee is eenvoudig – jy kyk twee verslae op YouTube: "Programmering moet meer wees as kodering" и "As jy nie 'n program skryf nie, moenie 'n programmeertaal gebruik nie" en berei ten minste een vraag voor, en Leslie antwoord.

Die eerste van hierdie twee video's het ons reeds het in snert verander. As jy nie 'n uur tyd het om na die video te kyk nie, kan jy dit alles vinnig in teksvorm lees.

Let wel: Daar is baie meer video's op YouTube met Leslie Lamport. Byvoorbeeld, daar is 'n uitstekende TLA+ kursus. 'n Vanlyn weergawe van hierdie hele kursus is beskikbaar by skrywer se tuisblad, en op YouTube het hy dit geskink vir geriefliker kyk op mobiele toestelle.

Martin Kleppman - Sinkroniseer data oor gebruikertoestelle vir verspreide samewerking

19 hidra koppe. Goeie oorsig van die program Martin Kleppmann is 'n navorser aan die Universiteit van Cambridge wat aan CRDT en formele algoritmeverifikasie werk. Martin se boek "Ontwerp data-intensiewe toepassings", wat in 2017 gepubliseer is, was baie suksesvol en het die topverkoperlyste op die gebied van databerging en -verwerking getref. Kevin Scott, CTO by Microsoft eenkeer gesê: “Hierdie boek behoort 'n moet vir ontwerpingenieurs te wees. Dit is 'n seldsame hulpbron wat teorie en praktyk oorbrug om ontwikkelaars te help om data-infrastruktuur en -stelsels slimmer te ontwerp en te implementeer." Iets soortgelyks is gesê deur die skepper van Kafka en CTO Confluent, Jay Kreps.

Voordat hy na akademiese navorsing oorgegaan het, het Martin in die bedryf gewerk en medestigter van twee suksesvolle beginners:

  • Rapportief, toegewy aan die vertoon van die sosiale profiel van jou e-poskontakte, wat LinkedIn in 2012 gekoop het;
  • Go Test It, 'n multi-blaaier outomatiese webwerf kontroleerder wat RedGate gekoop het in 2009.

Oor die algemeen, alhoewel Martin minder bekend is as ons hoofleiers, kon hy reeds 'n bydrae lewer tot die ontwikkeling van verspreide rekenaars en tot die bedryf.

In hierdie praatjie sal Martin praat oor 'n onderwerp nader aan sy akademiese navorsing. In Google Docs en 'n soortgelyke bank vir mede-outeur van dokumente, beteken "co-outeuring" 'n replikasietaak: elke gebruiker het hul eie replika van 'n gedeelde dokument, wat hulle dan wysig, en alle veranderinge word oor die netwerk na die res gestuur van die deelnemers. Vanlyn veranderinge aan dokumente lei tot tydelike dokumentinkonsekwentheid met betrekking tot ander deelnemers, en hersinchronisasie vereis konflikhantering. Net hiervoor is daar Konflikvrye gerepliseerde datatipes (CRDT), in werklikheid, is 'n redelik nuwe ding, waarvan die essensie eers in 2011 geformuleer is. Hierdie praatjie bespreek wat sedertdien in die CRDT-wêreld gebeur het, wat die jongste ontwikkelings is, bespreek die benadering tot die bou van plaaslike eerste toepassings in die algemeen, en die gebruik van 'n oopbronbiblioteek Automerge in die besonder.

Volgende week publiseer ons 'n groot onderhoud met Martin op Habré, dit sal interessant wees.

Pedro Ramalhete - Wagvrye datastrukture en wagvrye transaksies

19 hidra koppe. Goeie oorsig van die program Pedro werk by Cisco en het die afgelope tien jaar parallelle algoritmes ontwikkel, insluitend sinchronisasiemeganismes, slotvrye en wagvrye datastrukture, en alles waaraan jy kan dink oor hierdie onderwerp. Sy huidige navorsings- en ingenieursbelangstellings is gefokus op Universele Konstruksies, Sagteware Transaksionele Geheue, Aanhoudende Geheue, en soortgelyke tegnologieë om korrekte, skaalbare en foutverdraagsame toepassings moontlik te maak. En hy is ook die skrywer van 'n blog wat algemeen bekend is in eng kringe Gelyktydige freaks.

Die meeste multidraadtoepassings loop nou op parallelle datastrukture, van die gebruik van boodskaprye tussen akteurs tot geïndekseerde datastrukture in sleutelwaarde-winkels. Hulle werk al baie jare suksesvol in die Java JDK, en hulle word stadig by C ++ gevoeg.

Die eenvoudigste manier om 'n parallelle datastruktuur te implementeer is 'n seriële (enkeldraad) implementering waarin die metodes deur mutexes beskerm word. Dit is beskikbaar vir enige Junie, maar het duidelike skaal- en prestasieprobleme. Terselfdertyd hanteer slotvrye en wagvrye datastrukture nie net foute beter nie, maar het ook 'n beter werkverrigtingprofiel - die ontwikkeling daarvan verg egter diepgaande kundigheid en aanpassing by 'n spesifieke gebruiksgeval. Een verkeerde reël kode is genoeg om alles te breek.

Hoe om seker te maak dat selfs 'n nie-deskundige sulke datastrukture kan ontwerp en implementeer? Dit is bekend dat enige opeenvolgende algoritme draadveilig gemaak kan word deur een van hulle universele ontwerp, of transaksionele geheue. Vir een, hulle kan die toegangsdrempel verlaag om hierdie probleem op te los. Albei oplossings is egter geneig om tot ondoeltreffende implementerings te lei. Pedro sal praat oor hoe hulle dit reggekry het om hierdie konstruksies meer doeltreffend te maak en hoe dit vir hul algoritmes gebruik kan word.

Heidi Howard- Bevryding van verspreide konsensus

19 hidra koppe. Goeie oorsig van die program Heidi Howard is, soos Martin, 'n verspreide stelselnavorser aan die Universiteit van Cambridge. Haar spesialisering is konsekwentheid, fouttoleransie, prestasie en verspreide konsensus. Sy is veral bekend vir haar veralgemening van die Paxos-algoritme genoem Buigsame Paxos.

Onthou dat Paxos - 'n familie van protokolle vir die oplossing van die probleem van konsensus in 'n netwerk van onbetroubare rekenaars, wat gebaseer was op die werk van Leslie Lamport. So, sommige van ons sprekers werk aan take wat oorspronklik deur ons ander sprekers voorgestel is – en dit is wonderlik.

Die vermoë om konsensus tussen veelvuldige gashere te vind - vir aanspreek, leierseleksie, blokkering of koördinering - is 'n fundamentele kwessie in vandag se verspreide stelsels. Paxos is nou die belangrikste manier om konsensusprobleme op te los, en daar is baie navorsing daaroor om die algoritme vir verskeie praktiese behoeftes uit te brei en te optimaliseer.

In hierdie verslag sal ons die teoretiese basis van Paxos hersien, die aanvanklike vereistes verslap en die algoritme veralgemeen. Ons sal sien dat Paxos in werklikheid slegs een van die opsies is onder 'n groot verskeidenheid benaderings tot konsensus, en dat ander punte op die spektrum ook baie nuttig is om goeie verspreide stelsels te bou.

Alex Petrov - Verminder u bergingskoste met verbygaande replikasie en goedkoop kworums

19 hidra koppe. Goeie oorsig van die program Alex is 'n databasis- en bergingspesialis en, nog belangriker, 'n toewyder by Cassandra. Hy werk tans saam met O'Reilly aan die Database Internals-boek.

Vir stelsels met uiteindelike konsekwentheid (in Russiese terminologie - "uiteindelik konsekwent"), na 'n nodus-ongeluk of netwerkverdeling, moet die volgende dilemma opgelos word: óf gaan voort om versoeke te vervul, offer konsekwentheid op, óf weier om dit uit te voer en offer beskikbaarheid op. In so 'n stelsel kan kworums, oorvleuelende substelle nodusse en die versekering dat ten minste een nodus die mees onlangse waarde bevat, 'n goeie randoplossing wees. Dit is moontlik om mislukkings en verlies van verbinding met sommige nodusse te oorleef terwyl jy aanhou reageer met die mees onlangse waardes.

Alles het egter sy prys. 'n Kworumreplikasieskema beteken 'n verhoogde koste van berging: jy moet oortollige data op verskeie nodusse tegelyk stoor om te verseker dat genoeg kopieë beskikbaar is wanneer 'n probleem voorkom. Dit blyk dat jy nie al die data op alle replikas kan stoor nie. Jy kan die las op berging verminder as jy data net op 'n deel van die nodusse hou, en spesiale nodusse (Transient Replica) gebruik vir mislukkingshanteringscenario's.

In die loop van die verslag sal ons oorweeg Getuie Replikas, die replikasieskema wat gebruik word in Spanner и Megawinkel, en die implementering van hierdie konsep in Apache Cassandra onder die name Verbygaande replikasie en goedkoop kworums.

Dmitri Vyukov - Goroutines ontbloot

19 hidra koppe. Goeie oorsig van die program Dmitry is 'n ontwikkelaar by Google wat werk aan C/C++ en Go dynamic testing - Address/Memory/ThreadSanitizer en soortgelyke gereedskap vir die Linux-kern. Hy het 'n skaalbare goroutine skeduleerder, 'n netwerk poller, en 'n gelyktydige vullisverwyderaar bygedra tot Go. Hy is 'n kenner in multithreading, die skrywer van 'n dosyn nuwe nie-blokkerende algoritmes en is die eienaar van Swart belt Intel.

Nou 'n bietjie oor die verslag self. Die Go-taal het inheemse ondersteuning vir multithreading in die vorm van goroutines (ligte drade) en kanale (EIEU-toue). Danksy hierdie meganismes is dit baie maklik en aangenaam vir gebruikers om moderne multithreaded-toepassings te skryf, en dit lyk soos magie. Soos ons verstaan, is hier geen towerkrag nie. In hierdie verslag sal Dmitri in die ingewikkeldhede van die Go-skeduleerder delf en die geheime van die implementering van hierdie "magie" wys. Eerstens sal hy 'n oorsig gee van die hoofkomponente van die skeduleerder, hoe dit werk. Vervolgens gaan ons sekere aspekte van nader bekyk, soos die parkering/ontparkeerstrategie en die hantering van blokkeerstelseloproepe. Laastens sal Dmitry 'n bietjie praat oor moontlike verbeterings in die skeduleerder.

Dmitri Bugaichenko - Versnel verspreide grafiek-analise met waarskynlike sketse en meer

19 hidra koppe. Goeie oorsig van die program Dmitry werk al byna 9 jaar in uitkontraktering, sonder om kontak met die universiteit en die wetenskaplike gemeenskap te verloor. Groot data-analise in Odnoklassniki was 'n unieke kans vir hom om teoretiese opleiding en wetenskaplike grondslag te kombineer met die ontwikkeling van regte, in-aanvraag produkte.

Verspreide grafiekanalise was en bly 'n moeilike taak: wanneer dit nodig word om inligting oor die verbindings van 'n naburige hoekpunt te bekom, moet die data dikwels tussen masjiene oorgedra word, wat lei tot 'n toename in uitvoeringstyd en 'n las op die netwerk infrastruktuur. In hierdie praatjie sal ons sien hoe jy 'n aansienlike versnelling van verwerking kan kry deur gebruik te maak van waarskynlike datastrukture of feite soos die simmetrie van die vriendskapsgrafiek in 'n sosiale netwerk. Dit alles word geïllustreer met Apache Spark-kode voorbeelde.

Denis Rystsov - Verminder u bergingskoste met verbygaande replikasie en goedkoop kworums

19 hidra koppe. Goeie oorsig van die program Denis - ontwikkelaar Kosmos DB, 'n kenner in konsekwentheidsmodelvalidering, konsensusalgoritmes en verspreide transaksies. Nou werk hy by Microsoft, en voor dit was hy besig met verspreide stelsels by Amazon en Yandex.

In hierdie verslag sal ons kennis maak met die verspreide transaksieprotokolle wat oor die afgelope paar jaar uitgevind is, wat aan die kliëntkant geïmplementeer kan word bo-op enige datastoor wat voorwaardelike opdatering ondersteun (vergelyk en stel). Die slotsom is dat die lewe nie eindig met 'n twee-fase commit nie, transaksies kan bo-op enige databasisse gevoeg word - op die toepassingsvlak, maar verskillende protokolle (2PC, Percolator, RAMP) het verskillende tradeoffs en word nie aan ons gegee nie. verniet.

Alexey Zinoviev - Nie alle ML-algoritmes beland in 'n verspreide paradys nie

19 hidra koppe. Goeie oorsig van die program Alexei (zaleslaw) is ons jarelange spreker en lid van programkomitees by ander konferensies. 'n Praktiserende afrigter by EPAM Systems, en is sedert 2012 vriende met Hadoop / Spark en ander grootdata.

In hierdie praatjie sal Alexey praat oor die probleme om klassieke masjienleeralgoritmes aan te pas vir verspreide uitvoering gebaseer op sy ervaring met Apache Spark ML, Apache Mahout, Apache Flink ML en die ervaring van die skep van Apache Ignite ML. Alexey sal ook praat oor die implementering van verspreide ML-algoritmes in hierdie raamwerke.

En ten slotte, twee verslae van Yandex oor Yandex-databasis.

Vladislav Kuznetsov — Yandex-databasis - hoe ons fouttoleransie bied

19 hidra koppe. Goeie oorsig van die program Vladislav is 'n ontwikkelaar by Yandex in die verspreide platformgroep. Yandex-databasis is 'n horisontaal skaalbare, geo-verspreide, foutverdraagsame DBBS wat mislukkings van skywe, bedieners, rakke en datasentrums kan weerstaan ​​sonder om konsekwentheid in te boet. Om foutverdraagsaamheid te verseker, word 'n eie verspreide konsensus-algoritme gebruik, sowel as 'n aantal tegniese oplossings, wat breedvoerig in die verslag bespreek word. Die verslag kan van belang wees vir beide DBMS-ontwikkelaars en ontwikkelaars van toegepaste oplossings gebaseer op DBMS.

Semyon Checherinda - Verspreide transaksies in YDB

19 hidra koppe. Goeie oorsig van die program Semyon is 'n ontwikkelaar in die verspreide platformgroep by Yandex, wat werk aan die moontlikheid van multi-huurdergebruik van die YDB-installasie.

Yandex-databasis is ontwerp vir OLTP-navrae en voldoen aan die ACID-vereistes vir 'n transaksionele stelsel. In die verslag sal ons die transaksieskeduleringsalgoritme onderliggend aan die YDB-transaksiestelsel oorweeg. Kom ons ontleed watter entiteite deelneem aan transaksies, wie 'n globale bestelling aan transaksies toeken, hoe transaksie-atomiteit, betroubaarheid en streng isolasievlak bereik word. Deur die voorbeeld van 'n algemene taak te gebruik, kom ons kyk na die implementering van transaksies deur 'n tweefase-verbintenis en deterministiese transaksies te gebruik. Kom ons bespreek hul verskille.

Wat is volgende?

Die konferensieprogram word steeds gevul met nuwe verslae. In die besonder verwag ons 'n verslag van Nikita Koval (ndkoval) van JetBrains en Oleg Anastasiev (m0nstermind) van Odnoklassniki. Nikita werk aan algoritmes vir koroutines in die Kotlin-span, en Oleg ontwikkel argitektuur en oplossings vir hoëladingstelsels in die Odnoklassniki-platform. Daarbenewens is daar nog 1 voorwaardelik leë gleuf, met kandidate waarvoor die programkomitee tans werk.

Die Hydra-konferensie vind op 11-12 Julie in St. Petersburg plaas. Kaartjies kan wees koop op die amptelike webwerf. Gee aandag aan die beskikbaarheid van Aanlynkaartjies – as jy om een ​​of ander rede nie deesdae regstreeks by St. Petersburg kan uitkom nie.

Sien jou by Hydra!

Bron: will.com

Voeg 'n opmerking