"Taotlus on hilinenud": Aleksei Fedorov uuest hajutatud süsteemide konverentsist

"Taotlus on hilinenud": Aleksei Fedorov uuest hajutatud süsteemide konverentsist

Hiljuti olid teatas korraga kaks üritust mitme lõimega ja hajutatud süsteemide arendamisel: konverents hüdra (11.-12. juuli) ja koolis SPTDC (8.-12. juuli). Inimesed, kes on selle teemaga lähedased, saavad aru, et tulevad Venemaale Leslie Lamport, Maurice Herlihy и Michael Scott - kõige olulisem sündmus. Kuid tekkisid muud küsimused:

  • Mida konverentsilt oodata: “akadeemilist” või “produktsiooni”?
  • Kuidas on kool ja konverents seotud? Kellele see ja too on suunatud?
  • Miks need kuupäevades kattuvad?
  • Kas need on kasulikud neile, kes pole kogu oma elu hajutatud süsteemidele pühendanud?

Seda kõike teab hästi inimene, kes Hydra ellu äratas: meie direktor Aleksei Fedorov (23derevo). Ta vastas kõigile küsimustele.

Formaat

— Sissejuhatav küsimus neile, kes on hajutatud süsteemidest kaugel: millest mõlemad sündmused räägivad?

— Ülemaailmne väljakutse seisneb selles, et meie ümber on suurte toimingumahtude ja keerukate arvutusülesannetega teenuseid, mida ühes arvutis teha ei saa. See tähendab, et autosid peab olema mitu. Ja siis tekivad küsimused, kuidas oma tööd õigesti sünkroonida ja mida teha mitte just kõige suurema töökindlusega tingimustes (kuna seadmed lähevad katki ja võrk kukub ära).

Mida rohkem masinaid on, seda rohkem on tõrkepunkte. Mida teha, kui erinevad masinad annavad samade arvutuste jaoks erinevaid tulemusi? Mida teha, kui võrk mõneks ajaks kaob ja osa arvutustest isoleerub, kuidas seda kõike siis kombineerida? Üldiselt on sellega seotud miljon probleemi. Uued lahendused – uued probleemid.

Selles valdkonnas on täiesti rakendusvaldkondi ja on rohkem teaduslikke valdkondi - midagi, mis pole veel muutunud peavooluks. Tahaksin rääkida sellest, mis toimub nii praktikas kui ka teaduses ja mis kõige tähtsam, nende ristmikul. Sellest räägib esimene Hydra konverents.

— Tahaks aru saada sellest, et on konverents ja suvekool. Kuidas need on seotud? Kui koolis osalejatele tehakse konverentsil osalemiseks allahindlus, siis miks need kattuvad kuupäevaliselt, nii et kõike korraga ei saa ilma kadudeta kohale tulla?

— Kool on 100–150 inimese kammerüritus, kuhu tulevad viie päeva jooksul loenguid pidama juhtivad eksperdid üle maailma. Ja tekib olukord, kui Peterburi kogunevad viieks päevaks maailmatasemel valgustid, kes on valmis midagi rääkima. Ja sel puhul sünnib otsus korraldada mitte ainult kammerkool, vaid ka suuremahuline konverents.

Sellist kooli on võimalik pidada ainult suvel, juulis, sest nende spetsialistide hulgas on praegu ülikooli õppejõude ja muul ajal nad lihtsalt ei ole valmis: neil on üliõpilased, diplomid, loengud jne. Kooli formaat on viis tööpäeva. Teadaolevalt meeldib suvel nädalavahetustel kuskil käia. See tähendab, et me ei saa konverentsi pidada ei nädalavahetusel enne kooli ega ka nädalavahetusel pärast kooli.

Ja kui seda veel paar päeva enne või pärast nädalavahetust pikendada, saab nagu võluväel spetsialistide viiest Peterburis viibimise päevast üheksa. Ja nad pole selleks valmis.

Seetõttu ainuke lahendus, mille leidsime, oli konverents lihtsalt kooliga paralleelselt läbi viia. Jah, see tekitab mõningaid probleeme. On inimesi, kes tahavad koolis ja konverentsil käia ning nad peavad siin või seal mõnest loengust ilma jääma. Hea uudis on see, et kõik see toimub naabersaalides, saab joosta edasi-tagasi. Ja veel üks hea asi on videosalvestiste olemasolu, milles saab hiljem rahulikult vaadata, millest ilma jäi.

