توماس CARRIERO: أنا توماس Carriero. أنا مهندس البرمجيات في قطاف. ALEX ALLAIN: أنا اليكس ألين. أنا مهندس هنا في قطاف. توماس CARRIERO: نعم، كنت في الواقع أول رئيس TF لCS50 عندما تولى ديفيد مالين خلال الطبقة. كنت قد بالفعل تم تدريس CS50 لفصلين دراسيين مع مايك سميث، الذي كان أستاذ السابقة هناك. ALEX ALLAIN: لذلك أنا في الواقع لم اتخاذ CS50، لكنني لم TF ذلك مرتين. مرة واحدة باعتباره TF العادية، ثم سنتي كبار كنت في الواقع رئيس فريق العمل لل CS50، والتي كان الكثير من المرح. توماس CARRIERO: إذن عندما وصلت داود لي حول إعداد المنسدل في الأجهزة CS50، وكنت متحمسا حقا، ل لدينا في الواقع عميل لينكس، لذلك معظم مستخدمينا استخدام إما النوافذ أو عملاء ماكنتوش، ولكن لينكس، ماكنتوش، ويندوز عملاء كلها في الواقع مشابهة جدا. ذلك ما فعلناه هو أننا مثبتة مسبقا العميل دروببوإكس لينكس في CS50 الأجهزة، ويتم تشغيله تماما مثل كل من مستخدمي لينكس الأخرى. ALEX ALLAIN: إذن الطريقة التي يعمل قطاف هو يعمل كعميل على العديد من مختلف أنظمة التشغيل والأجهزة. عميل سطح المكتب دروببوإكس هو واحدة من أكثر معروفة جيدا، واحدة من أكثر إثارة للاهتمام. توماس CARRIERO: حتى دروببوإكس في الأساس يأخذ كل الملفات التي وضعت في مجلد وقطع تلك الملفات إلى قطع أربعة ميغا بايت. ولذا فإننا سوف نلقي 100 ميغا بايت ملف PDF وسنقوم قطعة عليه في 25 أجزاء أربعة ميغا بايت. ثم يتم تشفير تلك القطع و ثم نرسل لهم خوادم كتلة لدينا. ALEX ALLAIN: الملقمات هي كتلة تخزين للكتل أنفسهم، وهكذا يتم تخزين كل كتلة في خادم كتلة مع البيانات وشو 356 تجزئة تلك الكتلة. وهذا هو التشفير الأساسية جدا بدائية أن يلخص، في بعض المعنى، البيانات بطريقة فريدة جدا هذا فريدة من نوعها لتلك البيانات. هل يمكن تحميل الملف بأكمله في كل مرة، ولكن اتضح اذا كنت تفعل أن الملفات الكبيرة تأخذ حقا وقتا طويلا حقا لتحميل، وإذا لديك فشل، وكنت من الحظ وكان لديك لإعادة تشغيله. ما نقوم به هو ثم نقول خادم آخر في نظامنا، وما نسميه البيانات الوصفية الخادم، أن يا هذا هو ملف، وانها تتألف من قائمة الكتل التالية. ونحن نفوت التجزئة لتحديد تلك الكتل بدلا من إعادة تحميل- كتلة بأكملها. وmetaserver ثم يتحقق خوادم كتلة، يجعل من كتل هناك. إذا كانت، والكمال. كل شيء جيد. توماس CARRIERO: عندما كنا تريد أساسا تحميل ملف من الإنترنت، دعونا ويقول، نحن سوف نقول للmetaserver مشاركة أولا، مهلا هل يمكن أن تخبرني حول أين يقع هذا الملف؟ وmetaserver سيقول، يا هذا الملف في الواقع 25 ميغا بايت أربعة أجزاء، وهنا هم. ثم سنذهب الخادم كتلة و في الواقع تحميل كل من هذه القطع. ثم سنقوم إعادة بناء الملف من هناك، ثم سنبدأ التحميل. نعم، لذلك المنسدل من الصفقات مع نطاق الأساس بواسطة جدا، sharding عدوانية جدا. ALEX ALLAIN: Sharding هو عندما كنت اتخاذ كافة المستخدمين في بدء الخاص بك أو شركتك وربما لأنهم اعتادت ان تكون في قاعدة بيانات واحدة، والذي يعمل كبيرة حتى تقوم ضرب عدد معين من المستخدمين. وحقا ما تريد القيام به هو العثور على بعض الطريق لتقسيم تلك عبر جهازي قواعد البيانات، أو ربما أكثر من اثنين. من الناحية المثالية، يكفي أنك تستطيع يكون لكل مستخدم في العالم. وحتى عندما كنت شارد، ما عليك فعله هو لك العثور على بعض طريقة لاتخاذ قرار أي قاعدة بيانات للذهاب لذلك لا يتطلب ضرب الدليل المركزي. أو ربما انها سريعة جدا، رخيصة نظرة المتابعة الدليل المركزي. توماس CARRIERO: لدينا أبدا كل شيء المخزنة في قاعدة بيانات واحدة، لأن هذا هو تقريبا لن نطاق واسع. لذا بدلا من ذلك، ما سنفعله هو اتخاذ جميع هذه المعلومات، على كافة الملفات التي يتم تخزينها على الفوقية، شارد عبر مئات أو آلاف من قواعد البيانات المنطقية. وهذا يعني أن عندما يكون لدينا طلب للحصول على معلومات المستخدم، سنقوم أقول أولا، مهلا أي قاعدة بيانات والمعلومات هذا المستخدم المخزنة في؟ ثم سنقوم الأساس استخدام هذا القرار للذهاب تجد أن قاعدة البيانات وذلك حيث سنقوم تحميل كافة الملفات أو كل البيانات الوصفية حول الملفات. لذلك نحن نستخدم الكثير من sharding. ولكن sharding لا يكفي دائما. كنت بحاجة فعلا إلى ذاكرة التخزين المؤقت الكثير من الطلبات المشتركة، لأنه حتى تلك قاعدة بيانات يمكن أن تكون مكلفة الاستفسارات لذلك نحن أيضا القيام اسر العدوانية استراتيجيات للتأكد من أن معظم طلبات شيوعا هي من السهل جدا لحساب. والأساس الذي يجعل الكثير أسرع ويجعل من العمل على نطاق والسابقين. ذلك أن في جدا رفيع المستوى كيف يعمل المنسدل. ALEX ALLAIN: أنا اليكس ألين. توماس CARRIERO: و أنا توماس Carriero. ALEX ALLAIN: وهذا هو CS50.