Ljubavno pismo učenju

Treći deo: Zanimljivosti – ljudske priče iza velikih ideja
Ljubavno pismo učenju
Michael Stonebraker i nemirni svet baza podataka – istraživač koji je stalno počinjao iznova

Postoje naučnici koji čitav život usavršavaju jednu veliku zamisao, strpljivo joj dodajući nove slojeve i čuvajući je od promena koje bi mogle ugroziti njenu prvobitnu celinu. Michael Stonebraker pripada drugačijoj vrsti stvaralaca. Kada bi sistem koji je pomogao da nastane postao stabilan, prihvaćen i dovoljno uspešan da drugi požele da ga održavaju, njegovu pažnju već je privlačio problem koji taj sistem nije umeo dobro da reši. Napuštao je uređene kuće sopstvenih ideja čim bi u njihovim zidovima prepoznao ograničenje, a zatim je sa novom grupom studenata i saradnika gradio drugačiju arhitekturu. U oblasti posvećenoj čuvanju podataka postao je veliki zahvaljujući spremnosti da sopstvena rešenja ne čuva kao nedodirljive spomenike.

Rođen je 11. oktobra 1943. godine u Newburyportu, u saveznoj državi Massachusetts, a deo ranog detinjstva proveo je u Milton Millsu u New Hampshireu. Njegov otac bio je inženjer, dok je majka radila kao učiteljica, pa se u porodičnom okruženju susretao sa dva sveta koja će obeležiti njegov život: praktičnim rešavanjem problema i prenošenjem znanja. Bio je srednji od trojice braće. Porodica je živela daleko od budućih središta računarske industrije, u predelu u kome je profesionalni put inženjera zahtevao prilagođavanje, selidbe i spremnost da se posao menja kada okolnosti više ne nude očekivane mogućnosti.

Imao je deset godina kada mu je majka umrla. Porodica se potom preselila u Massachusetts, gde se otac vratio inženjerskom poslu u kompaniji Western Electric. Stonebraker taj rani gubitak nije pretvarao u javnu legendu o sopstvenoj izdržljivosti, ali je događaj promenio svakodnevicu njegovog odrastanja. Otac je pokazao praktičnu domišljatost pri izboru mesta za život: nastanili su se u Newburyju, koji tada nije imao sopstvenu srednju školu i plaćao je školarinu učenicima primljenim u obližnju Governor Dummer Academy. Michael i njegova braća tako su dobili kvalitetno obrazovanje koje bi porodici u drugačijim okolnostima bilo teško dostupno.

Kao mladić još nije pokazivao nameru da čitav život posveti bazama podataka, oblasti koja je tek nastajala. Studirao je elektrotehniku na Univerzitetu Princeton, gde je 1965. godine stekao osnovnu diplomu, a zatim je nastavio obrazovanje na Univerzitetu Mičigen. Doktorsku disertaciju završio je 1971. godine u oblasti računarskog i informacionog inženjerstva. Računari tog vremena bili su skupi, veliki i dostupni ograničenom broju ljudi, dok se softver još oblikovao kao zasebna intelektualna disciplina. Stonebraker je u taj svet ušao dovoljno rano da zatekne mnoga osnovna pitanja otvorenim, a dovoljno kasno da može da gradi celovite sisteme umesto da ostane ograničen na apstraktne zamisli.

Po završetku doktorata pridružio se Univerzitetu Kalifornije u Berkliju. Tamo je sreo Eugeneа Wonga, stručnjaka za statistiku i relacione sisteme, koji ga je usmerio prema novoj teoriji organizovanja podataka. Edgar F. Codd je nekoliko godina ranije predstavio relacioni model, ali je između matematičke elegancije naučnog rada i baze koju stvarni korisnici mogu svakodnevno upotrebljavati stajao ogroman inženjerski prostor. Stonebraker i Wong odlučili su da ga pređu izgradnjom INGRES-a, sistema čije je ime nastalo od izraza Interactive Graphics and Retrieval System.

