19 hydrapäätä. Loistava yleiskatsaus ohjelmaan

Konferenssi järjestetään 11.-12. heinäkuuta Pietarissa tursas, joka on omistettu rinnakkaisten ja hajautettujen järjestelmien kehittämiseen. Hydran temppu on se, että se yhdistää hienot tiedemiehet (jotka löytyy yleensä vain ulkomaisista tieteellisistä konferensseista) ja kuuluisat harjoittavat insinöörit yhdeksi suureksi ohjelmaksi tieteen ja käytännön risteyksessä.

Hydra on yksi tärkeimmistä konferensseistamme viime vuosina. Sitä edelsi erittäin vakava valmistelu, puhujien valinta ja raportit. Viime viikolla tästä habro-haastattelu ilmestyi JUG.ru Groupin johtajan Aleksei Fedorovin kanssa (23derevo).

me jo kerrottu kolmesta tärkeästä osallistujasta, hajautettujen järjestelmien teorian perustajista - Leslie Lamportista, Maurice Herlihystä ja Michael Scottista. On aika puhua tarkemmin koko ohjelmasta!

19 hydrapäätä. Loistava yleiskatsaus ohjelmaan

Motivaatio

Jos olet mukana ohjelmoinnissa, olet tavalla tai toisella tekemisissä monisäikeisen ja hajautetun laskennan kanssa. Asianomaisten alojen asiantuntijat työskentelevät heidän kanssaan suoraan, mutta implisiittisesti jakelu katsoo meitä kaikkialta: missä tahansa moniytimisessä tietokoneessa tai hajautetussa palvelussa on jotain, joka suorittaa laskelmia rinnakkain.

On monia konferensseja, jotka kattavat sovellusohjelmoinnin eri näkökohdat. Toisella puolella meillä on erikoistuneita tieteellisiä kouluja, jotka paljastavat valtavan määrän monimutkaista teoriaa luentomuodossa. Esimerkiksi Hydran rinnalla Pietarissa on SPTDC koulu. Hydra-konferenssissa yritimme tuoda yhteen ankaran käytännön, tieteen ja kaiken niiden risteyksessä.

Ajattele tätä: elämme hämmästyttävää aikaa, jolloin voit tavata henkilökohtaisesti tutkimamme tieteen ja tekniikan alan perustajat. Fyysikot eivät tapaa Newtonia tai Einsteinia - juna on lähtenyt. Mutta vieressämme elävät edelleen ne, jotka loivat hajautettujen järjestelmien teorian perusteet, keksivät suosittuja ohjelmointikieliä ja ilmensivät kaiken tämän ensimmäistä kertaa toimiviin prototyyppeihin. Nämä ihmiset eivät lopettaneet työtään puolivälissä, he työskentelevät parhaillaan kiireellisten asioiden parissa maailmankuuluissa yliopistoissa ja yrityksissä, ja he ovat tämän päivän suurimpia tiedon ja kokemuksen lähteitä.

Toisaalta mahdollisuus tavata heidät jää yleensä puhtaasti teoreettiseksi: harva meistä pystyy jatkuvasti seuraamaan julkisia tapahtumia jossain Rochesterin yliopistossa ja ryntäämään sitten Yhdysvaltoihin ja takaisin luennolle Michael Scottin kanssa. Kaikilla Hydran jäsenillä vieraileminen maksaisi pienen omaisuuden, kun hukkaan menevää aikaa ei oteta huomioon (vaikka se kuulostaakin mielenkiintoiselta seikkailulta).

Toisaalta meillä on monia huippuinsinöörejä, jotka työskentelevät hajautettujen järjestelmien kiireellisten ongelmien parissa juuri nyt, ja heillä on varmasti paljon kerrottavaa. Mutta tässä on ongelma - he toimivatja heidän aikansa on arvokasta. Kyllä, jos olet Microsoftin, Googlen tai JetBrainsin työntekijä, todennäköisyys tavata yksi kuuluisista puhujista sisäisessä tapahtumassa kasvaa jyrkästi, mutta yleensä ei, tätä ei tapahdu joka päivä.

