THOMAS Carriero: Ma olen Thomas Carriero.
Olen tarkvara insener Dropbox.
>> ALEX ALLAIN: Ma olen Alex Allain.
Olen insener siin Dropbox.
>> THOMAS Carriero: Jah, ma olin tegelikult esimene juht TF CS50
kui David Malin võttis üle klassi.
Mul oli juba õpetanud CS50 kaks semestrit
Mike Smith, kes oli Enne professor seal.
>> ALEX ALLAIN: Ma tegelikult ei võtta CS50, kuid ma ei TF see kaks korda.
Kui tavalise TF, ja siis minu vanemate aastas
Ma olin tegelikult pea TF kohta CS50, mis oli väga lõbus.
THOMAS Carriero: So kui David ulatasid
mulle seadistamise kohta Dropbox on CS50 seadme
Olin väga põnevil, sest meil tegelikult on Linux klient,
nii enamik meie kasutajatele kasutada kas Windows või Macintosh klientidele
kuid Linux, Macintosh ja Windows kliendid on kõik tegelikult väga sarnased.
>> See, mida me tegime: eelinstalleeritud Dropbox Linux kliendi CS50
seadme ja see töötab nagu kõik meie teised Linuxi kasutajad.
>> ALEX ALLAIN: So tee Dropbox töötab, on see
jookseb kui klient on palju erinevaid operatsioonisüsteemide ja seadmeid.
Dropbox desktop kliendile on üks kõige tuntum,
ja üks kõige huvitavam.
>> THOMAS Carriero: Nii Dropbox põhimõtteliselt võtab kõik failid
et paned kausta ja see tükkideks need failid neli megabaiti tükkideks.
Nii et me võtame 100-megabaidine PDF-faili ja me
patakas see 25 neli megabaiti tükkideks.
Need tükid on siis krüpteeritud ja siis saatke need meie blokk servereid.
>> ALEX ALLAIN: plokk serverid ladustamise plokid ise
ja nii iga plokk on salvestatud plokk server koos andmetega
ja Shaw 356 hash selle blokeerida.
See on väga lihtne krüpteerimine primitiivne , mis võtab kokku, mõnes mõttes,
andmeid väga originaalsel moel , mis on unikaalne, et andmed.
>> Sa võid üles laadida kogu pilti korraga
kuid selgub, kui sa et tõesti suuri faile võtta
väga palju aega laadida, ja kui teil on rike, siis oled õnne
ja sa pead uuesti käivitada.
>> Mida me siis teha, on meil öelda teine ​​server meie süsteemis,
ja see, mida me nimetame metaandmed server, et hei see on fail,
ja see koosneb Järgnev loetelu plokke.
Ja me mööda üles räsisid teha kindlaks need plokid
mitte uuesti üleslaadimist kogu plokk.
Metaserver siis kontrollib plokk serverid
tagab plokid on seal.
Kui nad on, täiuslik.
Kõik on hea.
>> THOMAS Carriero: Kui me tahan põhiliselt alla
fail internet, olgem ütleme, me ütleme, et viimase metaserver
Esiteks hey kas sa mulle öelda kohta, kus see fail asub?
Ja metaserver ütlevad, oh seda faili tegelikult 25 neli megabaiti tükkideks,
ja siin nad on.
Ja siis me lähme plokk server ja tegelikult alla laadida kõik need tükkideks.
Ja siis me taastada file sealt
ja siis me alustada allalaadimist.
Jah, nii Dropbox tehinguid skaala põhiliselt
väga, väga agressiivne sharding.
>> ALEX ALLAIN: Sharding on siis, kui võtma kõik kasutajad oma alustamiseks
või teie ettevõtte ja võib-olla nad kasutatakse olla ühes andmebaasis
ja mis töötab hästi, kuni sa tabanud teatud hulk kasutajaid.
Ja tõesti, mida sa tahad tegema, on leida õige viis
jagada neid üle kahe andmebaasid, või võib-olla rohkem kui kaks.
Ideaalis küll, et saate on iga kasutaja kogu maailmas.
>> Ja kui sa Kild mida te teete, on teil
leida õige viis otsustamisel mis andmebaasis minna
et see ei nõua lööb keskne kataloog.
Või äkki see on väga kiire, odav look-up keskne kataloog.
>> THOMAS Carriero: Me ei ole kunagi kõik salvestatud ühe andmebaasi
sest see on peaaegu kunagi mõõtkavas.
Nii et selle asemel, mida me teeme, on võtta kõik et teave, kõik failid
salvestatakse metaandmete Kildu sadades
või tuhandeid loogiline andmebaase.
Ja see tähendab, et kui meil on taotlema kasutaja andmed,
me kõigepealt öelda, hei, mida andmebaas Kas see on kasutaja andmed salvestatakse?
Siis me põhimõtteliselt kasutada, et otsus minna
leiavad, et andmebaas ja see on koht, kus me
laadida kõik failid või kõik metaandmete failid.
>> Nii et me kasutame palju sharding.
Aga sharding ei ole alati piisav.
Sa tegelikult vaja vahemälu palju ühiseid taotlustest
sest isegi need andmebaas päringuid võib olla kulukas
nii teeme ka agressiivne hõivamine strateegiate veenduda, et kõige
ühine taotlused on üsna lihtne arvutada.
Ja põhimõtteliselt, et teeb palju kiiremini ja see muudab töö ex skaalal.
Nii et see on väga kõrgetasemeline kuidas Dropbox töötab.
>> ALEX ALLAIN: Ma olen Alex Allain.
>> THOMAS Carriero Ja Ma olen Thomas Carriero.
ALEX ALLAIN: Ja see on CS50.