— Kui kaks sündmust toimuvad paralleelselt, tekib inimestel küsimus: kumba ma rohkem vajan? Mida peaksite igaühelt täpselt ootama ja millised on erinevused?

— Kool on puhtakadeemiline üritus, klassikaline teaduskool mitu päeva. Igaüks, kes on teadusega tegelenud ja aspirantuuriga seotud, teab, mis on akadeemiline kool.

"Taotlus on hilinenud": Aleksei Fedorov uuest hajutatud süsteemide konverentsist

Tavaliselt ei ole sellised akadeemilised üritused kuigi hästi korraldatud, kuna korraldajatel puudub asjatundlikkus. Kuid me oleme siiski üsna kogenud poisid, nii et saame kõike teha üsna pädevalt. Ma arvan, et korralduslikust vaatenurgast on SPTDC kõrgem kõigist akadeemilistest või teaduspõhisest koolist, mida olete kunagi näinud.

SPTDC kool - see on formaat, kus iga suurt loengut loetakse kahes paaris: "poolteist tundi - paus - poolteist tundi." Peate mõistma, et esimest korda osalejal ei pruugi see kerge olla: kui see kool kaks aastat tagasi esimest korda toimus, olin ma ise harjumatu, lülitusin mitu korda välja umbes keset topeltloengut ja siis oli raske aru saada, mis toimub. Aga see oleneb väga palju õppejõust: hea õppejõud räägib kõik kolm tundi väga huvitavalt.

Hydra konverents - praktilisem üritus. Kooli loengusse on tulnud mitmeid teaduse valgustajaid: alates Leslie Lamport, kelle töö on mitme keermega ja hajutatud süsteemide teooria aluseks Maurice Herlihy, üks kuulsa samaaegsuse õpiku "Multiprotsessorprogrammeerimise kunst" autoreid. Konverentsil aga püüame rääkida sellest, kuidas teatud algoritme tegelikkuses realiseeritakse, milliste probleemidega insenerid praktikas kokku puutuvad, kellel õnnestub ja kes ebaõnnestub, miks mõnda algoritmi praktikas kasutatakse ja teisi mitte. Ja loomulikult räägime mitme keermega ja hajutatud süsteemide arendamise tulevikust. See tähendab, et me anname niisuguse teravuse: millest maailmateadus praegu räägib, mille ümber keerlevad juhtivate inseneride mõtted ja kuidas see kõik kokku sobib.

— Kuna konverents on rakenduslikum, kas siis mitte ainult akadeemilisi valgustajaid, vaid ka “produktsiooni” kõnelejaid?

- Kindlasti. Püüame vaadata kõiki "suuri": Google, Netflix, Yandex, Odnoklassniki, Facebook. On konkreetseid naljakaid probleeme. Näiteks kõik ütlevad: "Netflix on hajutatud süsteem, peaaegu pool USA liiklusest, väga lahe" ja kui hakkate nende tegelikke aruandeid, artikleid ja väljaandeid vaatama, tekib kerge pettumus. Sest ehkki see on kindlasti maailmatasemel ja seal on lõikavat egdet, on seda vähem, kui esmapilgul tundub.

Tekib huvitav dilemma: võite helistada suurte väljapaistvate ettevõtete esindajatele või võite helistada kellelegi, kes on meile juba tuttav. Tegelikkuses on asjatundlikkust nii siin kui seal. Ja pigem püüame välja tõmmata mitte “väga suurte kaubamärkide inimesi”, vaid väga suuri spetsialiste, konkreetseid inimesi.

Seal on näiteks Martin Kleppmann, kes omal ajal LinkedInis möla tegi ja ka välja andis hea raamat — võib-olla üks põhiraamatuid hajutatud süsteemide valdkonnas.

— Kui inimene ei tööta mitte Netflixis, vaid mõnes lihtsamas ettevõttes, võib ta küsida: "Kas ma peaksin sellisele konverentsile minema või räägivad seal igasugused Netflixid omavahel, aga mul pole midagi teha?"