Tällä tavalla Hydra-konferenssi toteuttaa tärkeän tehtävän, jota useimmat meistä eivät voi tehdä yksin - yhteen paikkaan ja kerralla se kokoaa yhteen ihmiset, joiden ideat tai vuorovaikutus kenen kanssa voivat muuttaa elämäsi. Myönnän, että kaikki eivät tarvitse hajautettuja järjestelmiä tai joitain monimutkaisia ​​perusasioita. Voit ohjelmoida CRUD:ita PHP:llä loppuelämäsi ajan ja pysyä täysin onnellisena. Mutta kuka tahansa sitä tarvitsee, tämä on tilaisuutesi.

Melko pitkä aika on kulunut siitä, kun ensimmäinen ilmoitus Hydra-konferenssista Habrésta. Tänä aikana on tehty paljon työtä - ja nyt meillä on lista melkein kaikista raporteista. Ei hitaita yksisäikeisiä algoritmeja, vain puhdasta hajautettua hardcorea! Lopetetaan yleisillä sanoilla ja katsotaan, mitä meillä on nyt käsissämme.

Pääpuheenvuorot

Pääpuheenvuorot alkavat ja lopettavat konferenssipäivät. Yleensä avauspuheen tarkoituksena on määrittää konferenssin yleinen henki ja suunta. Päätöspuheenvuoro vetää rajan ja selittää, kuinka voimme elää konferenssin aikana hankittujen tietojen ja taitojen kanssa. Alku ja loppu: se, mikä jää parhaiten mieleen ja ylipäätään, on kasvanut.

Cliff Click H2O-hajautettu K/V-algoritmi

19 hydrapäätä. Loistava yleiskatsaus ohjelmaan Cliff on legenda Java-maailmassa. 90-luvun lopulla hän kirjoitti väitöskirjaansa varten artikkelin "Analyysien yhdistäminen, optimointien yhdistäminen", josta jonkin aikaa myöhemmin tuli perusta HotSpot JVM Server Compilerille. Kaksi vuotta myöhemmin hän työskenteli jo Sun Microsystemsillä JVM:n parissa ja osoitti koko maailmalle, että JIT:llä on oikeus olla olemassa. Tämä koko tarina siitä, kuinka Java on yksi nopeimmista nykyaikaisista suoritusajoista älykkäimmällä ja nopeimmalla optimoinnilla, on peräisin Cliff Clickilta. Alussa uskottiin, että jos jokin on staattisen kääntäjän käytettävissä, sitä ei tarvitse edes yrittää puristaa. Cliffin ja tiimin työn ansiosta kaikkia uusia kieliä alettiin luoda oletuksena JIT-kokoelman idealla. Tämä ei tietenkään ollut yhden miehen työ, mutta Cliffillä oli siinä erittäin tärkeä rooli.

Avauspuheenvuorossa Cliff puhuu toisesta yrityksestään - H20, muistissa oleva alusta hajautettuun ja skaalautuvaan koneoppimiseen teollisiin sovelluksiin. Tai tarkemmin sanottuna avain-arvo-parien hajautettu tallennus sen sisällä. Tämä on erittäin nopea tallennustila, jossa on paljon mielenkiintoisia ominaisuuksia (tarkka luettelo löytyy kuvaus), jotka mahdollistavat samankaltaisten ratkaisujen käytön big datan suoratoiston matematiikassa.

Toinen raportti, jonka Cliff antaa, on - Azul Hardware Transactional Memory -kokemus. Toinen osa hänen elämäkertaansa - kymmenen vuotta töissä Azulilla, jossa hän päivitti ja paransi monia asioita Azul-laitteisto- ja teknologiapinossa: JIT-kääntäjät, ajonaika, säiemalli, virheiden käsittely, pinonkäsittely, laitteiston keskeytykset, luokan lataaminen ja niin edelleen ja niin edelleen - no, saat idea.

