1 00:00:00,000 --> 00:00:00,409 2 00:00:00,409 --> 00:00:01,950 THOMAS CARRIERO: Ninsab Thomas Carriero. 3 00:00:01,950 --> 00:00:03,640 Jien inġinier software fuq Dropbox. 4 00:00:03,640 --> 00:00:05,250 >> ALEX ALLAIN: Ninsab Alex Allain. 5 00:00:05,250 --> 00:00:08,200 I am inġinier hawn fuq Dropbox. 6 00:00:08,200 --> 00:00:11,320 >> THOMAS CARRIERO: Iva, I kien attwalment l-ewwel TF ras għall CS50 7 00:00:11,320 --> 00:00:13,660 meta David Malin ħadet f'idejha l-klassi. 8 00:00:13,660 --> 00:00:17,010 I kienet diġà ġiet tagħlim CS50 għal żewġ semestri 9 00:00:17,010 --> 00:00:20,700 ma 'Mike Smith, li kien il-professur qabel hemmhekk. 10 00:00:20,700 --> 00:00:25,310 >> ALEX ALLAIN: So I attwalment ma jieħdu CS50, imma jien ma TF darbtejn. 11 00:00:25,310 --> 00:00:29,050 Ladarba bħala TF regolari, u mbagħad sena għolja tiegħi 12 00:00:29,050 --> 00:00:32,520 I kien attwalment TF kap ta ' CS50, li kien ta 'gost. 13 00:00:32,520 --> 00:00:34,270 THOMAS CARRIERO: So meta David milħuq barra 14 00:00:34,270 --> 00:00:38,647 lili dwar it-twaqqif Dropbox fl-appliance CS50, 15 00:00:38,647 --> 00:00:41,230 I kien verament eċċitati, minħabba għandna attwalment jkollu klijent Linux, 16 00:00:41,230 --> 00:00:46,270 għalhekk ħafna mill-utenti tagħna użu jew Twieqi jew il-klijenti Macintosh, 17 00:00:46,270 --> 00:00:50,940 iżda l-Linux, Macintosh, u Windows klijenti huma kollha attwalment simili ħafna. 18 00:00:50,940 --> 00:00:55,590 >> Allura dak li għamilna huwa aħna installat minn qabel il-klijent Dropbox Linux fil-CS50 19 00:00:55,590 --> 00:00:59,990 appliance, u din tmur bħad kollha ta 'utenti tagħna oħra Linux. 20 00:00:59,990 --> 00:01:02,210 >> ALEX ALLAIN: Allura l- mod Dropbox xogħlijiet huwa 21 00:01:02,210 --> 00:01:08,590 runs bħala klijent fuq ħafna differenti sistemi operattivi u apparat. 22 00:01:08,590 --> 00:01:11,387 Il-klijent desktop Dropbox huwa wieħed mill-aktar magħrufa sew, 23 00:01:11,387 --> 00:01:12,720 u waħda mill-aktar interessanti. 24 00:01:12,720 --> 00:01:15,460 >> THOMAS CARRIERO: So Dropbox bażikament jieħu l-fajls 25 00:01:15,460 --> 00:01:19,500 li inti tpoġġi fil-folder u biċċiet dawk il-fajls fis-biċċiet erba 'megabytes. 26 00:01:19,500 --> 00:01:23,270 Allura aħna ser tagħti 100-megabyte Fajl PDF u aħna ser 27 00:01:23,270 --> 00:01:26,070 chunk fis-25 biċċiet erba 'megabytes. 28 00:01:26,070 --> 00:01:30,670 Dawk biċċiet huma mbagħad encrypted u allura aħna jibgħathom lill servers blokk tagħna. 29 00:01:30,670 --> 00:01:35,980 >> ALEX ALLAIN: Il-servers blokk huma il-ħażna għall-blokki nfushom, 30 00:01:35,980 --> 00:01:39,570 u għalhekk kull blokk hija maħżuna fil- l-server blokk mal-data 31 00:01:39,570 --> 00:01:43,990 u Shaw 356 hash ta 'dak blokka. 32 00:01:43,990 --> 00:01:48,280 Li l-encryption bażika ħafna primitive li tiġbor fil-qosor, f'xi sens, 33 00:01:48,280 --> 00:01:53,140 id-data b'mod ħafna uniku li l-uniku għal dak data. 34 00:01:53,140 --> 00:01:55,540 >> Inti tista 'upload l- fajl sħiħ kollha f'daqqa, 35 00:01:55,540 --> 00:02:00,120 iżda jirriżulta jekk inti tagħmel li, fajls verament kbar jieħu 36 00:02:00,120 --> 00:02:03,616 żmien twil verament biex ittella, u jekk għandek falliment, int minn xortih 37 00:02:03,616 --> 00:02:04,740 u inti għandek terġa 'tibda dan. 38 00:02:04,740 --> 00:02:07,620 >> Dak li aħna mbagħad nagħmlu huwa we tell server ieħor fis-sistema tagħna, 39 00:02:07,620 --> 00:02:11,550 u dak li nsejħu l-metadata server, li ħej dan huwa fajl, 40 00:02:11,550 --> 00:02:14,200 u huwa magħmul mill- lista li ġejja ta 'blokki. 41 00:02:14,200 --> 00:02:17,030 U aħna rrinunzjati l-hashes biex tidentifika dawk il-blokki 42 00:02:17,030 --> 00:02:18,770 minflok uploading-ġdid il-blokk kollu. 43 00:02:18,770 --> 00:02:20,820 Il metaserver mbagħad kontrolli l-servers kbar, 44 00:02:20,820 --> 00:02:22,153 tiżgura l-blokki qegħdin hemm. 45 00:02:22,153 --> 00:02:23,140 Jekk huma, perfetta. 46 00:02:23,140 --> 00:02:24,040 Kollox huwa tajjeb. 47 00:02:24,040 --> 00:02:26,400 >> THOMAS CARRIERO: Meta aħna tixtieq li bażikament tniżżel 48 00:02:26,400 --> 00:02:30,050 l-fajl mill-internet, ejja jiġifieri, aħna ser ngħidu għall-aħħar metaserver 49 00:02:30,050 --> 00:02:33,090 ewwel, ħej tista 'tgħidli dwar fejn tinstab din fajl? 50 00:02:33,090 --> 00:02:37,230 U metaserver se ngħid, oh tal dan il-fajl attwalment 25 biċċiet erba 'megabytes, 51 00:02:37,230 --> 00:02:38,210 u hawn huma. 52 00:02:38,210 --> 00:02:41,712 U allura aħna ser imorru server blokk u attwalment tniżżel kull wieħed minn dawk biċċiet. 53 00:02:41,712 --> 00:02:43,670 U allura aħna ser jirrikostitwixxu l-fajl minn hemm, 54 00:02:43,670 --> 00:02:45,086 u allura aħna ser tibda l-download. 55 00:02:45,086 --> 00:02:47,580 Iva, hekk Dropbox 'jittratta bi skala bażikament 56 00:02:47,580 --> 00:02:50,460 billi ħafna, sharding aggressivi ħafna. 57 00:02:50,460 --> 00:02:56,400 >> ALEX ALLAIN: Sharding huwa meta inti jieħdu l-utenti fil-bidu tiegħek sa 58 00:02:56,400 --> 00:03:00,010 jew kumpanija tiegħek u forsi huma użati biex tkun fid-database waħda, 59 00:03:00,010 --> 00:03:02,620 u li xogħlijiet kbir sakemm inti hit ċertu numru ta 'utenti. 60 00:03:02,620 --> 00:03:04,578 U verament dak li trid tagħmel hu li ssib xi mod 61 00:03:04,578 --> 00:03:07,410 li jaqsam dawk madwar żewġ databases, jew forsi aktar minn tnejn. 62 00:03:07,410 --> 00:03:10,830 Idealment, biżżejjed li inti tista ' għandhom kull utent fid-dinja. 63 00:03:10,830 --> 00:03:13,080 >> U hekk meta inti Shard, dak li għandek tagħmel huwa inti 64 00:03:13,080 --> 00:03:16,830 issib xi mod biex tiddeċiedi li database li jmorru 65 00:03:16,830 --> 00:03:20,240 li li ma tkunx teħtieġ laqtu direttorju ċentrali. 66 00:03:20,240 --> 00:03:23,670 Jew forsi huwa malajr ħafna, cheap direttorju ċentrali ħarsa-up. 67 00:03:23,670 --> 00:03:27,189 >> THOMAS CARRIERO: Aħna qatt ma jkollhom kollox maħżuna f'database waħda, 68 00:03:27,189 --> 00:03:28,980 minħabba li kważi qatt tmur għall-iskala. 69 00:03:28,980 --> 00:03:33,970 Allura minflok, dak li se tagħmel huwa li tieħu kollha dik l-informazzjoni, il-fajls kollha li 70 00:03:33,970 --> 00:03:36,610 huma maħżuna fuq il-metadata, Shard madwar l-mijiet 71 00:03:36,610 --> 00:03:38,710 jew eluf ta 'databases loġiku. 72 00:03:38,710 --> 00:03:42,900 U dan ifisser li meta għandna jitlob għall-informazzjoni ta 'utent, 73 00:03:42,900 --> 00:03:46,890 aħna ser ewwel ngħidu, ħej li database hija informazzjoni dan l-utent maħżuna fil-? 74 00:03:46,890 --> 00:03:49,852 Imbagħad aħna ser bażikament jużaw dik id-deċiżjoni li jmorru 75 00:03:49,852 --> 00:03:51,560 issib li database u li fejn aħna ser 76 00:03:51,560 --> 00:03:55,080 tagħbija l-fajls jew kollha l-metadata dwar il-fajls. 77 00:03:55,080 --> 00:03:56,464 >> Allura aħna jużaw ħafna ta 'sharding. 78 00:03:56,464 --> 00:03:57,880 Iżda sharding mhuwiex dejjem biżżejjed. 79 00:03:57,880 --> 00:04:00,380 Inti fil-fatt bżonn cache ħafna tat-talbiet komuni, 80 00:04:00,380 --> 00:04:04,010 minħabba li, anki dawk database mistoqsijiet jistgħu jkunu għaljin 81 00:04:04,010 --> 00:04:07,570 hekk aħna wkoll jagħmlu jinqabad aggressivi strateġiji biex tiżgura li l-aktar 82 00:04:07,570 --> 00:04:10,310 talbiet komuni huma pjuttost faċli biex tiġi kkalkulata. 83 00:04:10,310 --> 00:04:14,630 U bażikament li jagħmel ħafna aktar mgħaġġel u jagħmilha taħdem iskala ex. 84 00:04:14,630 --> 00:04:17,320 Allura dak fuq ħafna ta 'livell għoli kif Dropbox xogħlijiet. 85 00:04:17,320 --> 00:04:19,149 >> ALEX ALLAIN: Ninsab Alex Allain. 86 00:04:19,149 --> 00:04:20,857 >> THOMAS CARRIERO: U Jien Thomas Carriero. 87 00:04:20,857 --> 00:04:22,579 ALEX ALLAIN: U dan huwa CS50. 88 00:04:22,579 --> 00:04:23,936