Projekat je zahtevao razvoj jezika upita, optimizatora, indeksa, kontrole konkurentnosti, oporavka posle greške i brojnih drugih mehanizama koji teoriju pretvaraju u pouzdanu infrastrukturu. Stonebraker i Wong razvili su QUEL, jezik zasnovan na relacionom računu, dok je IBM razvijao SEQUEL, iz koga će nastati SQL. Mnogi istraživači cenili su QUEL zbog njegove doslednosti, ali je SQL stekao snažniju industrijsku podršku, prošao standardizaciju i postao dominantan jezik relacionih baza. Stonebraker je rano naučio da tehnička elegancija sama ne određuje budućnost sistema. Široko prihvatanje zahteva korisnike, kompatibilnost, distribuciju, dokumentaciju, podršku i zajednicu koja ideju prenosi izvan laboratorije.

INGRES se širio među univerzitetima i organizacijama koje su dobijale njegov izvorni kod, prenosile ga na različite računare i prilagođavale sopstvenim potrebama. Oko projekta je nastala zajednica mnogo pre nego što je izraz „otvoreni kod” stekao današnje značenje. U laboratoriji se razvila i kultura zajedničkih simbola, šala i uspomena. Kornjača je postala maskota projekta, uz duhovito objašnjenje da se kreće sporo, ali ipak stiže do cilja. U toj slici lako se prepoznaje priroda rada na velikim sistemima: napredak ponekad izgleda neprimetno, dok stotine malih odluka tokom godina stvaraju infrastrukturu sposobnu da traje.

Stonebrakerova uloga razlikovala se od romantične predstave pronalazača koji sam ispisuje svaki red programa. Njegova najveća snaga nalazila se u izboru problema, oblikovanju arhitekture, postavljanju provokativnih pitanja i okupljanju ljudi sposobnih da zamisao pretvore u funkcionalan sistem. Studentima je davao veliku odgovornost i prostor da samostalno donose tehničke odluke. Takav oblik mentorstva nosio je rizik od grešaka, ali je stvarao istraživače koji su rano učili da njihove odluke imaju posledice u stvarnom kodu. Laboratorija je istovremeno bila škola, radionica i mesto na kome se autoritet profesora svakodnevno proveravao ponašanjem sistema.

Njegov temperament bio je neposredan, energičan i ponekad oštar. Voleo je jasne tvrdnje i merljive rezultate, dok ga je diplomatska neodređenost retko privlačila. Ideja je morala da postane prototip, a prototip da bude izložen stvarnim podacima, opterećenju i poređenju sa drugim rešenjima. Saradnicima je takva odlučnost mogla dati snažan podsticaj, ali je umela da stvori i pritisak. Stonebraker je pripadao istraživačima koji raspravu namerno zaoštre kako bi oblast primorali da preispita svoje navike, a zatim prihvate obavezu da provokaciju potkrepe sistemom koji zaista radi.

Početkom osamdesetih postalo je jasno da INGRES ima komercijalnu vrednost. Stonebraker, Wong i Larry Rowe učestvovali su u osnivanju kompanije Relational Technology, kasnije nazvane Ingres Corporation. Prelazak iz univerzitetske laboratorije na tržište otkrio je drugačiju vrstu odgovornosti. Akademski projekat može promeniti pravac čim istraživači pronađu bolju ideju, dok korisnik komercijalnog sistema očekuje stabilnost, dokumentaciju, podršku i dugoročnu kompatibilnost. Stonebraker je kroz susret sa kompanijama poput Oraclea upoznao moć prodajne mreže, standarda i marketinga, ali i teškoće koje nastaju kada tehnički snažan proizvod ne uspe da osvoji dovoljno širok prostor na tržištu.

Iz tog iskustva razvio je obrazac koji će ponavljati tokom karijere: pronaći problem koji postojeći sistemi rešavaju nezadovoljavajuće, okupiti istraživački tim, napraviti funkcionalan prototip, objaviti rezultate, osnovati kompaniju i izložiti ideju zahtevima stvarnih korisnika. Za Stonebrakera je preduzetništvo predstavljalo produžetak istraživačke metode. Kompanija je omogućavala da sistem pređe poslednju i često najtežu razdaljinu između akademskog rada i svakodnevne primene. Kada bi proizvod dobio sopstveni život, on bi se vraćao istraživanju i tražio sledeću arhitektonsku prepreku.