Mielenkiintoisin osa alkoi, kun he tekivät laitteistoa suurelle yritykselle - supertietokoneen Javaa varten. Se oli melko innovatiivinen asia, räätälöity erityisesti Javalle, jolla on erityisiä vaatimuksia - lukumuistiesteet matalan tauon roskankeräystä varten, taulukot rajojen tarkistuksella, virtuaalipuhelut... Yksi tyylikkäimmistä teknologioista on laitteiston tapahtumamuisti. Minkä tahansa 1 ytimen koko L864 voisi osallistua tapahtumien kirjoittamiseen, mikä on erityisen tärkeää Java-lukkojen kanssa työskennellessä (synkronoidut lohkot voivat toimia rinnakkain niin kauan kuin todellista muistiristiriitaa ei ole). Mutta kauniin idean murskasi karu todellisuus - ja tässä puheessa Cliff kertoo sinulle, miksi HTM ja STM eivät sovellu kovin hyvin monisäikeisen laskennan käytännön tarpeisiin.

Michael Scott - Kaksoistietorakenteet

19 hydrapäätä. Loistava yleiskatsaus ohjelmaan Michael Scott - Tietojenkäsittelytieteen professori Rochesterin yliopistossa, johon kohtalo yhdisti hänet jo 34-vuotias, ja kotonaan Wisconsin-Madisonin yliopistossa hän oli dekaani viisi vuotta. Hän tutkii ja opettaa opiskelijoille rinnakkais- ja hajautettua ohjelmointia ja kielisuunnittelua.

Koko maailma tuntee Michaelin oppikirjan ansiosta "Ohjelmointikielen pragmatiikka", jonka viimeisin painos julkaistiin suhteellisen äskettäin - vuonna 2015. Hänen työnsä "Algoritmit skaalautuvaan synkronointiin jaetun muistin moniprosessoreissa" sain Dijkstra-palkinto yhtenä tunnetuimmista hajautetun tietojenkäsittelyn alalla ja valehtelee avoimesti Rochesterin yliopiston verkkokirjastossa. Saatat myös tuntea hänet Michael-Scott-algoritmin kirjoittajana "Yksinkertaiset, nopeat ja käytännölliset ei-estävät ja estävät samanaikaiset jonoalgoritmit".

Mitä tulee Java-maailmaan, tämä on erikoistapaus: hän kehitti yhdessä Doug Lean kanssa estävät algoritmit ja synkroniset jonot, joilla Java-kirjastot toimivat. Juuri tästä "Dual data structures" -puheenvuorossa on kyse - näiden rakenteiden käyttöönotto Java SE 6:ssa on parantanut suorituskykyä 10 kertaa java.util.concurrent.ThreadPoolExecutor. Jos mietit etukäteen, mitä nämä "kaksoistietorakenteet" ovat, siitä on tietoa liittyvä työ.

Maurice Herlihy - Lohkoketjut ja hajautetun tietojenkäsittelyn tulevaisuus

19 hydrapäätä. Loistava yleiskatsaus ohjelmaan Maurice Herlihy - kahden Dijkstra-palkinnon voittaja. Ensimmäinen on työskentelyä varten "Odotusvapaa synkronointi" (Brown University) ja toinen, uudempi - "Transaktionaalinen muisti: arkkitehtoninen tuki lukitsemattomille tietorakenteille" (Virginia Tech University). Dijkstra-palkinnolla tunnustetaan työtä, jonka merkitys ja vaikutus on ollut näkyvissä vähintään kymmenen vuoden ajan ja Maurice on selvästi yksi alan tunnetuimmista asiantuntijoista. Hän työskentelee tällä hetkellä professorina Brownin yliopistossa ja hänellä on kappaleen mittainen luettelo saavutuksista.

Tässä päätöspuheenvuorossa Maurice puhuu lohkoketjuhajautettujen järjestelmien teoriasta ja käytännöstä hajautetun laskennan klassikkojen näkökulmasta ja kuinka se yksinkertaistaa monia siihen liittyviä ongelmia. Tämä on raportti yksinomaan konferenssin aiheesta - ei lainkaan kaivoshypestä, vaan pikemminkin siitä, kuinka tietoamme voidaan käyttää hämmästyttävän tehokkaasti ja tarkoituksenmukaisesti erilaisissa tehtävissä.