— Ütlen nii: kui töötasin Oracle’is veidi üle kolme aasta, kuulsin kõige hämmastavamat ja huvitavamat köögis ja suitsuruumides, kui kolleegid kogunesid sinna Java platvormi teatud osi tegemas. Need võivad olla inimesed virtuaalmasinast või testimisosakonnast või jõudluse samaaegsest tööst - näiteks Lyosha Shipilev ja Seryozha Kuksenko.

Kui nad hakkasid omavahel midagi arutama, siis ma tavaliselt lihtsalt kuulasin suu lahti. Minu jaoks olid need hämmastavad ja ootamatud asjad, millele ma polnud isegi mõelnud. Loomulikult ei saanud ma alguses 90% ulatuses aru, millest nad räägivad. Siis muutus 80% arusaamatuks. Ja pärast seda, kui ma tegin oma kodutööd ja lugesin paar raamatut, langes see arv 70% peale. Ma ei saa ikka veel paljust aru, millest nad omavahel räägivad. Aga kui ma kohvitassiga nurgas istusin ja pealt kuulasin, hakkasin natukene aru saama, mis toimub.

Seega, kui Google, Netflix, LinkedIn, Odnoklassniki ja Yandex omavahel räägivad, ei tähenda see, et see oleks midagi arusaamatut ja ebahuvitavat. Vastupidi, me peame tähelepanelikult kuulama, sest see on meie tulevik.

Muidugi on inimesi, kes seda kõike ei vaja. Kui te ei soovi sellel teemal areneda, ei pea te sellele konverentsile minema, raiskate seal lihtsalt aega. Aga kui teema on huvitav, aga sa ei saa sellest midagi aru või lihtsalt vaatad seda, siis tuleks kohale tulla, sest midagi sellist ei leia kuskilt. Veelgi enam, ma arvan, et mitte ainult Venemaal, vaid ka maailmas. Püüame teha konverentsi, mis ei oleks sellel teemal mitte ainult Venemaal, vaid üldiselt esikohal maailmas.

See pole just kõige lihtsam ülesanne, kuid kui meil on nii suurepärane võimalus koguda tugevaid kõnelejaid üle kogu maailma, olen nõus selle nimel palju andma. Muidugi ei saa osa neist, kes me esimesse Hydrasse kutsusime, tulla. Aga ma ütlen nii: me pole kunagi alustanud uut konverentsi nii võimsa koosseisuga. Välja arvatud ehk kõige esimene JPoint kuus aastat tagasi.

— Tahaksin laiendada sõnu “see on meie tulevik”: kas teema puudutab hiljem ka neid, kes täna sellele ei mõtle?

- Jah, ma olen selles kindel. Seetõttu tundub mulle väga õige hakata seda võimalikult kiiresti arutama. Näiteks multithreadingu teooria ilmus üsna kaua aega tagasi (70ndatel avaldati tööd juba täies hoos), kuid pikka aega olid nad kitsad spetsialistid, kuni ilmus esimene kasutaja kahetuumaline arvuti. 10. aastate alguses. Ja nüüd on meil kõigil mitmetuumalised serverid, sülearvutid ja isegi telefonid ning see on peavool. Selle laialdaseks levikuks kulus umbes XNUMX aastat, enne kui inimesed said aru, et see diskursus ei ole kitsa spetsialistide ringi pärusmaa.

Ja me näeme nüüd hajutatud süsteemide puhul ligikaudu sama asja. Sest põhilahendusi nagu koormuse jaotus, tõrketaluvus ja muud taolist on tehtud juba päris pikka aega, kuid väga vähesed teavad, mis on näiteks hajutatud konsensus ehk Paxos.

Üks olulisemaid eesmärke, mille selle ürituse jaoks seadsin, on inseneride üha rohkem sellesse arutelusse sukeldumine. Peate mõistma, et konverentsidel ei arutata ainult mõnda teemat ja lahendust, vaid tekib ka tesaurus - ühtne mõisteaparaat.

Pean oma ülesandeks luua platvorm, kus kõik saaksid seda kõike arutada, kogemusi ja arvamusi jagada. Et teil ja minul oleks ühine arusaam sellest, mida üks algoritm teeb, mida teine, milline neist on millistel tingimustel parem, kuidas need on omavahel seotud jne.

