"La sol·licitud està vençuda": Alexey Fedorov sobre una nova conferència sobre sistemes distribuïts

"La sol·licitud està vençuda": Alexey Fedorov sobre una nova conferència sobre sistemes distribuïts

Recentment n'hi havia anunciat dos esdeveniments alhora sobre el desenvolupament de sistemes multiprocés i distribuïts: una conferència Hidra (11-12 de juliol) i escola SPTDC (8-12 de juliol). Les persones properes a aquest tema entenen que arribar a Rússia Leslie Lampport, Maurice Herlihy и Michael Scott - l'esdeveniment més important. Però van sorgir altres preguntes:

  • Què esperar de la conferència: "acadèmica" o "producció"?
  • Com es relacionen l'escola i la conferència? A qui va dirigit això i allò?
  • Per què es superposen en les dates?
  • Seran útils per a aquells que no han dedicat tota la seva vida als sistemes distribuïts?

Tot això és ben conegut per la persona que va donar vida a Hydra: el nostre director Alexei Fedorov (23derevo). Va respondre a totes les preguntes.

Format

— Una pregunta introductòria per als que estan lluny dels sistemes distribuïts: de què tracten tots dos esdeveniments?

— El repte global és que al nostre voltant hi ha serveis amb grans volums d'operacions i tasques informàtiques complexes que no es poden fer en un ordinador. Això vol dir que hi ha d'haver diversos cotxes. I aleshores sorgeixen preguntes relacionades amb com sincronitzar correctament el seu treball i què fer en condicions no de la màxima fiabilitat (perquè l'equip es trenca i la xarxa es desfà).

Com més màquines hi ha, més punts de fallada hi ha. Què fer si diferents màquines produeixen resultats diferents per als mateixos càlculs? Què fer si la xarxa desapareix durant un temps i part dels càlculs s'aïlla, com es pot combinar-ho tot? En general, hi ha un milió de problemes associats amb això. Noves solucions - nous problemes.

En aquest àmbit hi ha àrees completament aplicades, i n'hi ha de més científiques, cosa que encara no s'ha generalitzat. M'agradaria parlar del que està passant tant a la pràctica com a la ciència, i el més important, a la seva cruïlla. D'això tractarà la primera conferència Hydra.

— M'agradaria entendre que hi ha una conferència, i que hi ha una escola d'estiu. Com es relacionen? Si es fa un descompte per als participants de l'escola per assistir a la conferència, aleshores per què es superposen en dates, de manera que és impossible assistir a tot alhora sense pèrdua?

— L'escola és un esdeveniment de cambra per a entre 100 i 150 persones, on els principals experts d'arreu del món vénen i donen conferències durant cinc dies. I sorgeix una situació quan lluminàries de classe mundial es reuneixen a Sant Petersburg durant cinc dies, disposades a dir alguna cosa. I en aquest cas, sorgeix la decisió d'organitzar no només una escola de cambra, sinó també una conferència de major escala.

És possible fer una escola d'aquest tipus només a l'estiu, al juliol, perquè entre aquests especialistes hi ha professors universitaris actuals, i simplement no estan preparats en cap altre moment: tenen estudiants, diplomes, conferències, etc. El format escolar és de cinc dies laborables. Se sap que a l'estiu els caps de setmana a la gent li agrada anar a algun lloc. Això vol dir que no podem fer una conferència ni el cap de setmana abans de l'escola ni el cap de setmana després de l'escola.

I si l'allargas un parell de dies més abans o després del cap de setmana, com per màgia els cinc dies d'estada dels especialistes a Sant Petersburg es converteixen en nou. I no estan preparats per a això.

Per tant, l'única solució que vam trobar va ser simplement fer la conferència paral·lelament a l'escola. Sí, això crea alguns problemes. Hi ha gent que vol anar a l'escola i a una conferència, i s'haurà de perdre algunes conferències aquí o allà. La bona notícia és que tot això es farà en sales veïnes, podeu córrer d'anada i tornada. I una altra cosa bona és la disponibilitat d'enregistraments de vídeo, en què després podreu veure tranquil·lament allò que us heu perdut.

— Quan dos esdeveniments tenen lloc en paral·lel, la gent es pregunta "Quin necessito més?" Què hauríeu d'esperar exactament de cadascun i quines són les diferències?

— L'escola és un esdeveniment purament acadèmic, una escola científica clàssica durant diversos dies. Qualsevol persona que hagi participat en la ciència i tingui alguna cosa a veure amb l'escola de postgrau té una idea del que és una escola acadèmica.

"La sol·licitud està vençuda": Alexey Fedorov sobre una nova conferència sobre sistemes distribuïts

En general, aquests esdeveniments acadèmics no estan molt ben organitzats a causa de la manca d'expertesa en esdeveniments entre les persones que ho fan. Però encara som nois amb molta experiència, així que ho podem fer tot de manera molt competent. Crec que des d'un punt de vista organitzatiu, SPTDC estarà per sobre de qualsevol escola acadèmica o de recerca que hagis vist mai.

Escola SPTDC - Aquest és un format on cada conferència gran es llegeix en dues parelles: "una hora i mitja - un descans - una hora i mitja". Heu d'entendre que pot ser que no sigui fàcil per a un participant per primera vegada: quan aquesta escola es va fer per primera vegada fa dos anys, jo mateix era inusual, em vaig apagar diverses vegades aproximadament enmig d'una doble conferència, i aleshores era difícil entendre què estava passant. Però això depèn molt del professor: un bon professor parla de manera molt interessant durant les tres hores.

Conferència Hydra - un esdeveniment més pràctic. Hi haurà diverses lluminàries de la ciència que han vingut a fer una conferència a l'Escola: des Leslie Lampport, el treball del qual es basa en la mateixa teoria dels sistemes multifils i distribuïts, a Maurice Herlihy, un dels autors del famós llibre de text sobre concurrència “The Art of Multiprocessor Programming”. Però a la conferència intentarem parlar de com s'implementen certs algorismes en la realitat, quins problemes s'enfronten els enginyers a la pràctica, qui té èxit i qui falla, per què alguns algorismes s'utilitzen a la pràctica i d'altres no. I, per descomptat, parlem del futur del desenvolupament de sistemes distribuïts i multiprocés. És a dir, donarem una talla d'avantguarda: de què parla la ciència mundial ara, en què giren els pensaments dels principals enginyers i com encaixa tot plegat.

— Com que la conferència és més aplicada, hi haurà no només lluminàries acadèmiques, sinó també ponents de la “producció”?

- Definitivament. Estem intentant mirar tots els "grans": Google, Netflix, Yandex, Odnoklassniki, Facebook. Hi ha problemes divertits específics. Per exemple, tothom diu: "Netflix és un sistema distribuït, gairebé la meitat del trànsit nord-americà, molt xulo", i quan comenceu a mirar els seus informes, articles i publicacions reals, s'instal·la una lleugera decepció. Perquè, tot i que això és sens dubte de classe mundial i hi ha tall egde, n'hi ha menys del que sembla a primera vista.

Sorgeix un dilema interessant: podeu trucar a representants de grans empreses eminents, o podeu trucar a algú ja conegut per nosaltres. En realitat, l'experiència existeix tant aquí com allà. I més aviat estem intentant treure no "persones de marques molt grans", sinó especialistes molt grans, persones concretes.

Per exemple, hi haurà Martin Kleppmann, que en un moment va fer una esquitxada a LinkedIn i també va llançar bon llibre — potser un dels llibres bàsics en el camp dels sistemes distribuïts.

— Si una persona no treballa a Netflix, sinó a una empresa més senzilla, es pot preguntar: "Hauria d'anar a una conferència d'aquest tipus, o hi ha tot tipus de Netflix parlant entre ells, però no tinc res a fer?"

— Diré això: quan vaig treballar a Oracle durant una mica més de tres anys, vaig escoltar les coses més sorprenents i interessants a la cuina i als fumadors, quan els companys s'hi reunien fent determinades parts de la plataforma Java. Poden ser persones de la màquina virtual, del departament de proves o de la concurrència de rendiment, per exemple, Lyosha Shipilev i Seryozha Kuksenko.

Quan començaven a discutir alguna cosa entre ells, normalment només escoltava amb la boca oberta. Per a mi eren coses sorprenents i inesperades que ni tan sols havia pensat. Naturalment, al principi no entenia el 90% del que parlaven. Aleshores el 80% es va tornar incomprensible. I després de fer els deures i llegir uns quants llibres, aquesta xifra va baixar al 70%. Encara no entenc molt de què parlen entre ells. Però mentre m'asseia al racó amb una tassa de cafè i escoltava, vaig començar a entendre una mica què estava passant.

Per tant, quan Google, Netflix, LinkedIn, Odnoklassniki i Yandex parlen entre ells, això no vol dir que sigui una cosa incomprensible i poc interessant. Al contrari, hem d'escoltar amb atenció, perquè aquest és el nostre futur.

Per descomptat, hi ha gent que no necessita tot això. Si no voleu desenvolupar-vos en aquest tema, no cal que aneu a aquesta conferència, només hi perdreu el temps. Però si el tema és interessant, però no entens res o només el mires, hauries de venir, perquè no trobaràs res semblant enlloc. A més, crec que no només a Rússia, sinó també al món. Estem intentant fer una conferència que no només sigui la líder sobre aquest tema a Rússia, sinó que en general sigui la número u mundial.

Aquesta no és la tasca més fàcil, però quan tenim una oportunitat tan increïble de reunir parlants forts d'arreu del món, estic disposat a donar molt perquè sigui possible. Això sí, alguns dels que vam convidar a la primera Hydra no podran venir. Però diré això: mai hem iniciat una nova conferència amb una formació tan potent. Excepte, potser, el primer JPoint de fa sis anys.

— M'agradaria ampliar les paraules “aquest és el nostre futur”: el tema afectarà més endavant a aquells que avui no hi pensen?

- Sí, n'estic segur. Per tant, em sembla molt correcte començar a parlar-ne el més aviat possible. Per exemple, la teoria del multithreading va aparèixer fa molt de temps (als anys 70, el treball ja s'estava publicant en ple apogeu), però durant molt de temps van ser el lot d'especialistes estrets, fins que va aparèixer el primer ordinador de doble nucli d'usuari. a principis dels anys 10. I ara tots tenim servidors multinucli, ordinadors portàtils i fins i tot telèfons, i això és el corrent principal. Van passar uns XNUMX anys perquè això es generalitzés, perquè la gent entengués que aquest discurs no és la província d'un cercle estret d'especialistes.