Uspeh INGRES-a istovremeno mu je pokazao gde su granice tadašnjih relacionih baza. Novi korisnici želeli su da čuvaju geografske objekte, slike, dokumente, inženjerske modele i druge složene podatke koje je bilo teško prirodno izraziti pomoću nekoliko osnovnih tipova. Stonebraker je sredinom osamdesetih pokrenuo POSTGRES, projekat čije je ime otvoreno priznavalo poreklo iz INGRES-a i odlučnost da se krene dalje. Sa Lawrenceom Roweom i novom generacijom studenata razvijao je proširivu bazu kojoj korisnici mogu dodavati tipove, funkcije, operatore i metode pristupa.

POSTGRES je bio zajedničko delo velikog tima. Stonebraker je određivao najvažnije ciljeve, dok su studenti i saradnici arhitektonske zamisli pretvarali u kod, otkrivali njihove slabosti i predlagali praktičnija rešenja. Među ljudima koji su učili u tom okruženju bio je Joseph Hellerstein, kasnije ugledni profesor i pažljiv istoričar projekta. Sećanja članova tima opisuju laboratoriju u kojoj je studentska samostalnost bila neodvojiva od velikih očekivanja. Greške su bile dozvoljene kao deo učenja, pod uslovom da budu dovoljno ozbiljno proučene da iz njih nastane bolje razumevanje sistema.

Univerzitetski kod kasnije su preuzeli Andrew Yu i Jolly Chen, zamenili POSTQUEL podrškom za SQL i objavili Postgres95, iz koga je izrastao PostgreSQL. Stonebraker nije upravljao međunarodnom zajednicom koja je tokom narednih decenija taj kod pretvorila u jednu od najcenjenijih otvorenih baza. U njegovoj karijeri ponovio se prepoznatljiv obrazac: pokrenuo je sistem, dokazao osnovne zamisli, prepustio ga ljudima spremnim da preuzmu dugoročno održavanje i usmerio pažnju prema novom problemu. PostgreSQL je mogao da raste upravo zato što je njegov život postao širi od biografije jednog tvorca.

Stonebraker je sa Roweom i saradnicima osnovao i kompaniju Montage, kasnije nazvanu Illustra, koja je objektno-relacione ideje pokušala da prenese na tržište. Informix je kupio Illustru 1996. godine, a Stonebraker je postao glavni tehnički direktor kompanije. Iskustvo ga je još jednom suočilo sa prednostima i ograničenjima velikih korporacija. One raspolažu kapitalom, prodajnim kanalima i korisnicima potrebnim za široku primenu tehnologije, ali složene organizacije ponekad usporavaju ideje koje zahtevaju duboku promenu postojećih proizvoda.

Posle POSTGRES-a istraživao je distribuirane i federativne baze kroz projekte Mariposa i Cohera. Mariposa je koristila ekonomske metafore kako bi udaljeni čvorovi pregovarali o mestu i ceni izvršavanja upita, dok se Cohera bavila povezivanjem podataka iz različitih izvora. Ovi projekti približili su ga problemu koji se ne može rešiti samom brzinom prenosa. Različite baze često drugačije nazivaju istu pojavu ili istim imenom označavaju različite pojmove, pa spajanje podataka zahteva razumevanje njihovog značenja, porekla i poslovnih pravila. To iskustvo će ga mnogo kasnije vratiti integraciji podataka kroz kompaniju Tamr.

Krajem devedesetih sve snažnije je zastupao misao da jedna veličina ne odgovara svima. Velike relacione sisteme opisivao je kao „slonove” opterećene mnoštvom mogućnosti, istorijskih slojeva i kompromisa. Smatrao je da tokovi podataka, analitička skladišta, naučni nizovi i transakcije u memoriji imaju dovoljno različitu unutrašnju prirodu da zaslužuju posebne izvršne mehanizme. Ova kritika nije proistekla iz površnog odbacivanja relacionih baza. Stonebraker ih je poznavao dublje od većine njihovih zagovornika, pa je umeo da prepozna trenutak u kome osobina nekadašnjeg hardvera ostaje zarobljena u arhitekturi dugo nakon što se računarski svet promenio.

