Odnoklassniki je najveći korisnik Apache Cassandre na Runetu i jedan od najvećih na svijetu. Počeli smo da koristimo Cassandru 2010. godine za skladištenje ocena fotografija, a sada Cassandra upravlja petabajtima podataka na hiljadama čvorova, čak smo razvili i sopstvene
Održaćemo 12. septembra u našoj kancelariji u Sankt Peterburgu
Uoči susreta, razgovarali smo sa Olegom o toleranciji kvarova distribuiranih sistema sa Cassandrom, pitali o čemu bi on pričao na sastanku i zašto je vredelo prisustvovati ovom događaju.
Oleg je svoju programersku karijeru započeo davne 1995. godine. Razvio je softver u bankarstvu, telekomunikacijama i transportu. Od 2007. radi kao vodeći programer u Odnoklassniki u timu za platformu. Njegove odgovornosti uključuju razvoj arhitekture i rješenja za sisteme visokog opterećenja, velika skladišta podataka i rješavanje problema performansi i pouzdanosti portala. On takođe obučava programere unutar kompanije.
- Oleg, zdravo! U maju održano
Programeri s različitim iskustvom iz različitih kompanija došli su sa svojim bolom, neočekivanim rješenjima problema i nevjerovatnim pričama. Većinu sastanka uspjeli smo provesti u formatu diskusije, ali je bilo toliko razgovora da smo uspjeli dotaknuti samo trećinu planiranih tema. Veliku pažnju smo posvetili tome kako i šta pratimo na primjeru naših stvarnih proizvodnih usluga.
Bio sam zainteresovan i zaista mi se dopalo.
- Sudeći po najavi,
Cassandra je tipičan zauzet distribuirani sistem sa ogromnom količinom funkcionalnosti osim direktnog servisiranja korisničkih zahtjeva: ogovaranje, otkrivanje kvarova, propagiranje promjena šeme, proširenje/smanjenje klastera, antientropija, sigurnosna kopija i oporavak, itd. Kao iu svakom distribuiranom sistemu, kako se količina hardvera povećava, povećava se i vjerovatnoća kvarova, tako da rad Cassandra proizvodnih klastera zahtijeva duboko razumijevanje njegove strukture za predviđanje ponašanja u slučaju kvarova i akcija operatera. Nakon mnogo godina korištenja Cassandre, mi
— Kada je u pitanju Kasandra, šta mislite pod tolerancijom grešaka?
Prije svega, naravno, sposobnost sistema da preživi tipične hardverske kvarove: gubitak mašina, diskova ili mrežne povezanosti sa čvorovima/centrima podataka. Ali sama tema je mnogo šira i posebno uključuje oporavak od kvarova, uključujući kvarove za koje su ljudi rijetko spremni, na primjer, greške operatera.
— Možete li dati primjer najopterećenijeg i najvećeg klastera podataka?
Jedan od naših najvećih klastera je klaster poklona: više od 200 čvorova i stotine TB podataka. Ali nije najopterećeniji jer je pokriven distribuiranom keš memorijom. Naši najprometniji klasteri obrađuju desetine hiljada RPS-a za pisanje i hiljade RPS-a za čitanje.
- Vau! Koliko često se nešto pokvari?
— Kako se nosite sa takvim odbijanjima?
Od samog početka rada Cassandre i prvih incidenata, radili smo na mehanizmima za sigurnosne kopije i oporavak od njih, izgradili procedure raspoređivanja koje uzimaju u obzir stanje Cassandra klastera i, na primjer, ne dozvoljavaju ponovno pokretanje čvorova ako je moguć gubitak podataka. O svemu tome planiramo razgovarati na sastanku.
— Kao što ste rekli, ne postoje apsolutno pouzdani sistemi. Za koje se vrste neuspjeha pripremate i koje ste u stanju podnijeti?
Ako govorimo o našim instalacijama Cassandra klastera, korisnici neće ništa primijetiti ako izgubimo nekoliko mašina u jednom DC-u ili jednom cijelom DC-u (to se dogodilo). Sa povećanjem broja DC-a, razmišljamo o tome da počnemo osiguravati operativnost u slučaju kvara dva DC-a.
— Šta mislite da Kasandri nedostaje u smislu tolerancije grešaka?
Cassandra, kao i mnoge druge rane NoSQL prodavnice, zahteva duboko razumevanje svoje unutrašnje strukture i dinamičkih procesa koji se dešavaju. Rekao bih da mu nedostaje jednostavnost, predvidljivost i uočljivost. Ali biće zanimljivo čuti mišljenja ostalih učesnika sastanka!
Oleg, puno ti hvala što si odvojio vrijeme da odgovoriš na pitanja!
Čekamo sve koji žele da komuniciraju sa stručnjacima iz oblasti upravljanja Apache Cassandra na sastanku 12. septembra u našoj kancelariji u Sankt Peterburgu.
Dođite, biće zanimljivo!