I ara estem veient aproximadament el mateix amb els sistemes distribuïts. Perquè solucions bàsiques com la distribució de càrrega, la tolerància a fallades i similars s'han fet durant força temps, però molt poca gent sap què és, per exemple, el consens distribuït o Paxos.

Un dels objectius més importants que em vaig proposar per a aquest esdeveniment és submergir els enginyers cada cop més en aquesta discussió. Cal entendre que a les conferències no només es discuteixen alguns temes i solucions, sinó que també sorgeix un tesaurus: un aparell conceptual unificat.

Crec que és la meva tasca crear una plataforma on tothom pugui discutir tot això, compartir experiències i opinions. Perquè tu i jo entenem comú què fa un algorisme, què fa un altre, quin és millor en quines condicions, com es relacionen entre ells, etc.

Una cosa molt interessant està relacionada amb el mateix multithreading. Quan els nostres amics d'Oracle (principalment Lesha Shipilev i Sergey Kuksenko) van començar a parlar activament sobre el rendiment i, en particular, sobre el multithreading, literalment dos o tres anys més tard, aquestes preguntes es van començar a fer a les entrevistes a les empreses, la gent va començar a parlar-ne en sales de fumadors. És a dir, una cosa que era la gran quantitat d'especialistes estrets de sobte es va convertir en corrent.