Godine 2001. napustio je Berkeley posle tri decenije i preselio se na istočnu obalu Sjedinjenih Država, povezujući se sa Massachusetts Institute of Technologyjem i istraživačima sa univerziteta u okolini Bostona. U poznim pedesetim godinama izabrao je novi početak. Gusta mreža institucija Nove Engleske omogućila mu je da okuplja timove preko univerzitetskih granica i da za svaki problem povezuje stručnjake odgovarajućih znanja. Njegova organizaciona pokretljivost pratila je intelektualnu: kada zadatak zahteva drugačiji sistem, može zahtevati i drugačiju zajednicu ljudi.

Projekat Aurora bio je posvećen podacima koji neprekidno pristižu, kao što su berzanske cene, očitavanja senzora i telekomunikacioni događaji. U takvom svetu vrednost podatka zavisi od brzine obrade, pa čekanje da se svaki zapis najpre trajno smesti, a zatim naknadno analizira može uništiti smisao rezultata. Aurora je obrađivala tokove dok se događaju, a iz projekta je nastala kompanija StreamBase Systems. Stonebraker je i ovde menjao redosled osnovnih operacija sistema kako bi arhitekturu približio stvarnoj prirodi problema.

C-Store se bavio analitičkim skladištima u kojima upiti pregledaju ogroman broj zapisa, ali koriste mali broj kolona. Umesto čuvanja svih vrednosti jednog reda zajedno, podaci su organizovani po kolonama, što je omogućavalo bolje sažimanje i čitanje samo onih vrednosti koje su potrebne upitu. Projekat je razvio sa Danielom Abadijem, Samuelom Maddenom i drugim saradnicima, a iz njega je nastala Vertica. Prodaja Vertice Hewlett-Packardu potvrdila je sposobnost Stonebrakerovih akademskih timova da istraživačku arhitekturu pretvore u proizvod sposoban da radi nad zahtevnim podacima stvarnih organizacija.

H-Store je preispitivao transakcionu obradu u vreme kada je velika količina aktivnih podataka mogla ostati u radnoj memoriji. Tradicionalne baze nosile su mehanizme projektovane za spore diskove i drugačije procesore, dok je H-Store pokušao da arhitekturu izgradi prema novom hardveru. Iz tog istraživanja nastao je VoltDB. SciDB je, sa druge strane, bio namenjen višedimenzionalnim naučnim nizovima kakve koriste astronomi, fizičari, biolozi i stručnjaci za posmatranje Zemlje. Stonebraker je stalno ponavljao isti stvaralački pokret: pronaći način na koji stručnjak prirodno razume svoje podatke i napraviti sistem koji taj model može neposredno da izvršava.

Tokom karijere osnovao je ili pomogao da nastane neobično veliki broj kompanija, među kojima su Ingres, Illustra, Cohera, StreamBase, Vertica, VoltDB, Paradigm4 i Tamr. Njihovi ishodi bili su različiti. Pojedini sistemi stigli su prerano, neki su rešavali probleme koje tržište još nije jasno prepoznavalo, dok su drugi postali važni proizvodi ili su ih kupile velike kompanije. Stonebraker neuspeh jednog poduhvata nije pretvarao u razlog za trajno povlačenje. Vraćao se problemu, preciznije određivao njegove granice i pokušavao ponovo sa novom arhitekturom.

Njegov javni govor često je bio namerno provokativan. Objavljivao je radove sa naslovima koji su najavljivali kraj dotadašnjih arhitektura i tvrdio da specijalizovani sistemi mogu biti desetine puta brži od opštih baza. Takva retorika donosila mu je pažnju i protivnike, ali je iza nje stajala disciplina merenja. Veliki pomaci, smatrao je, nastaju kada istraživač promeni temeljnu pretpostavku: podatke rasporedi po kolonama, zadrži ih u memoriji, obradi ih u toku ili izabere strukturu koja odgovara načinu na koji ih korisnik zaista vidi.