Väga huvitav asi on seotud sama mitmelõimega. Kui meie sõbrad Oracle'ist (peamiselt Lesha Shipilev ja Sergei Kuksenko) hakkasid aktiivselt rääkima jõudlusest ja eriti mitmelõimelisusest, siis sõna otseses mõttes kaks või kolm aastat hiljem hakati neid küsimusi ettevõtetes intervjuudel küsima, hakkasid inimesed seda arutama. suitsetamisruumid. See tähendab, et asi, mis oli kitsaste spetsialistide hulk, muutus ühtäkki peavooluks.

Ja see on väga õige. Mulle tundub, et me aitasime neil poistel kogu seda teemat populariseerida, mis on tõesti oluline, kasulik ja huvitav. Kui varem ei mõelnud keegi sellele, kuidas Java server taotlusi paralleelselt töötleb, siis nüüd on inimestel vähemalt mingil tasemel arusaam, kuidas see kõik toimib. Ja see on suurepärane.

Ülesanne, mida ma praegu näen, on teha hajutatud süsteemidega ligikaudu sama. Et kõik saaksid umbkaudu aru, mis see on, kust see tuleb, millised ülesanded ja probleemid on, et ka see muutuks peavooluks.

Ettevõtetel on tohutu nõudlus inimeste järele, kes sellest midagi aru saavad ja selliseid inimesi on vähe. Mida rohkem me selle sisu ümber loome ja võimaluse sellest õppida, mida rohkem anname inimestele võimalusi õhus olevaid küsimusi esitada, seda tõenäolisem on, et me kuidagi selles suunas liigume.

eelajalugu

— Konverents toimub esimest korda, kuid kooli jaoks pole see esimene kord. Kuidas see kõik tekkis ja arenes?

- See on huvitav lugu. Kaks aastat tagasi, 2017. aasta mais, istusime Nikita Kovaliga Kiievis (ndkoval), mitme keermestamise valdkonna ekspert. Ja ta ütles mulle, et see peetakse Peterburis “Suvekool paralleelse andmetöötluse praktikas ja teoorias”.

Mitme lõimega programmeerimise teema on minu insenerikarjääri viimase kolme aasta jooksul olnud fantastiliselt huvitav. Ja siis selgus, et suvel tulevad Peterburi väga-väga kuulsad inimesed, need samad Maurice Herlihy ja Nir Shavit, vastavalt õpik mida ma õppisin. Ja paljudel mu sõpradel oli sellega midagi pistmist - näiteks Roma Elizarov (Elizarov). Sain aru, et ma lihtsalt ei saa sellist sündmust kasutamata jätta.

Kui sai selgeks, et kooli 2017. aasta programm tuleb vahva, tekkis mõte, et loengud tuleks kindlasti videosse salvestada. Meil JUG.ru Groupis oli täielik arusaam sellest, kuidas selliseid loenguid tuleks salvestada. Ja me sobisime SPTCC-sse kui poisid, kes tegid kooli jaoks video. Selle tulemusena kõik kooli loengud valetama meie YouTube'i kanalil.

Hakkasin suhtlema Pjotr ​​Kuznetsoviga, kes oli selle kooli peaideoloog ja organisaator, ja Vitali Aksenoviga, kes aitas seda kõike Peterburis korraldada. Sain aru, et see on fantastiliselt lahe ja huvitav ning ilmselt on väga halb, et ilu saab puudutada vaid 100 osalejat.

Kui Peeter arvas, et tal on vaja uuesti kooliteed alustada (2018. aastal polnud jõudu ja aega, nii et ta otsustas seda teha 2019. aastal), sai selgeks, et saame teda aidata, võttes talt lihtsalt kõik korralduslikud asjad ära. See toimub praegu, sisuga tegeleb Peeter ja kõike muud meie. Ja see tundub õige skeem: Peetrit huvitab ilmselt programm rohkem kui "kus ja millal kõik lõunatavad". Ja me oskame hästi töötada saalide, esinemispaikade ja muuga.

Seekord kannab kool SPTCC asemel nime SPTDC, mitte “concurrent computing”, vaid “distributed computing”. Sellest tulenevalt on see erinevus umbes: eelmine kord koolis ei rääkinud nad hajutatud süsteemidest, kuid seekord räägime neist aktiivselt.