I això és molt correcte. Em sembla que hem ajudat aquests nois a popularitzar tot aquest tema, que és realment important, útil i interessant. Si abans ningú pensava en com un servidor Java processa les sol·licituds en paral·lel, ara la gent té com a mínim un cert nivell de comprensió de com funciona tot. I això és genial.

La tasca que veig ara és fer aproximadament el mateix amb els sistemes distribuïts. Perquè tothom entengui a grans trets què és, d'on ve, quines tasques i problemes hi ha, perquè això també es converteixi en corrent.

Les empreses tenen una gran demanda de persones que entenguin alguna cosa sobre això, i n'hi ha poca gent. Com més creem al voltant d'aquest contingut i l'oportunitat d'aprendre d'ell, més oportunitats donem a la gent per fer preguntes que estan a l'aire, més probabilitats tindrem d'avançar d'alguna manera en aquesta direcció.

prehistòria

— La conferència es fa per primera vegada, però no és la primera per a l'escola. Com va sorgir i es va desenvolupar tot això?

- Aquesta és una història interessant. Fa dos anys, el maig del 2017, ens vam asseure a Kíev amb Nikita Koval (ndkoval), expert en el camp del multithreading. I em va dir que es faria a Sant Petersburg "Escola d'estiu a la pràctica i la teoria de la informàtica concurrent".

El tema de la programació multifil ha estat fantàsticament interessant en els últims tres anys de la meva carrera d'enginyer. I després va resultar que a l'estiu ve gent molt i molt famosa a Sant Petersburg, els mateixos Maurice Herlihy i Nir Shavit, segons diuen. llibre de text que vaig estudiar. I molts dels meus amics van tenir alguna cosa a veure amb això, per exemple, Roma Elizarov (elizarov). Em vaig adonar que simplement no em podia perdre un esdeveniment així.

