1 00:00:00,000 --> 00:00:00,409 2 00:00:00,409 --> 00:00:01,950 THOMAS CARRIERO: હું થોમસ Carriero છું. 3 00:00:01,950 --> 00:00:03,640 હું ડ્રૉપબૉક્સ પર એક સોફ્ટવેર એન્જિનિયર છું. 4 00:00:03,640 --> 00:00:05,250 >> ALEX Allain: હું એલેક્સ Allain છું. 5 00:00:05,250 --> 00:00:08,200 હું અહીં ડ્રૉપબૉક્સ એક ઈજનેર છું. 6 00:00:08,200 --> 00:00:11,320 >> THOMAS CARRIERO: હા, હું હતો ખરેખર CS50 માટે પ્રથમ વડા ટીએફ 7 00:00:11,320 --> 00:00:13,660 ડેવિડ મેલિન વર્ગ સંભાળ્યો છે. 8 00:00:13,660 --> 00:00:17,010 હું પહેલેથી જ શીખવતા હતા બે સેમેસ્ટર માટે CS50 9 00:00:17,010 --> 00:00:20,700 હતી માઇક સ્મિથ સાથે ત્યાં પહેલાં પ્રોફેસર. 10 00:00:20,700 --> 00:00:25,310 >> ALEX Allain: તેથી હું ખરેખર ન હતી CS50 લેવા છે, પણ હું ટીએફ બમણા હતી. 11 00:00:25,310 --> 00:00:29,050 એકવાર નિયમિત ટીએફ તરીકે, અને પછી મારા વરિષ્ઠ વર્ષ 12 00:00:29,050 --> 00:00:32,520 હું ખરેખર વડા ટીએફ હતી રમવામાં ઘણી મજા હતી, જે CS50,. 13 00:00:32,520 --> 00:00:34,270 THOMAS CARRIERO: તેથી ડેવિડ પહોંચી ત્યારે 14 00:00:34,270 --> 00:00:38,647 મને સુયોજિત વિશે CS50 સાધન ડ્રૉપબૉક્સ, 15 00:00:38,647 --> 00:00:41,230 હું ખરેખર ઉત્સાહિત હતી કારણ કે અમે ખરેખર Linux ક્લાઈન્ટમાંથી છે, 16 00:00:41,230 --> 00:00:46,270 તેથી અમારા વપરાશકર્તાઓ મોટા ભાગના ક્યાં ઉપયોગ વિન્ડોઝ અથવા મેકિન્ટોશ ક્લાઈન્ટો, 17 00:00:46,270 --> 00:00:50,940 પરંતુ Linux ને, મેકિન્ટોશ, અને Windows ક્લાઈન્ટો બધા ખરેખર ખૂબ જ સમાન હોય છે. 18 00:00:50,940 --> 00:00:55,590 >> તેથી આપણે શું હતા અમે પૂર્વ સ્થાપિત છે આ CS50 માં ડ્રૉપબૉક્સ Linux ક્લાઈન્ટમાંથી 19 00:00:55,590 --> 00:00:59,990 સાધન છે, અને તે જેમ જ ચાલે છે અમારા અન્ય Linux વપરાશકર્તાઓ બધા. 20 00:00:59,990 --> 00:01:02,210 >> ALEX Allain: તેથી ડ્રૉપબૉક્સ કામ કરે છે માર્ગ છે 21 00:01:02,210 --> 00:01:08,590 ઘણાં વિવિધ પર ક્લાયન્ટ તરીકે ચાલે છે ઓપરેટિંગ સિસ્ટમો અને ઉપકરણો. 22 00:01:08,590 --> 00:01:11,387 આ ડ્રૉપબૉક્સ ડેસ્કટોપ ક્લાઈન્ટ છે સૌથી વધુ જાણીતા છે, 23 00:01:11,387 --> 00:01:12,720 અને સૌથી વધુ રસપ્રદ છે. 24 00:01:12,720 --> 00:01:15,460 >> THOMAS CARRIERO: તેથી ડ્રૉપબૉક્સ મૂળભૂત રીતે બધી ફાઈલો છે 25 00:01:15,460 --> 00:01:19,500 તમે ફોલ્ડરમાં મૂકી અને તે ટુકડા કે તે ફાઈલો ચાર મેગાબાઇટ હિસ્સામાં. 26 00:01:19,500 --> 00:01:23,270 તેથી અમે 100 મેગાબાઇટ લેવા પડશે પીડીએફ ફાઇલ અને અમે પડશે 27 00:01:23,270 --> 00:01:26,070 ભાગ 25 ચાર મેગાબાઇટ હિસ્સામાં માં. 28 00:01:26,070 --> 00:01:30,670 તે હિસ્સામાં પછી એનક્રિપ્ટ થયેલ છે અને છે પછી અમે અમારી બ્લોક સર્વરો તેમને મોકલો. 29 00:01:30,670 --> 00:01:35,980 >> ALEX Allain: આ બ્લોક સર્વરો બ્લોક્સ પોતાના માટે સંગ્રહ, 30 00:01:35,980 --> 00:01:39,570 અને તેથી દરેક બ્લોક માં સંગ્રહાય છે ડેટા સાથે અવરોધિત કરો સર્વર 31 00:01:39,570 --> 00:01:43,990 અને તે બ્લોક એક શો 356 હેશ. 32 00:01:43,990 --> 00:01:48,280 કે પ્રાચીન એક ખૂબ જ મૂળભૂત એનક્રિપ્શન છે કે અમુક અર્થમાં, સારાંશ, 33 00:01:48,280 --> 00:01:53,140 ખૂબ જ અનન્ય રીતે માહિતી કે કે માહિતી માટે અનન્ય છે. 34 00:01:53,140 --> 00:01:55,540 >> તમે અપલોડ કરી શકે છે બધા એક જ સમયે સમગ્ર ફાઇલ, 35 00:01:55,540 --> 00:02:00,120 જો તમે કરો, પરંતુ જો તે તારણ કે, ખરેખર મોટી ફાઈલોને લેવા 36 00:02:00,120 --> 00:02:03,616 અપલોડ કરવા માટે ખરેખર લાંબા સમય સુધી, અને જો તમે નિષ્ફળતા હોય, તો તમે નસીબ નથી 37 00:02:03,616 --> 00:02:04,740 અને તમે તેને પુનઃશરૂ છે. 38 00:02:04,740 --> 00:02:07,620 >> શું અમે પછી શું આપણે કહી છે અમારા સિસ્ટમમાં અન્ય સર્વર, 39 00:02:07,620 --> 00:02:11,550 અને શું અમે મેટાડેટા કૉલ સર્વર, કે હે આ ફાઇલ છે 40 00:02:11,550 --> 00:02:14,200 અને તે બનેલા છે બ્લોકની યાદી નીચેના. 41 00:02:14,200 --> 00:02:17,030 અને આપણે હેશ પસાર તે બ્લોક્સ ઓળખવા માટે 42 00:02:17,030 --> 00:02:18,770 બદલે ફરીથી અપલોડ સમગ્ર બ્લોક. 43 00:02:18,770 --> 00:02:20,820 આ metaserver પછી બ્લોક સર્વરો ચકાસે છે, 44 00:02:20,820 --> 00:02:22,153 બ્લોક્સ છે સુનિશ્ચિત કરે છે. 45 00:02:22,153 --> 00:02:23,140 તેઓ સંપૂર્ણ છે. 46 00:02:23,140 --> 00:02:24,040 બધું સારું છે. 47 00:02:24,040 --> 00:02:26,400 >> THOMAS CARRIERO: જ્યારે અમે મૂળભૂત રીતે ડાઉનલોડ કરવા માંગો છો 48 00:02:26,400 --> 00:02:30,050 ઇન્ટરનેટ પરથી ફાઇલ, ચાલો જેમ કે, આપણે છેલ્લા metaserver માટે કહેવું પડશે 49 00:02:30,050 --> 00:02:33,090 પ્રથમ, અરે તમે મને કહી શકો છો આ ફાઇલના સ્થિત છે શું? 50 00:02:33,090 --> 00:02:37,230 અને metaserver કહે છે, ઓહ આ ફાઈલની ઇચ્છા ખરેખર 25 ચાર મેગાબાઇટ ટુકડા 51 00:02:37,230 --> 00:02:38,210 અને અહીં તેઓ છે. 52 00:02:38,210 --> 00:02:41,712 અને પછી અમે એક અવરોધિત કરો સર્વર જાઓ અને પડશે ખરેખર તે હિસ્સામાં દરેક ડાઉનલોડ કરો. 53 00:02:41,712 --> 00:02:43,670 અને પછી અમે પુનર્ગઠનનો પડશે ફાઇલ ત્યાંથી, 54 00:02:43,670 --> 00:02:45,086 અને પછી અમે ડાઉનલોડ શરૂ કરી શકશો. 55 00:02:45,086 --> 00:02:47,580 સોદા હા, તેથી ડ્રૉપબૉક્સ સ્કેલ સાથે મૂળભૂત રીતે 56 00:02:47,580 --> 00:02:50,460 ખૂબ જ રીતે, ખૂબ જ આક્રમક sharding. 57 00:02:50,460 --> 00:02:56,400 >> ALEX Allain: તમે જ્યારે Sharding છે તમારા ઉપર શરૂ કરો માં બધા વપરાશકર્તાઓને લે 58 00:02:56,400 --> 00:03:00,010 અથવા તમારી કંપની અને કદાચ તેઓ એક ડેટાબેઝમાં આપવામાં આવે છે, 59 00:03:00,010 --> 00:03:02,620 અને તે તમે ત્યાં સુધી સારી રીતે કામ કરે વપરાશકર્તાઓ એક નિશ્ચિત સંખ્યા નહીં. 60 00:03:02,620 --> 00:03:04,578 અને ખરેખર તમે શું કરવા માંગો છો કરવા માટે કેટલાક માર્ગ શોધવા છે 61 00:03:04,578 --> 00:03:07,410 બે તરફ તે વિભાજિત ડેટાબેઝ, અથવા કદાચ બે કરતાં વધુ. 62 00:03:07,410 --> 00:03:10,830 તમે કરી શકો છો કે જે આદર્શ રીતે, પૂરતી વિશ્વના દરેક વપરાશકર્તા છે. 63 00:03:10,830 --> 00:03:13,080 >> અને તેથી તમે, ઠીકરું જ્યારે તમે શું તમે છે 64 00:03:13,080 --> 00:03:16,830 નક્કી કેટલાક માર્ગ શોધવા જે ડેટાબેઝ જાઓ 65 00:03:16,830 --> 00:03:20,240 તે માટે જરૂર નથી કેન્દ્રીય ડિરેક્ટરી હિટ. 66 00:03:20,240 --> 00:03:23,670 અથવા કદાચ તે ખૂબ જ ઝડપી છે સસ્તા લુકઅપ સેન્ટ્રલ ડિરેક્ટરી. 67 00:03:23,670 --> 00:03:27,189 >> THOMAS CARRIERO: અમે ક્યારેય એક ડેટાબેઝમાં સંગ્રહ બધું, 68 00:03:27,189 --> 00:03:28,980 કે લગભગ છે કારણ કે પરિમાણ જતા નથી. 69 00:03:28,980 --> 00:03:33,970 તેથી તેના બદલે, અમે શું કરશે તમામ લેવા છે તે માહિતી, કે બધી ફાઈલો 70 00:03:33,970 --> 00:03:36,610 મેટાડેટા પર સંગ્રહાય છે, સેંકડો સમગ્ર ઠીકરું 71 00:03:36,610 --> 00:03:38,710 અથવા લોજિકલ ડેટાબેઝ હજારો ઘર છે. 72 00:03:38,710 --> 00:03:42,900 અને તે અર્થ એ થાય કે અમે એક હોય એક વપરાશકર્તા માહિતી માટે વિનંતી, 73 00:03:42,900 --> 00:03:46,890 અમે પ્રથમ, કહેવું પડશે અરે જે ડેટાબેઝ આ વપરાશકર્તાની જાણકારી સંગ્રહાયેલ છે? 74 00:03:46,890 --> 00:03:49,852 તો પછી અમે મૂળભૂત રીતે પડશે જાઓ નિર્ણય ઉપયોગ 75 00:03:49,852 --> 00:03:51,560 કે ડેટાબેઝ શોધવા અને તે છે જ્યાં અમે પડશે 76 00:03:51,560 --> 00:03:55,080 બધી ફાઈલો અથવા બધા લોડ ફાઈલો વિશે મેટાડેટા. 77 00:03:55,080 --> 00:03:56,464 >> તેથી અમે sharding ઘણો ઉપયોગ કરે છે. 78 00:03:56,464 --> 00:03:57,880 પરંતુ sharding હંમેશા પૂરતી નથી. 79 00:03:57,880 --> 00:04:00,380 તમે ખરેખર કેશ કરવા માટે જરૂર છે સામાન્ય અરજીઓની ઘણો, 80 00:04:00,380 --> 00:04:04,010 કારણ કે તે ડેટાબેઝ પ્રશ્નો ખર્ચાળ હોઇ શકે છે 81 00:04:04,010 --> 00:04:07,570 તેથી અમે આક્રમક કબજે કરી ખાતરી કરો કે સૌથી બનાવવા વ્યૂહરચનાઓ 82 00:04:07,570 --> 00:04:10,310 સામાન્ય માંગણીઓ છે ગણતરી માટે ખૂબ સરળ છે. 83 00:04:10,310 --> 00:04:14,630 અને મૂળભૂત છે કે ઘણો બનાવે છે ઝડપી અને તે ભૂતપૂર્વ પાયે કામ કરે છે. 84 00:04:14,630 --> 00:04:17,320 તેથી કે જે ખૂબ જ ભાવે છે ડ્રૉપબૉક્સ કેવી રીતે કામ કરે ઉચ્ચ સ્તર. 85 00:04:17,320 --> 00:04:19,149 >> ALEX Allain: હું એલેક્સ Allain છું. 86 00:04:19,149 --> 00:04:20,857 >> THOMAS CARRIERO: અને હું થોમસ Carriero છું. 87 00:04:20,857 --> 00:04:22,579 ALEX Allain: અને આ CS50 છે. 88 00:04:22,579 --> 00:04:23,936