Heinäkuussa 2017 Maurice tuli jo Venäjälle SPTDC-kouluun, osallistui JUG.ru-tapaamiseen ja tallenne on katsottavissa YouTubessa:

Pääohjelma

Seuraavaksi on lyhyt katsaus ohjelmaan sisältyviin raportteihin. Joitakin raportteja kuvataan tässä yksityiskohtaisesti, toisia lyhyemmin. Pitkät kuvaukset menivät pääasiassa englanninkielisiin raportteihin, jotka vaativat linkkejä tieteellisiin kirjoituksiin, Wikipedian termejä ja niin edelleen. Täydellinen luettelo on saatavilla katso konferenssin verkkosivuilta. Sivuston listaa päivitetään ja täydennetään.

Leslie Lamport - Q & A

19 hydrapäätä. Loistava yleiskatsaus ohjelmaan Leslie Lamport on hajautetun tietojenkäsittelyn merkittävien teosten kirjoittaja. "LaTeX" tarkoittaa "Lamport TeX". Hän esitteli konseptin ensimmäisenä vuonna 1979 peräkkäinen johdonmukaisuus, ja hänen artikkelinsa "Kuinka tehdä moniprosessoritietokone, joka suorittaa moniprosessiohjelmia oikein" sai Dijkstra-palkinnon.

Tämä on muodoltaan ohjelman epätavallisin osa, koska se ei ole edes raportti, vaan kysymys ja vastaus. Kun merkittävä osa yleisöstä tuntee (tai voi tutustua) kaikenlaisiin ”Lamportin teoriaan”, hänen omiin artikkeleihinsa ja raportteihinsa perustuviin teoksiin, on tärkeämpää käyttää kaikki käytettävissä oleva aika suoraan viestintään.

Idea on yksinkertainen – katsot kaksi raporttia YouTubesta: "Ohjelmoinnin pitäisi olla muutakin kuin koodausta" и "Jos et kirjoita ohjelmaa, älä käytä ohjelmointikieltä" ja valmistele vähintään yksi kysymys, ja Leslie vastaa.

Ensimmäinen näistä kahdesta videosta meillä on jo muuttui habro-artikkeliksi. Jos sinulla ei ole tuntia aikaa katsoa videota, voit lukea sen nopeasti tekstimuodossa.

Huomautus: YouTubessa on paljon muita Leslie Lamport -videoita. Siellä on esimerkiksi erinomainen TLA+ kurssi. Koko kurssin offline-versio on saatavilla osoitteessa kirjoittajan kotisivu, ja hän latasi sen YouTubeen, jotta se olisi helpompi katsoa mobiililaitteilla.

Martin Kleppmann - Tietojen synkronointi käyttäjien laitteiden välillä hajautettua yhteistyötä varten

19 hydrapäätä. Loistava yleiskatsaus ohjelmaan Martin Kleppmann on Cambridgen yliopiston tutkija, joka työskentelee CRDT:n ja algoritmien muodollisen todentamisen parissa. Martinin kirja "Data-intensiivisten sovellusten suunnittelu", julkaistu vuonna 2017, osoittautui erittäin menestyksekkääksi ja pääsi bestseller-listoille tietojen tallennuksen ja käsittelyn alalla. Kevin Scott, Microsoftin teknologiajohtaja, kerran sanottu: "Tämän kirjan pitäisi olla ohjelmistosuunnittelijoiden pakollinen hankinta. Tämä on harvinainen resurssi, joka yhdistää teorian ja käytännön auttaakseen kehittäjiä älykkäämmin suunnittelemaan ja toteuttamaan infrastruktuuria ja tietojärjestelmiä." Kafkan luoja ja Confluentin teknologiajohtaja Jay Kreps sanoi jotain samanlaista.

Ennen siirtymistään akateemiseen tutkimukseen Martin työskenteli teollisuudessa ja oli mukana perustamassa kahta menestyvää start-upia:

  • Rapportive, omistettu näyttämään kontaktien sosiaalinen profiili sähköpostistasi, jonka LinkedIn osti vuonna 2012;
  • Go Test It, RedGate osti vuonna 2009 palvelu, joka testaa automaattisesti verkkosivustoja eri selaimissa.