Quan va quedar clar que el programa de l'escola 2017 seria fantàstic, va sorgir la idea que les conferències s'havien de gravar definitivament en vídeo. A JUG.ru Group teníem una comprensió completa de com s'havien d'enregistrar aquestes conferències. I ens adaptem a SPTCC com els nois que van fer un vídeo per a l'escola. Com a resultat, totes les conferències escolars mentida al nostre canal de YouTube.

Vaig començar a comunicar-me amb Piotr Kuznetsov, que era el principal ideòleg i organitzador d'aquesta escola, i amb Vitaly Aksenov, que va ajudar a organitzar tot això a Sant Petersburg. Em vaig adonar que això és fantàstic i interessant i, probablement, és molt dolent que només 100 participants puguin tocar la bellesa.

Quan en Peter va pensar que havia de tornar a començar l'escola (el 2018 no hi havia energia ni temps, així que va decidir fer-ho el 2019), va quedar clar que el podríem ajudar simplement eliminant-li totes les coses organitzatives. Això és el que està passant ara, en Peter s'ocupa del contingut i nosaltres fem tota la resta. I aquest sembla l'esquema correcte: en Peter probablement està més interessat en el programa que "on i quan dinaran tothom". I som bons per treballar amb sales, locals, etc.

Aquesta vegada, en comptes de SPTCC, l'escola s'anomena SPTDC, no "informàtica concurrent", sinó "informàtica distribuïda". En conseqüència, aquesta és aproximadament la diferència: la darrera vegada a l'escola no van parlar de sistemes distribuïts, però aquesta vegada en parlarem activament.

— Com que l'escola no es fa per primera vegada, ja podem extreure algunes conclusions del passat. Què va passar la darrera vegada?

— Quan fa dos anys es va crear la primera escola, es preveia que hi hagués un acte acadèmic, principalment d'interès per als alumnes. A més, estudiants d'arreu del món, perquè l'escola és només en anglès, i es pensava que vindria un nombre important d'alumnes estrangers.

De fet, va resultar que molts enginyers provenien de grans empreses russes com Yandex. Hi havia Andrey Pangin (apangin) d'Odnoklassniki, hi havia nois de JetBrains que estan treballant activament en aquest tema. En general, hi havia moltes cares conegudes de les nostres empreses associades. No m'estranya gens, entenc perfectament per què hi van venir.

De fet, els organitzadors tenien expectatives que hi hauria gent acadèmica a l'Escola, però de sobte va venir gent del sector, i llavors em va quedar clar que hi havia demanda al sector.

Si un esdeveniment que gairebé no es va promocionar enlloc, al primer clic de dit, va reunir un públic adult, vol dir que realment hi ha interès. Em sembla que una sol·licitud sobre aquest tema està vençuda.

"La sol·licitud està vençuda": Alexey Fedorov sobre una nova conferència sobre sistemes distribuïts
Maurice Herlihy a la reunió de JUG.ru

— A més de l'escola, Maurice Herlihy va parlar a Sant Petersburg a la reunió de JUG.ru el 2017, havent dit sobre la memòria transaccional, i això és una mica més proper al format de la conferència. Qui va venir llavors: les mateixes persones que solen venir a les trobades de JUG.ru o un públic diferent?

— Va ser interessant perquè vam entendre que Maurice tindria un informe general, no específic de Java, i vam fer un anunci una mica més ampli del que fem habitualment per als nostres subscriptors de notícies JUG.

Molta gent que conec provenia de comunitats que no parlen gens de Java: de la multitud .NET, de la multitud de JavaScript. Perquè el tema de la memòria transaccional no es relaciona amb una tecnologia de desenvolupament específica. Quan un especialista de classe mundial ve a parlar de memòria transaccional, perdre l'oportunitat d'escoltar a una persona així i fer-li preguntes és simplement un delicte. Només fa una impressió poderosa quan la persona del llibre de la qual estàs estudiant ve a tu i t'explica alguna cosa. Senzillament fantàstic.

— I quin va ser el resultat de la retroalimentació? L'enfocament era massa acadèmic i incomprensible per a la gent del sector?

— Les ressenyes de l'informe d'Herlihy van ser bones. La gent va escriure que va dir de manera molt senzilla i clara el que no s'esperava d'un professor acadèmic. Però hem d'entendre que l'hem convidat per una raó, és un especialista de fama mundial amb una àmplia experiència en la xerrada i una formació d'un munt de llibres i articles. I, probablement, es va fer famós de moltes maneres gràcies a la seva capacitat de transmetre material a la gent. Per tant, això no és sorprenent.