— Kuna kooli ei toimu esimest korda, siis saab juba minevikust teha mõningaid järeldusi. Mis juhtus eelmisel korral?

— Kui kaks aastat tagasi esimene kool loodi, siis oodati, et tuleb akadeemiline üritus, mis pakub huvi eelkõige õpilastele. Liiatigi õpilasi üle maailma, sest kool on ainult inglise keeles ja arvati, et tuleb märkimisväärne hulk välistudengeid.

Tegelikult selgus, et paljud insenerid tulid suurtest Venemaa ettevõtetest nagu Yandex. Seal oli Andrei Pangin (apangiin) Odnoklassnikist olid JetBrainsi poisid, kes selle teemaga aktiivselt tegelevad. Üldiselt oli seal palju tuttavaid nägusid meie partnerettevõtetest. Ma ei ole üldse üllatunud, ma saan suurepäraselt aru, miks nad sinna tulid.

Tegelikult olid korraldajatel ootused, et Koolis on akadeemilisi inimesi, aga järsku tulid inimesed tööstusest ja siis sai mulle selgeks, et tööstuses on nõudlust.

Kui üritus, mida vaevalt kuskil reklaamitud, kogus esimese näpuklõpsuga publiku täiskasvanuid, tähendab see, et huvi on tegelikult olemas. Mulle tundub, et selleteemaline taotlus on hilinenud.

"Taotlus on hilinenud": Aleksei Fedorov uuest hajutatud süsteemide konverentsist
Maurice Herlihy JUG.ru koosolekul

— Maurice Herlihy esines lisaks koolile 2017. aastal Peterburis JUG.ru koosolekul, olles öelnud tehingumälu kohta ja see on konverentsi formaadile veidi lähemal. Kes siis tulid – samad inimesed, kes tavaliselt tulevad JUG.ru kohtumistele, või hoopis teine ​​publik?

— See oli huvitav, sest saime aru, et Maurice’il on üldine, mitte Java-spetsiifiline aruanne, ja tegime oma JUG-i uudiste tellijatele tavapärasest veidi laiema teadaande.

Paljud inimesed, keda ma tean, tulid kogukondadest, mis ei ole Javaga üldse seotud: .NET-i rahvahulgast, JavaScripti rahvahulgast. Sest tehingumälu teema ei puuduta konkreetset arendustehnoloogiat. Kui tehingumälust rääkima tuleb maailmatasemel spetsialist, on sellise inimese kuulamise ja temalt küsimuste esitamise võimaluse kasutamata jätmine lihtsalt kuritegu. See jätab lihtsalt võimsa mulje, kui inimene, kelle raamatust sa õpid, tuleb sinu juurde ja räägib sulle midagi. Lihtsalt fantastiline.

— Ja milline oli selle tulemusel tagasiside? Kas lähenemine oli liiga akadeemiline ja tööstuse inimeste jaoks arusaamatu?

— Arvustused Herlihy aruande kohta olid head. Inimesed kirjutasid, et ta ütles väga lihtsalt ja selgelt välja selle, mida akadeemiliselt professorilt ei oodatud. Aga me peame mõistma, et kutsusime teda põhjusega, ta on maailmakuulus spetsialist, kellel on suured esinemiskogemused ja taustaks hunnik raamatuid ja artikleid. Ja ilmselt sai ta mitmel viisil kuulsaks tänu oma võimele inimestele materjali edastada. Seetõttu pole see üllatav.

Ta räägib normaalset, arusaadavat inglise keelt ja loomulikult saab ta suurepäraselt aru, millest ta räägib. See tähendab, et võite küsida temalt absoluutselt kõiki küsimusi. Põhimõtteliselt kurdeti, et andsime Maurice’ile tema ettekande tegemiseks liiga vähe aega: kahest tunnist sellise asja jaoks ei piisa, vaja on veel vähemalt kahte. Noh, kahe tunniga saime hakkama sellega, mis meil õnnestus.

Motivatsioon

— Tavaliselt tegeleb JUG.ru Group suuremahuliste üritustega, kuid see teema tundub rohkem spetsialiseerunud. Miks otsustasite selle ette võtta? Kas tahetakse mõni väiksem üritus läbi viia või võib sellisel teemal pealtvaatajaid palju koguneda?