Yleisesti ottaen Martin, vaikka se on vähemmän kuuluisa kuin pääpuhujamme, on jo kyennyt antamaan jonkin verran panosta hajautetun tietojenkäsittelyn ja teollisuuden kehittämiseen.

Tässä puheessa Martin puhuu aiheesta, joka on lähempänä hänen akateemista tutkimustaan. Google Docsissa ja vastaavissa dokumenttien yhteismuokkaussohvilla "yhteistyömuokkaus" tarkoittaa replikointitehtävää: jokaisella käyttäjällä on oma kopio jaetusta asiakirjasta, jota he sitten muokkaavat, ja kaikki muutokset lähetetään verkon yli muille osallistujia. Muutokset asiakirjoihin offline-tilassa johtavat asiakirjan väliaikaiseen epäjohdonmukaisuuteen suhteessa muihin osallistujiin, ja uudelleensynkronointi vaatii ristiriitojen käsittelyä. Juuri sitä varten ne ovat olemassa Konfliktittomat replikoidut tietotyypit (CRDT) on itse asiassa melko uusi asia, jonka ydin muotoiltiin vasta vuonna 2011. Tässä puheessa keskustellaan siitä, mitä sen jälkeen on tapahtunut CRDT:n maailmassa, mitä viimeisimmät edistysaskeleet ovat, lähestymistapa paikallisten sovellusten luomiseen yleensä ja avoimen lähdekoodin kirjaston käyttö Automerge erityisesti.

Ensi viikolla julkaisemme pitkän haastattelun Martinin kanssa Habrella, se on mielenkiintoista.

Pedro Ramalhete - Odotusvapaat tietorakenteet ja odottamattomat tapahtumat

19 hydrapäätä. Loistava yleiskatsaus ohjelmaan Pedro työskentelee Ciscossa ja on kehittänyt rinnakkaisia ​​algoritmeja noin kymmenen vuoden ajan, mukaan lukien synkronointimekanismeja, lukitsemattomia ja odotusvapaita tietorakenteita ja kaikkea mitä voit kuvitella tästä aiheesta. Hänen nykyiset tutkimus- ja insinöörityönsä keskittyvät Universal Constructions, Software Transactional Memory, Persistent Memory ja vastaaviin teknologioihin, jotka mahdollistavat oikeat, skaalautuvat ja vikasietoiset sovellukset. Hän on myös blogin kirjoittaja, joka tunnetaan laajalti kapeissa piireissä Concurrency Freaks.

Useimmat monisäikeiset sovellukset toimivat nyt rinnakkaisissa tietorakenteissa toimijoiden välisten viestijonojen käytöstä avainarvovarastojen indeksoituihin tietorakenteisiin. Ne ovat työskennelleet menestyksekkäästi Java JDK:ssa monta vuotta, ja niitä lisätään hitaasti C++:aan.

Yksinkertaisin tapa toteuttaa rinnakkaistietorakenne on peräkkäinen (yksisäikeinen) toteutus, jossa menetelmät on suojattu mutexeilla. Tämä on käytettävissä joka kesäkuussa, mutta siinä on ilmeisiä ongelmia skaalauksen ja suorituskyvyn kanssa. Samaan aikaan lukitsemattomat ja odottamattomat tietorakenteet eivät vain selviä virheistä paremmin, vaan niillä on myös parempi suorituskykyprofiili - niiden kehittäminen vaatii kuitenkin syvää asiantuntemusta ja sopeutumista tiettyyn sovellukseen. Yksi väärä koodirivi riittää rikkomaan kaiken.

Miten voimme saada aikaan sen, että jopa ei-asiantuntija voi suunnitella ja toteuttaa tällaisia ​​tietorakenteita? Tiedetään, että mikä tahansa peräkkäinen algoritmi voidaan tehdä säikeestä turvalliseksi käyttämällä jompaakumpaa universaali muotoilutai tapahtumamuisti. Ensinnäkin ne voivat alentaa estettä tämän ongelman ratkaisemiselle. Molemmat ratkaisut johtavat kuitenkin yleensä tehottomaan toteutukseen. Pedro kertoo kuinka he onnistuivat tekemään näistä malleista tehokkaampia ja kuinka voit käyttää niitä algoritmeissasi.

