par "dodatnih informacija"
svaki telko koristi bazu kao sto je mysql cluster, 90% njih koriste "bas mysql cluster" a 10% koriste alternativna (uglavnom pisana in-house) resenja. Ali mysql cluster nije jedina baza koju telko koristi, oni svi pored mysql cluster-a (koji sluzi samo za HLR i slicne delove njihovog hardware-a) koriste raznorazne sql servere. OracleDB je najcesci, DB2 je vrlo cest, mada ima svakakve exotike.... Imas ljude koji su ceo radni vek proveli u telko industriji a nisu culi za MySQL Cluster posto oni njega ne vide. Svaki mobilni provajder na primer kupuje od velikih proizvodjaca opremu da bi bio operater, ti veliki proizvodjaci nama vise ili manje poznate firme (Ericsson, Alcatel-Lucent, Nokia Siemens Network .. i drugi, ova 3 su najveci) ... Ti kad pogledas npr nas Telenor, oni imaju u svom HLR-u MySQL Cluster, ali ne verujem da bilo ko u telenoru ima pojma sta je to, njima ako HLR prikaze gresku, oni zovu od koga god da su ga kupili i kazu "HLR mi kaze "kod 124447", sta da radim", inzenjer sa druge strane se okaci na HLR i odradi dijagnostiku, opravi ga, uradi sta god treba ... dakle niti onaj u Telenoru zna da je tu neki MySQL Cluster, niti ga to zanima... kao sto tebe boli uvo sto ti je u sat receiveru linux ili sto ti masina za sudove tera neki rtos :D
vezano za FB, njima mysql cluster treba ko treca noga, eventualno bi mogli da ga koriste kao no-sql resenje ali oni su vec probali sa no-sql resenjem i videli da je to ipak samo hype i da za njihov sistem to ne radi ... e sad, i dalje oni imaju tamo mnogo ljudi koji zagovaraju no-sql, imaju cak nekoliko nasih ljudi koji su presli tamo (ako se secam svi su iz Novog Sad-a ali ne treba me drzat za rec) koji imaju iskustva sa no-sql-om, tako da ce FB povremeno isprobavati razne no-sql varijante, sto kasandru u koju su ulozili tolike pare, sto mongo, sto mysql cluster u no-sql varijanti (znam da je Mark radio neke testove i da se prijatno iznenadio kako mysql cluster radi u toj kombinaciji) ali u svakom slucaju, FB je toliko jedan specifican sistem, da "kako to radi FB" nikome realno ne daje nikakvu korisnu informaciju kako da uradi nesto .. isto kao sto niko nema preveliku koristi od toga "kako google nesto radi" ... svi bi oni promenili kako rade stvari, posto su svi oni ucili na greskama jer su svi krenuli sa par servera, pa dosli tu gde su, a to iskustvo ne moze niko da ti sazme u par stotina strana nekog pdf-a
glup primer, jedna velika evropska firma M radi posao X (jbg, bice mnogo X i Y posto - poslovne tajne). Firma M je napravila ceo sistem i onda sa gotovim sistemom postala nas klijent.... ima tome vec mnogo godina. Firma M ima nekoliko stotina MySQL servera, ima organizaciju kakvu ima i ne zeli nista da menja u tome "kako sistem radi", kao nasi klijenti generalno zele informacije o tome kako tih nekoliko stotina mysql servera bolje da konfigurise, kako da bolje optimizuje neki upit i tako to, ali samu arhitekturu sistema ne zele da pipaju.
Firma B radi posao Y koji je skoro identican kao posao X, radi se o drugim podacima ali generalno ista prica (jedni rade komisionu prodaju penkala a drugi gumice za kosu na primer, ista prica, i jedni i drugi imaju prodavce, kupce, artikle, razne pretrage .. samo su artikli razlicitog tipa). Firma B ima bazu slicne velicine kao firma M, imali su slican setup kao firma M ali kada su dosli kod nas kao klijenti rekli su - "we are open to all suggestions", naravno, prihvatili su samo neke sugestije .. u roku od 3 meseca smo im okrenuli ceo sistem naglavacke, sada sa istim brojem servera kao firma M imaju za red velicine vecu bazu (vise artikala), opsluzuju 2 reda velicine vise klijenata (brze su rasli od firme M - mozda zato sto su imali stabilniji i brzi sistem, mozda iz nekog drugog razloga)...
Firma O radi posao X (dakle isti kao firma M) dosli su kao klijent i rekli - mi imamo sistem, aj pogledajte sta mislite, ja sam im rekao "sistem vam nije ni za k. mora ovo sve ispocetka" - i oni su se slozili!!!!. Firma O sa 20 servera opsluzuje isto klijenata kao firma M a ima za 2 reda velicine (100 puta!!) vecu bazu podataka (vise artikala) i vise mogucnosti za pretragu a imaju rast klijenata koji je za nekoliko redova velicine veci od firme M sto znaci da ce verovatno za godinu dana pregaziti firmu M kao klijenta... samo zato sto su prihvatili da ceo sistem organizuju od pocetka kako treba (i bace svoj inicijalni sistem koji je bio pakleno los). Pri tome, ceo posao sa firmom O sam na primer uradio ja sam, celu arhitekturu celog sistema .. i trajalo je samo par meseci ..
Sve tri firme rade vise manje istu stvar, sve tri firme koriste mysql, sve tri firme imaju mnogo para i nije im problem da uzmu koliko treba servera, interneta, ljudi ... firma O ce ih sve zatrti za godinu dana sa zaradom posto su napravili od pocetka sistem da valja .. abitno da li je to bio mysql ili neka druga baza .. isti problem je mogao da se resi i sa pgsql-om, kasandrom, mongom ... samo bi arhitektura bila drugacija, posto mene placa mysql - bilo je uradjeno, jeli, sa mysql-om ... istih takvih prica ima sa pgsql-om jos vise ...
Zasto sve ovo pricam ... FB ima par desetina hiljada servera ... kako su oni organizovali te servere je tebi za tvoj sistem potpuno abitno .. ti moras za svoj sistem da napravis plan rasta
- sta ces da radis sutra sa 1000 vizitora dnevno
- sta ces da radis za 6 meseci sa 100k vizitora dnevno
- sta ces da radis za 2 godine sa milion vizitora dnevno
- sta ces da radis za 5 godina sa milion vizitora na sat
a onda, svakih 3 meseca prolazis kroz taj isti plan, i u odnosu na "sta ima novo u IT svetu" i u odnosu na to gde si u odnosu na planirane brojke redefinises plan ... sta ako za 2 godine imas 50k vizitora dnevno, da li je bolje da stavis kljuc u bravu ili ... sta ako za 2 godine izadje neki db sistem koji skalira lako i jeftino ali zahteva redizajn celog sistema? Oces da nastavis po planu ili ces da redizajniras ceo sistem da koristis taj novi db? Da li ces odma da ulozis pare u testiranje istog ili ces... etc etc ... to su stvari od kojih zavisi da li ce neko da propadne ili napravi bum ... od cega ces da zaradis pare? ja znam gomilu super sajtova koji su sve odradili osim "kako ce da zarade" i na kraju su umrli .. opet sa druge strane i dalje ima ljudi koji ne kapiraju gde FB ili google zaradjuju novac (a zaradjuju toliko da im je budzet ove nase smrdljive zemlje "petty cache") .. tako da...
kako je FB nesto tehnicki resio danas - potpuno je beskorisna informacija za tvoj projekat koji je poceo pre mesec dana ..