Istovremeno je umeo da bude pragmatičan. SQL je opisivao kao gotovo međugalaktički interfejs, jezik toliko široko prihvaćen da ga vredi sačuvati i kada se izvršni mehanizam ispod njega radikalno promeni. Razumeo je da korisnici ne usvajaju novu bazu samo zato što laboratorijsko merenje pokazuje veću brzinu. Postojeće aplikacije, obučeni ljudi, procedure, ugovori i strah od prekida predstavljaju stvarne troškove promene. Njegove javne izjave zvučale su beskompromisno, dok su sistemi koje je pravio često otkrivali pažljivu ravnotežu između arhitektonske radikalnosti i poznatih interfejsa.

Association for Computing Machinery dodelio mu je Turingovu nagradu za 2014. godinu, uručenu 2015, za temeljne doprinose konceptima i praksi na kojima počivaju savremeni sistemi baza podataka. Priznanje je obuhvatilo mnogo više od jednog proizvoda: INGRES, POSTGRES i niz kasnijih sistema, kao i izuzetnu sposobnost povezivanja akademskog istraživanja sa praktičnom primenom. Stonebraker je nagradu doživeo kao ostvarenje životnog sna računarskog naučnika. Iza njegove uobičajene samouverenosti pojavio se trenutak iskrene radosti što je stručna zajednica prepoznala celinu rada koji je trajao više od četiri decenije.

Turingova nagrada bila je priznanje i izgradnji sistema kao punopravnoj naučnoj metodi. Velika baza sastoji se od hiljada međusobno povezanih odluka: kako se podatak čuva, kako se bira plan upita, kako transakcije dele resurse, kako se sistem oporavlja posle kvara i kako čuva doslednost pod pritiskom. Matematički model može pokazati smer, dok tek celovit sistem otkriva da li sve njegove pretpostavke mogu zajedno opstati. Stonebraker je generacijama studenata pokazivao da pisanje ozbiljnog prototipa predstavlja oblik mišljenja, jer računar neumoljivo razotkriva mesta na kojima je zamisao ostala nedovoljno precizna.

Posle nagrade nastavio je da učestvuje u novim istraživanjima. Jedna od kasnijih zamisli, DBOS, preispituje granicu između baze podataka i operativnog sistema, predlažući da se stanje savremenih distribuiranih računarskih okruženja organizuje pomoću principa upita, transakcija, evidencije i kontrole pristupa. U toj ideji prepoznaje se isti nemir koji ga je vodio od INGRES-a prema POSTGRES-u i od opštih baza prema specijalizovanim sistemima. Granice između računarskih oblasti za njega su ostajale radne pretpostavke koje treba proveravati, a ne prirodni zakoni kojima se duguje večna poslušnost.

Stonebrakerov privatni život ostao je manje izložen od njegove profesionalne karijere. U intervjuima je najradije govorio o studentima, arhitekturama, kompanijama i razvoju industrije. Veza sa Novom Engleskom, predelom njegovog detinjstva i kasnijeg života, pružala je retku geografsku stalnost čoveku čiji je intelektualni put obeležen neprestanim promenama. Iza brojnih sistema nalazila se mreža dugih profesionalnih prijateljstava: Eugene Wong, Larry Rowe, studenti Berkeleyja i kasniji saradnici sa MIT-a, Browna, Brandeisa i drugih univerziteta činili su zajednice bez kojih nijedna od velikih arhitektura ne bi mogla nastati.

Njegova biografija zato ne prati usamljenog genija okruženog bezimenim pomoćnicima. Stonebrakerova posebna sposobnost nalazila se u stvaranju intelektualnih družina koje su velikom pitanju davale mnoštvo konkretnih odgovora. Dobar arhitekta mora ponuditi dovoljno snažan pravac da tim razume cilj i dovoljno poverenja da ga ne sputava pri svakom koraku. Stonebraker je umeo da bude zahtevan, nestrpljiv i grub u raspravi, ali je mladim istraživačima davao probleme dostojne njihovih najboljih godina i stvarnu priliku da utiču na razvoj čitave oblasti.

Njegova karijera pokazuje i koliko nauka zavisi od institucija koje stvaraju prostor za dugotrajan rizik. Federalno finansiranje omogućilo je rani razvoj INGRES-a i POSTGRES-a, Berkeleyjeva kultura studentskog programiranja pretvorila je ideje u funkcionalne sisteme, tržište kapitala pomoglo je njihovom prelasku u proizvode, dok je mreža univerziteta oko Bostona omogućila okupljanje novih istraživačkih timova. Stonebraker je vešto povezivao te svetove: univerzitet mu je davao slobodu za rizično pitanje, kompanija proveru stvarnog korisnika, a otvoreni kod mogućnost da delo nastavi život izvan obe institucije.