Heidi Howard - Hajautetun konsensuksen vapauttaminen

19 hydrapäätä. Loistava yleiskatsaus ohjelmaan Heidi Howard on Martinin tavoin hajautettujen järjestelmien tutkija Cambridgen yliopistossa. Hänen erikoisuutensa ovat johdonmukaisuus, vikasietoisuus, suorituskyky ja hajautettu konsensus. Hänet tunnetaan parhaiten Paxos-algoritmin yleistyksestään Joustavat Paxot.

Muistakaa se Paxos on Leslie Lamportin työhön perustuva protokollaperhe konsensusongelman ratkaisemiseksi epäluotettavien tietokoneiden verkossa. Näin ollen jotkut puhujistamme työskentelevät ongelmien parissa, joita muut puhujamme alun perin ehdottivat - ja tämä on hienoa.

Kyky löytää yhteisymmärrys useiden isäntien kesken – puhumisesta, johtajan valinnasta, estämisestä tai koordinoinnista – on peruskysymys nykyaikaisissa hajautetuissa järjestelmissä. Paxos on nyt pääasiallinen tapa ratkaista konsensusongelmia, ja sen ympärillä on meneillään paljon tutkimusta algoritmin laajentamiseksi ja optimoimiseksi erilaisiin käytännön tarpeisiin.

Tässä puheessa palataan Paxoksen teoreettiseen perustaan, lievennetään alkuperäisiä vaatimuksia ja yleistetään algoritmi. Näemme, että Paxos on pohjimmiltaan vain yksi vaihtoehto valtavan konsensuslähestymistapojen joukossa ja että muutkin spektrin kohdat ovat erittäin hyödyllisiä hyvien hajautettujen järjestelmien rakentamisessa.

Aleksi Petrov - Pienennä tallennuskustannuksiasi ohimenevän replikoinnin ja halpojen koorumien avulla

19 hydrapäätä. Loistava yleiskatsaus ohjelmaan Alex on tietokanta- ja tallennusjärjestelmien asiantuntija, ja mikä meille tärkeämpää, sitoutuja Cassandra. Hän työstää parhaillaan kirjaa Database Internals O'Reillyn kanssa.

Järjestelmille, joissa lopullinen johdonmukaisuus (venäläisessä terminologiassa - "äärimmäinen johdonmukaisuus"), solmun kaatumisen tai verkon jakautumisen jälkeen sinun on ratkaistava seuraava ongelma: joko jatkaa pyyntöjen suorittamista uhraamalla johdonmukaisuus tai kieltäytyä niiden suorittamisesta ja uhrata saatavuus. Tällaisessa järjestelmässä koorumit, päällekkäiset solmujen osajoukot ja sen varmistaminen, että ainakin yksi solmu sisältää uusimman arvon, voivat olla hyvä reunaratkaisu. Voit selviytyä vioista ja yhteyden katkeamisesta joihinkin solmuihin samalla kun vastaat uusimmilla arvoilla.

Kaikella on kuitenkin hintansa. Koorumin replikointimalli merkitsee kasvaneita tallennuskustannuksia: redundantteja tietoja on tallennettava useisiin solmuihin kerralla, jotta varmistetaan, että käytettävissä on riittävästi kopioita ongelman ilmetessä. Osoittautuu, että sinun ei tarvitse tallentaa kaikkia tietoja kaikista replikoista. Voit vähentää tallennustilan kuormitusta, jos tallennat tietoja vain osaan solmuista ja käytät erityisiä solmuja (Transient Replica) vikojen käsittelyssä.

Raportin aikana pohdimme Todistajien jäljennökset, kohdassa käytetty replikointimalli ruuviavain и mega kauppa, ja tämän konseptin toteuttaminen Apache Cassandrassa kutsutaan Ohimenevä replikointi ja halvat koorumit.