Parla un anglès normal i comprensible i, per descomptat, entén molt bé el que parla. És a dir, pots fer-li absolutament qualsevol pregunta. Bàsicament, la gent es va queixar que en Maurice li vam donar poc temps per al seu informe: amb dues hores no n'hi ha prou, en calen almenys dues més. Bé, vam aconseguir fer el que vam aconseguir en dues hores.

RњRѕS, ReRІR ° C † ReSЏ

— Normalment, JUG.ru Group tracta esdeveniments a gran escala, però aquest tema sembla més especialitzat. Per què vas decidir assumir-ho? Hi ha voluntat de fer un esdeveniment més petit, o es poden reunir molts espectadors sobre aquest tema?

— De fet, quan organitzes un esdeveniment i estableixes un cert nivell de discussió, sempre sorgeix la pregunta de com d'estesa està aquesta discussió. Quantes persones -deu, cent o mil- estan interessades en això? Hi ha un compromís entre massa i profunditat. Aquesta és una pregunta completament normal, i cadascú la resol d'una manera diferent.

En aquest cas, vull fer l'esdeveniment "per a mi". Encara entenc alguna cosa sobre el multithreading (he donat conferències sobre aquest tema a conferències i vaig dir alguna cosa als estudiants diverses vegades), però sóc un novell quan es tracta de sistemes distribuïts: he llegit alguns articles i he vist diverses conferències, però no fins i tot un sol llibre de ple dret el va llegir.

Disposem d'un comitè de programa format per experts en la matèria que poden avaluar l'exactitud dels informes. I per la meva banda, estic intentant que aquest esdeveniment sigui un al que, amb la meva manca de coneixements, m'agradaria assistir. No ho sé si serà possible interessar al gran públic. Aquesta no és probablement la tasca més important d'aquest esdeveniment en aquesta etapa. Ara és més important crear el programa més fort en poc temps.

Probablement, ara vaig proposar a l'equip no la tasca de "reunir mil persones la primera vegada", sinó "fer aparèixer la conferència". Potser no soni gaire empresarial i una mica ingenu, tot i que no sóc gens altruista. Però de vegades em puc permetre algunes llibertats.

Hi ha coses més importants que els diners i més enllà dels diners. Ja fem un gran nombre d'esdeveniments genials a gran escala per a mil persones o més. Les nostres conferències de Java fa temps que superen el miler de persones, i ara altres esdeveniments estan saltant per sobre d'aquest bar. És a dir, la pregunta que ens hem convertit en organitzadors experimentats i famosos ja no val la pena. I, probablement, el que guanyem d'aquests esdeveniments ens dóna l'oportunitat de reinvertir en allò que ens interessa, i en aquest cas, a mi personalment.

En fer aquest esdeveniment, vaig en contra d'alguns dels principis de la nostra organització. Per exemple, normalment intentem preparar conferències amb molta antelació, però ara tenim uns terminis molt ajustats, i finalitzem el programa només un mes abans de l'acte en si.

I aquest esdeveniment serà en un 70-80% en anglès. També aquí sempre sorgeix una discussió sobre si hem d'estar més a prop de la gent (que ho entén millor quan la majoria d'informes són en rus) o del món sencer (perquè el món tècnic és angloparlant). Normalment intentem fer molts informes en rus. Però no en aquest moment.

A més, també demanarem a alguns dels nostres parlants de rus que parlin en anglès. Aquest és, en cert sentit, un enfocament absolutament anti-usuari i inhumà. Però hem d'entendre que actualment no hi ha literatura en rus sobre aquest tema, i qualsevol persona que estigui interessada en això es veu obligada a llegir en anglès. Això vol dir que d'alguna manera és capaç d'entendre l'anglès. Si en el cas de JavaScript, Java o .NET hi ha molta gent que no sap molt bé l'anglès, però alhora pot programar bé, llavors, probablement, els sistemes distribuïts són un àmbit en el qual simplement no hi ha cap altre manera d'aprendre ara.

Tinc moltes ganes de dur a terme aquest experiment: com serà percebut pel públic a Rússia un esdeveniment en anglès del 70-80%. Entrarà o no? No ho sabem per endavant perquè mai ho hem fet. Però per què no fer-ho? Diguem que aquest és un gran experiment que no puc evitar provar.

El programa escolar SPTDC ja està publicat completament, i en el cas d'Hydra ja conegut una part notable, i properament publicarem una anàlisi de tot el programa de les jornades.

Font: www.habr.com

Afegeix comentari