Snaga njegovog pristupa imala je i svoju cenu. Čovek koji jasno vidi arhitektonsku razliku može potceniti neurednost svakodnevnog sveta u kome korisnici čuvaju stare sisteme zbog podataka, navika, ugovora i straha od prekida. Stonebrakerova retorika ponekad je ostavljala utisak da će tehnička nadmoć sama ukloniti svaki otpor. Ipak, oblast baza podataka, prirodno oprezna zato što čuva najvažnije zapise organizacije, imala je koristi od njegove nestrpljivosti. Podsećao je da i mirovanje ima cenu: složenost, sporost i beskrajno dodavanje novih slojeva arhitekturi čije su početne pretpostavke odavno pripadale drugom hardverskom dobu.

INGRES je pokazao da relacioni model može postati funkcionalan sistem. POSTGRES je relacionoj osnovi dao proširivost. Aurora je obradila podatke dok pristižu, C-Store je analitički svet organizovao po kolonama, H-Store je transakcije prilagodio velikoj memoriji, a SciDB je u središte postavio naučne nizove. Svaki projekat odgovarao je na drugačije pitanje, ali su svi nosili isti rukopis: prepoznati mesto na kome nasleđena arhitektura rasipa snagu i izgraditi sistem prema stvarnoj prirodi zadatka.

Današnji svet u velikoj meri potvrđuje Stonebrakerovu poruku. Organizacije koriste relacione, dokumentne, grafovske, vremenske, kolonske, vektorske i strim baze, često povezujući više sistema u istoj aplikaciji. Istovremeno je PostgreSQL, potomak njegovog berklijskog projekta, postao izuzetno sposoban opšti sistem. U tome postoji dragocena dopuna njegovoj ideji o specijalizaciji: širina može dugo opstati kada arhitektura priznaje različitost podataka i dozvoljava da sistem prima nove tipove, operacije i metode pristupa.

Stonebrakerov život pruža snažnu pouku svakome ko uči. Znanje se lako pretvara u odanost prvoj velikoj ideji koja nam je donela uspeh, jer raniji zaključak vremenom postaje deo ugleda i ličnog identiteta. Stonebraker je birao zahtevniji put. Dozvoljavao je da ga nova merenja udalje od sopstvenih sistema i da arhitekturu koju je nekada branio prepozna kao ograničenje u drugačijem svetu. Takva spremnost nije proisticala iz pomodnog odbacivanja starog, već iz dubokog razumevanja razloga zbog kojih je stari sistem nastao i trenutka u kome su se ti razlozi promenili.

U njegovom načinu stvaranja postoji oslobađajuća misao: čovek ne mora zauvek ostati autor svog prvog uspešnog dela. Može zahvaliti staroj ideji, predati je ljudima spremnim da je dalje razvijaju i krenuti prema pitanju koje još nema ime. Stonebraker je proveo život gradeći sisteme koji pamte, a ostao upamćen po tome što sopstvenoj prošlosti nije dozvolio da mu određuje granice budućnosti. Njegova vernost znanju pokazivala se u spremnosti da promeni rešenje kada se promeni svet koji tim rešenjem pokušava da razume.

Zato njegovo nasleđe prevazilazi spisak baza, kompanija i nagrada. Ono živi u načinu postavljanja pitanja: koje osobine sistema pripadaju stvarnom problemu, a koje predstavljaju trag zastarelog hardvera; da li korisnika primoravamo da svoj svet prevede u pogrešan model; može li arhitektura postati višestruko bolja kada jasno odredi posao kome služi; kada uspešan projekat treba predati zajednici i otvoriti prostor za novi početak? Stonebraker je pokazao da trajnost ne nastaje očuvanjem jednog nepromenljivog oblika. Ona nastaje sposobnošću sistema, zajednice i istraživača da se obnavljaju bez gubitka znanja stečenog na prethodnom putu.

← Prethodna priča Povratak na sadržaj Sledeća priča →