Dmitri Vyukov - Gorutines esillä

19 hydrapäätä. Loistava yleiskatsaus ohjelmaan Dmitry on Googlen kehittäjä, joka työskentelee C/C++:n ja Go - Address/Memory/ThreadSanitizerin dynaamisessa testauksessa sekä vastaavissa Linux-ytimen työkaluissa. Auttoi Go:ssa skaalautuvaa goritiiniajoitusohjelmaa, verkkopolleria ja rinnakkaista roskienkerääjää. Hän on monisäikeisen tekniikan asiantuntija, tusinan uuden ei-esto-algoritmin kirjoittaja ja Musta vyö Intel.

Nyt vähän itse raportista. Go-kielellä on natiivi tuki monisäikeiselle gorutiinien (kevyt säikeet) ja kanavien (FIFO-jonot) muodossa. Näiden mekanismien ansiosta käyttäjien on erittäin helppoa ja nautinnollista kirjoittaa nykyaikaisia ​​monisäikeisiä sovelluksia, ja se näyttää taikalta. Kuten ymmärrämme, tässä ei ole taikuutta. Tässä puheessa Dmitry syventyy Go-aikataulun monimutkaisuuteen ja näyttää tämän "taikuuden" toteuttamisen salaisuudet. Ensin hän antaa yleiskatsauksen ajastimen pääkomponenteista ja kertoo, kuinka se toimii. Seuraavaksi tarkastelemme tarkemmin yksittäisiä näkökohtia, kuten pysäköinti-/pysäköintistrategiaa ja estojärjestelmän kutsujen käsittelyä. Lopuksi Dmitry puhuu hieman aikataulun mahdollisista parannuksista.

Dmitri Bugaichenko - Nopeuta hajautettua kuvaajaanalyysiä todennäköisyyspohjaisilla luonnoksilla ja muilla

19 hydrapäätä. Loistava yleiskatsaus ohjelmaan Dmitry työskenteli ulkoistamisessa lähes 9 vuotta menettämättä yhteyttä yliopistoon ja tiedeyhteisöön. Big data -analyysistä Odnoklassnikissa tuli hänelle ainutlaatuinen tilaisuus yhdistää teoreettinen koulutus ja tieteellinen perusta todellisten, kysyntää olevien tuotteiden kehittämiseen.

Hajautettu graafianalyysi on ollut ja on edelleen vaikea tehtävä: kun tulee tarpeelliseksi saada tietoa naapuripisteen yhteyksistä, dataa joudutaan usein siirtämään koneiden välillä, mikä lisää suoritusaikaa ja kuormittaa verkkoinfrastruktuuria. Tässä puheessa näemme, kuinka voit saada merkittäviä käsittelynopeuksia käyttämällä todennäköisyyspohjaisia ​​tietorakenteita tai tosiasioita, kuten ystävyyskaavion symmetriaa sosiaalisessa verkostossa. Kaikki tämä on havainnollistettu koodiesimerkeillä Apache Sparkissa.

Denis Rystsov - Pienennä tallennuskustannuksiasi ohimenevän replikoinnin ja halpojen koorumien avulla

19 hydrapäätä. Loistava yleiskatsaus ohjelmaan Denis - kehittäjä Cosmos DB, asiantuntija yhdenmukaisuusmallien, konsensusalgoritmien ja hajautettujen tapahtumien tarkistamisessa. Hän työskentelee tällä hetkellä Microsoftilla, ja sitä ennen hän työskenteli hajautettujen järjestelmien parissa Amazonilla ja Yandexillä.

Tässä puheessa tarkastellaan viime vuosien aikana keksittyjä hajautettuja tapahtumaprotokollia, jotka voidaan toteuttaa asiakaspuolella minkä tahansa ehdollista päivitystä tukevan tietovaraston päälle (vertaa ja aseta). Tärkeintä on, että elämä ei pääty kaksivaiheiseen sitoutumiseen, tapahtumia voidaan lisätä minkä tahansa tietokantojen päälle - sovellustasolla, mutta eri protokollilla (2PC, Percolator, RAMP) on erilaiset kompromissit, eikä niitä anneta meille. ilmaiseksi.