— Tõepoolest, kui korraldate üritust ja paned paika arutelu teatud taseme, tekib alati küsimus, kui laialt levinud see arutelu on. Kui palju inimesi – kümme, sada või tuhat – on sellest huvitatud? Massi ja sügavuse vahel on kompromiss. See on täiesti tavaline küsimus ja igaüks lahendab seda erinevalt.

Sel juhul tahan ürituse teha "enda jaoks". Ma saan ikka midagi mitmelõimendusest aru (pidasin sellel teemal konverentsidel loenguid ja rääkisin õpilastele mitu korda), aga hajutatud süsteemide osas olen algaja: olen lugenud mõnda artiklit ja näinud mitmeid loenguid, aga mitte. seda luges isegi üks täisväärtuslik raamat.

Meil on valdkonna ekspertidest koosnev programmikomisjon, kes oskab hinnata aruannete õigsust. Ja omalt poolt püüan teha selle ürituse selliseks, kuhu ma oma asjatundlikkuse puudumise tõttu minna tahaksin. Kas see on võimalik avalikkusele huvi pakkuda, ma ei tea. See ei ole praegusel etapil ilmselt selle ürituse kõige olulisem ülesanne. Nüüd on olulisem luua lühikese ajaga tugevaim programm.

Tõenäoliselt ei pannud ma nüüd meeskonnale ülesandeks "koguda esimest korda kokku tuhat inimest", vaid "konverentsi esile kutsuda". See ei pruugi tunduda väga asjalik ja mõneti naiivne, kuigi ma pole üldse altruist. Kuid mõnikord võin endale lubada mõningaid vabadusi.

On asju, mis on tähtsamad kui raha ja peale raha. Teeme juba praegu suurel hulgal lahedaid suurüritusi tuhandele või enamale inimesele. Meie Java konverentsid on ammu ületanud tuhande inimese piiri ja nüüd hüppavad teised üritused üle selle lati. See tähendab, et küsimus, et oleme saanud kogenud ja kuulsaks korraldajaks, ei ole enam seda väärt. Ja ilmselt annab see, mida me nendelt üritustelt teenime, võimaluse reinvesteerida sellesse, mis on huvitav meile ja antud juhul mulle isiklikult.

Seda üritust tehes lähen vastuollu mõne meie organisatsiooni põhimõttega. Näiteks püüame tavaliselt konverentsid väga palju ette ette valmistada, kuid praegu on meil väga kitsad tähtajad ja programmi paneme lõplikult kokku vaid kuu aega enne üritust ennast.

Ja see üritus on 70-80% ingliskeelne. Ka siin tekib alati diskussioon, kas peame olema lähemal inimestele (kes saavad sellest paremini aru, kui enamik aruandeid on vene keeles) või kogu maailmale (kuna tehnikamaailm on ingliskeelne). Tavaliselt püüame palju aruandeid teha vene keeles. Aga mitte praegu.

Lisaks palume mõnel meie vene keelt kõnelevatel inimestel rääkida inglise keeles. See on teatud mõttes absoluutselt kasutajavastane ja ebainimlik lähenemine. Kuid me peame mõistma, et sellel teemal pole praegu venekeelset kirjandust ja kõik, kes sellest vähegi huvitatud on, on sunnitud lugema inglise keeles. See tähendab, et ta saab kuidagi inglise keelest aru. Kui JavaScripti, Java või .NET-i puhul on palju inimesi, kes inglise keelt väga hästi ei oska, aga samas oskavad hästi programmeerida, siis tõenäoliselt on hajutatud süsteemid valdkond, milles muud lihtsalt pole. viis nüüd õppida.

Ma tõesti tahan seda eksperimenti läbi viia: kuidas 70–80% ingliskeelset üritust Venemaa avalikkus tajub. Kas see tuleb sisse või mitte? Me ei tea seda ette, sest me pole seda kunagi teinud. Aga miks mitte seda teha? Ütleme nii, et see on üks suur eksperiment, mida ma lihtsalt ei saa jätta proovimata.

SPTDC kooliprogramm on juba olemas avaldatud täielikult ja juba Hydra puhul teatud märgatav osa ning peagi avaldame kogu konverentsi programmi analüüsi.

Allikas: www.habr.com

Lisa kommentaar