Aleksei Zinovjev - Kaikki ML-algoritmit eivät pääse hajautettuun taivaaseen

19 hydrapäätä. Loistava yleiskatsaus ohjelmaan Aleksei (zaleslaw) on pitkäaikainen puhuja ja ohjelmakomiteoiden jäsen muissa konferensseissa. Työskentelen kouluttajana EPAM Systemsissä ja on ollut Hadoopin/Sparkin ja muun big datan ystävä vuodesta 2012 lähtien.

Tässä puheessa Aleksei puhuu ongelmista klassisten koneoppimisalgoritmien mukauttamisessa suoritukseen hajautetussa tilassa, perustuen hänen kokemukseensa työskentelystä Apache Spark ML:n, Apache Mahoutin, Apache Flink ML:n ja Apache Ignite ML:n luomisesta. Aleksei puhuu myös hajautettujen ML-algoritmien toteutuksesta näissä kehyksissä.

Ja lopuksi kaksi Yandexin raporttia Yandex-tietokannasta.

Vladislav Kuznetsov - Yandex-tietokanta - kuinka varmistamme vikasietoisuuden

19 hydrapäätä. Loistava yleiskatsaus ohjelmaan Vladislav on Yandexin kehittäjä hajautetun alustan ryhmässä. Yandex Database on vaakasuunnassa skaalautuva, maantieteellisesti hajautettu, vikasietoinen DBMS, joka kestää levyjen, palvelimien, telineiden ja datakeskusten vikoja menettämättä johdonmukaisuutta. Vikasietokyvyn varmistamiseksi käytetään patentoitua algoritmia hajautetun konsensuksen saavuttamiseksi sekä useita teknisiä ratkaisuja, joita käsitellään yksityiskohtaisesti raportissa. Raportti voi olla kiinnostava sekä DBMS-kehittäjille että DBMS-pohjaisten sovellusratkaisujen kehittäjille.

Semyon Checherinda - Hajautetut tapahtumat YDB:ssä

19 hydrapäätä. Loistava yleiskatsaus ohjelmaan Semyon on Yandexin hajautetun alustaryhmän kehittäjä, joka työskentelee YDB-asennuksen usean vuokralaisen käytön parissa.

Yandex-tietokanta on suunniteltu OLTP-kyselyille ja noudattaa tapahtumajärjestelmän ACID-vaatimuksia. Tässä raportissa tarkastelemme YDB-tapahtumajärjestelmän taustalla olevaa tapahtuman ajoitusalgoritmia. Katsotaan, mitkä entiteetit osallistuvat transaktioihin, kuka määrittää tapahtumille globaalin järjestyksen, miten transaktioiden atomiteetti, luotettavuus ja tiukka eristystaso saavutetaan. Esimerkkinä yleisen ongelman avulla tarkastellaan tapahtumatoteutuksia, joissa käytetään kaksivaiheisia sitoumuksia ja deterministisiä tapahtumia. Keskustellaan heidän eroistaan.

Mitä seuraavaksi?

Konferenssin ohjelma on edelleen täynnä uusia raportteja. Erityisesti odotamme raporttia Nikita Koval (ndkoval) JetBrainsilta ja Oleg Anastasjev (m0nstermind) Odnoklassniki-yhtiöltä. Nikita työskentelee Korutiinien algoritmien parissa Kotlin-tiimissä ja Oleg kehittää arkkitehtuuria ja ratkaisuja Odnoklassniki-alustalla kuormitettaviin järjestelmiin. Lisäksi on vielä 1 ehdollisesti tyhjä paikka, johon ohjelmatoimikunta työskentelee parhaillaan ehdokkaiden kanssa.

Hydra-konferenssi järjestetään 11.-12. Pietarissa. Lippuja on saatavilla ostaa virallisilla verkkosivuilla. Kiinnitä huomiota Online-lippujen saatavuuteen - jos et jostain syystä pääse Pietariin näinä päivinä.

Nähdään Hydrassa!

Lähde: will.com

Lisää kommentti