Netflix: ماذا يحدث عند النقر فوق تشغيل؟


هذه المقالة هي فصل من كتابي الجديد ، شرح الغيمة لعمر عشر سنوات . تم كتابة الخيار الأول خصيصًا لأولئك الذين يحتاجون إلى مقدمة للسحب. ثم أجريت بعض التحديثات وأضفت فصلين - "Netflix: ماذا يحدث عند الضغط على" بدء "؟" و "ما هي الحوسبة السحابية؟" - والتي هي بالفعل أبعد قليلا من معرفة المبتدئ. أعتقد أنهم سيكونون قادرين على الاهتمام حتى بالأشخاص ذوي الخبرة.

لذلك إذا كنت بحاجة إلى مقدمة جيدة للسحب أو إذا كنت تعرف شخصًا يحتاجها ، فالرجاء إلقاء نظرة. أعتقد أنك ستحبه. أنا فخور بما فعلته.

لقد كتبت هذا الفصل على أساس اثني عشر مصادر ، تتناقض أحيانًا مع بعضها البعض. تتغير الحقائق الرئيسية بمرور الوقت وتعتمد على من يحكي القصة وأي جمهور. حاولت أن أصنع قصة متماسكة كلما أمكن ذلك. يرجى ملاحظة أن هذا ليس دليلًا فنيًا - فهذه مقالة تحتوي على صور كبيرة. على سبيل المثال ، لم يسبق لي أن ذكرت الخدمات الصغيرة .

يبدو Netflix بسيطًا للغاية. انقر فوق "تشغيل" وسيظهر الفيديو بطريقة سحرية. بسيطة ، أليس كذلك؟ نعم ، ليس حقًا.



بعد مناقشاتنا في فصل "ما هي الحوسبة السحابية؟" قد تتوقع أن يعمل Netflix مع الفيديو باستخدام AWS. انقر فوق "تشغيل" في تطبيق Netflix ، وسيتم بث الفيديو المخزن على S3 مباشرة إلى جهازك عبر الإنترنت عبر الإنترنت.

نهج معقول تمامًا - لخدمة أصغر بكثير.

لكن Netflix مخطئ تمامًا. كل شيء أكثر تعقيدًا وإثارة مما تتخيل.

لفهم السبب ، دعنا نلقي نظرة على إحصائيات Netflix لعام 2017:

  • أكثر من 110 مليون مشترك.
  • العمل في أكثر من 200 دولة.
  • الإيرادات 3 مليارات دولار لكل ربع سنة.
  • يضيف 5 ملايين مشترك في كل ربع سنة.
  • تشغيل أكثر من مليار ساعة من الفيديو أسبوعيًا. وبالمقارنة ، يشغل YouTube مليار ساعة من الفيديو يوميًا ، بينما يشغل Facebook 110 مليون ساعة من الفيديو يوميًا.
  • في يوم واحد من عام 2017 ، تم تشغيل 250 مليون ساعة من الفيديو.
  • مسؤول عن 37٪ من ذروة حركة الإنترنت الأمريكية.
  • تخطط لإنفاق 7 مليارات دولار على محتوى جديد في 2018.

ماذا تعلمنا؟


Netflix ضخم. إنه عالمي ، ولديه العديد من المشتركين ، وهو يلعب كمية كبيرة من مقاطع الفيديو ولديه الكثير من المال.

حقيقة أخرى ذات صلة هي أن Netflix يعمل عن طريق الاشتراك. يدفع المشتركون Netflix شهريًا ، ويمكنهم إلغاء الاشتراك في أي وقت. عند الضغط على "تشغيل" للاسترخاء تحت Netflix ، سيكون من الأفضل إذا كانت هذه الخدمة تعمل بشكل طبيعي. المشتركين غير الراضين الغاء الاشتراك.

نلقي نظرة أعمق


يُعد Netflix مثالاً رائعًا على الأفكار التي ناقشناها ، لذلك سيكون لهذا الفصل تفاصيل أكثر بكثير من وصف الخدمات السحابية الأخرى. أحد أسباب استكشاف Netflix بعمق هو أنها تقدم معلومات أكثر بكثير من الشركات الأخرى. تعتبر اتصالات Netflix أحد الأصول الثقافية الرئيسية ، وتحتفظ الشركة بمعاييرها بنجاح أكبر.

أود حتى أن أشكر Netflix على انفتاحهم على فنهم المعماري. على مر السنين ، قدمت الشركة مئات المحاضرات وكتبت مئات المقالات حول تفاصيل أنماط عملها الداخلية. هذا يساعد على تحسين الصناعة بأكملها.

سبب آخر لمثل هذه التفاصيل التفصيلية هو أن خدمة Netflix رائعة بكل بساطة. لقد استخدمه معظمنا - ومن لا يرغب في النظر وراء الكواليس ومعرفة كيفية عمله؟

يعمل Netflix بسحابة - AWS و Open Connect


كيف ترضي الشركة العملاء؟ بمساعدة الغيوم. في الواقع ، سحبتان مختلفتان - AWS و Open Connect. يجب أن يعمل كلاهما معًا دون مشاكل من أجل إنتاج ساعات طويلة من محتوى الفيديو الذي يرضي المستخدمين.

ثلاثة أجزاء من Netflix: العميل ، الواجهة الخلفية ، شبكة توصيل المحتوى


يمكنك تقسيم Netflix عقليًا إلى ثلاثة أجزاء: العميل ، والخلفية ، وشبكة توصيل المحتوى (CDN).

العميل - واجهة مستخدم يتم تشغيلها على أي جهاز يستخدم لعرض قوائم الفيديو وتشغيلها. يمكن أن يكون تطبيقًا للهاتف المحمول على هاتف ذكي أو موقع ويب على كمبيوتر مكتبي أو حتى تطبيق على تلفزيون ذكي. يتحكم Netflix في كل عميل على كل جهاز.

كل ما يحدث قبل النقر على زر التشغيل يحدث في الخلفية التي تعمل على AWS. وهذا يشمل أشياء مثل إعداد جميع مقاطع الفيديو الواردة الجديدة ومعالجة الطلبات من جميع التطبيقات ومواقع الويب والتلفزيونات والأجهزة الأخرى.

تتم معالجة كل ما يحدث بعد النقر فوق "تشغيل" على Open Connect. هذه هي شبكة توصيل المحتوى الخاصة بـ Netflix. يقوم بتخزين مقاطع الفيديو في أماكن مختلفة حول العالم. عند النقر فوق "تشغيل" ، يأتي دفق الفيديو من Open Connect إلى جهازك ، ويعرضه العميل. لا تقلق - سنتحدث عن CDN لاحقًا. من المثير للاهتمام ، أن عملية إطلاق الفيديو للشركة لا تسمى "انقر فوق" تشغيل "، ولكن" انقر فوق "بدء" على الاسم. "لكل صناعة لغة خاصة بها.

من خلال التحكم في جميع المجالات الثلاثة - العميل ، الواجهة الخلفية ، CDN - حقق Netflix التكامل الرأسي الكامل. تتحكم الشركة في تجربتك في مشاهدة مقاطع الفيديو من البداية إلى النهاية. لذلك ، يعمل فقط عند النقر فوق "تشغيل" أثناء وجودك في أي جزء من العالم. نضمن لك الحصول على المحتوى الذي تريده ، المحتوى الذي تريد مشاهدته ومتى تريده.

دعونا نرى كيف يتحول هذا بالضبط.

في عام 2008 ، بدأت Netflix في الانتقال إلى AWS


تعمل Netflix منذ عام 1998. في البداية ، تعاملت مع تأجير DVD عبر البريد. لكن الشركة رأت المستقبل في بث الفيديو حسب الطلب. في عام 2007 ، قدمت Netflix خدمة الفيديو عند الطلب ، والتي سمحت للمشتركين ببث العروض التلفزيونية والأفلام من خلال موقع الشركة على أجهزة الكمبيوتر الشخصية أو من خلال برامج خاصة على منصات متنوعة تدعمها ، بما في ذلك الهواتف الذكية والأجهزة اللوحية ، والمشغلات الرقمية ، والألعاب فك التشفير وأجهزة التلفزيون الذكية.

قد يبدو مستقبل بث الفيديو عند الطلب واضحًا. من حيث المبدأ ، كان عليه. أنا شخصياً عملت في شركتين ناشئتين أحاول إصدار مقاطع فيديو عند الطلب. فشلوا. وكانت نتفليكس تنتظر النجاح. عملت الشركة بشكل جيد بالتأكيد ، لكنها جاءت إلى السوق في وقت متأخر ، مما ساعدها. بحلول عام 2007 ، كانت الإنترنت سريعة ورخيصة بما يكفي لدعم تدفق خدمات الفيديو. هذا لم يحدث من قبل. أدى ظهور حركة مرور سريعة وغير مكلفة للغاية للجوّال وإدخال أجهزة محمولة قوية ، مثل الهواتف الذكية والأجهزة اللوحية ، إلى تسهيل مشاهدة مقاطع الفيديو في أي وقت وفي أي مكان وبأسعار أرخص. اللحظة المناسبة هي مفتاح النجاح.

بدأت Netflix بمراكز البيانات الخاصة بها


كانت EC2 قد بدأت للتو في عام 2007 ، في نفس الوقت تقريبًا الذي بدأ فيه Netflix. لذلك ، تعذر على Netflix بدء استخدام EC2. قامت الشركة ببناء مركزي بيانات قريبين. وقد واجهوا جميع المشاكل التي ناقشناها في الفصول السابقة.

بناء مراكز البيانات مكلف للغاية. يستغرق الأمر وقتًا لطلب المعدات وتركيبها وإطلاقها. بعد الإطلاق مباشرة ، نفدت الطاقة ، وكان يجب أن يبدأ كل شيء من جديد. أجبر الوقت الذي يقضيه على المعدات الشركة على اعتماد استراتيجية التوسع الرأسي.

كتب Netflix برامج كبيرة يتم تشغيلها على أجهزة كمبيوتر كبيرة. يسمى هذا النهج بناء متراصة. قام برنامج واحد بكل شيء. تكمن المشكلة في أنه إذا نمت بسرعة نمو Netflix ، فسيكون من الصعب جدًا إنشاء متراصة موثوقة. لم يكن موثوقًا به.

أجبر رفض الخدمة Netflix على الانتقال إلى AWS


في أغسطس 2008 ، لم تتمكن Netflix من إرسال أقراص DVD لمدة ثلاثة أيام متتالية بسبب فشل في قاعدة بياناتها. كان ذلك غير مقبول. كان من الضروري حل شيء ما. علمت تجربة بناء مراكز البيانات الشركة شيئًا مهمًا: لم تعمل بشكل جيد لبناء مراكز البيانات. كانت جيدة في توصيل الفيديو لعملائها. كانت بحاجة إلى التركيز على التحسينات في تسليم الفيديو ، بدلاً من التحسينات في بناء مراكز البيانات. لم يكن بناء مراكز البيانات ميزة تنافسية للشركة - كانت ميزتها هي توصيل الفيديو.

في ذلك الوقت ، قررت Netflix الانتقال إلى AWS. كانت AWS في بدايتها ، لذا كان قرارًا جريئًا. انتقلت الشركة إلى AWS لأنها كانت بحاجة إلى بنية تحتية أكثر موثوقية. أرادت Netflix إزالة جميع نقاط الضعف في النظام. قدمت AWS قواعد بيانات موثوقة للغاية ، وتخزين ، ومراكز بيانات زائدة عن الحاجة. احتاج Netflix إلى خدمات سحابية لعدم بناء وحدات متجانسة غير موثوقة. أرادت Netflix أن تصبح خدمة عالمية دون بناء مراكز بيانات لها. لم تكن هذه الفرص في مراكز البيانات القديمة ولا يمكن أن تكون كذلك.

اختارت Netflix AWS لأنها لا تريد الانخراط في عمل شاق غير متميز. العمل الجاد غير المتنوع هو ما يجب القيام به ، ولكن هذا لا يعطي أي ميزة للأعمال الرئيسية ، والتي تتمثل في توفير مشاهدة فيديو عالية الجودة. يقوم AWS بكل هذا العمل الشاق لـ Netflix. وهذا يعطي netflixers الفرصة للتركيز على تقديم خدمات الأعمال القيمة.

استغرق نقل شركة من مراكز بياناتها إلى AWS الشركة أكثر من ثماني سنوات. زاد Netflix عدد العملاء ثماني مرات خلال هذا الوقت. يعمل Netflix الآن على عدة مئات الآلاف من نسخ EC2.

موثوق أكثر AWS Netflix


لا يعني ذلك أن Netflix لم تواجه مشكلات AWS مطلقًا ، ولكن بشكل عام ، أصبحت خدماتها أكثر موثوقية من ذي قبل. لن ترى هذه الشكاوى بعد الآن:





أصبحت الشركة موثوقة للغاية حيث اتخذت خطوات استثنائية لذلك. تعمل في ثلاث مناطق AWS: شمال فيرجينيا ، بورتلاند ، أوريغون ، ودبلن ، أيرلندا. تعمل Netflix في كل منها في ثلاث مناطق وصول مختلفة.

ليس لدى الشركة خطط لزيادة عدد مناطق العمل. إن إضافة مناطق جديدة أمر صعب ومكلف للغاية. تعمل معظم الشركات في منطقة واحدة فقط ، ناهيك عن اثنتين أو ثلاث.

ميزة العمل في ثلاث مناطق هي أن إحداها قد تسقط ، والأخرى تقع في مكانها وتخدم العملاء من المنطقة المتضررة. تدعو نيتفليكس سقوط المنطقة إخلاء.

تأمل في مثال واحد. لنفترض أنك تشاهد حلقة جديدة من "House of Cards" في لندن ، إنجلترا. على الأرجح ، جهازك متصل بمنطقة دبلن ، حيث أنه الأقرب إليها. ماذا يحدث عندما تقع منطقة دبلن؟ هل ستتوقف Netflix عن العمل من أجلك؟ لا. بمجرد اكتشاف المشكلة ، سيعيدك Netflix إلى Virginia. سيتصل جهازك بمنطقة فيرجن بدلاً من دبلن. قد لا تلاحظ حتى الفشل.

كم مرة تفشل منطقة AWS؟ مرة في الشهر. حسنًا ، في الواقع ، المنطقة لا تفشل كل شهر. تقوم Netflix بإجراء اختبارات شهرية. كل شهر ، تقوم Netflix بإسقاط المنطقة بأكملها على وجه التحديد ، فقط للتأكد من أن نظامها يتعامل مع الإخفاقات الإقليمية. يمكنك إخلاء المنطقة في ست دقائق.

تصف Netflix هذا بأنه نموذج خدمة عالمي. يمكن تقديم كل عميل من أي منطقة. هذا مذهل. وهذا لا يحدث تلقائيًا. لا تمتلك AWS صلصة سحرية للتعامل مع فشل المناطق أو خدمة العملاء من مناطق مختلفة. قامت Netflix بنفس المهمة. الشركة رائدة في إنشاء أنظمة موثوقة باستخدام عدة مناطق. لا أعرف عن الشركات الأخرى التي ستتخذ مثل هذه الإجراءات لضمان موثوقية الخدمة.

ميزة أخرى للعمل من هذه المناطق الثلاث هي أن Netflix يمكنها تغطية العالم كله. أجرى Netflix فحوصات واكتشف أنه من خلال تشغيل التطبيق في أي مكان في العالم ، على أي حال ، ستتلقى خدمة سريعة من إحدى هذه المناطق.

يحفظ Netflix باستخدام AWS


قد يفاجئ هذا الكثيرين ، لكن AWS لـ Netflix أرخص. تكلفة السحابة من حيث مشاهدة الفيديو تأتي عدة مرات أقل من استخدام مراكز البيانات القديمة. لماذا؟ بسبب مرونة السحابة.

يمكن لـ Netflix إضافة خوادم حسب الحاجة وإعادتها عند عدم الحاجة إليها. بدلاً من مجموعة من أجهزة الكمبيوتر الإضافية التي لا تفعل شيئًا ، فقط في انتظار تحميل الذروة ، تستخدم الشركة بالضبط عدد أجهزة الكمبيوتر التي تحتاجها ، وعند الضرورة.

ماذا يحدث في AWS قبل النقر فوق تشغيل؟


تتم معالجة كل ما لا يرتبط بإيداع الفيديو على AWS. وهذا يشمل القدرة الحاسوبية القابلة للتوسعة ، التخزين القابل للتوسيع ، منطق الأعمال ، قواعد البيانات الموزعة القابلة للتوسيع ، معالجة البيانات الضخمة والتحليلات ، التوصيات ، تحويل الشفرة ومئات الوظائف الأخرى. لست بحاجة إلى فهمهم جميعًا ، ولكن نظرًا لأن هذا قد يبدو مثيرًا للاهتمام بالنسبة لك ، فسأشرحهم باختصار.

قوة الحوسبة القابلة للتطوير والتخزين


قوة الحوسبة القابلة للتطوير هي EC2 ، والتخزين هو S3. لا يوجد شيء جديد بالنسبة لنا هنا. جهازك عبارة عن هاتف iPhone أو تلفاز أو Xbox أو هاتف ذكي يعمل بنظام Android أو جهاز لوحي وما إلى ذلك. - يتواصل مع خدمة تعمل في EC2. يتلقى جهازك قائمة بالأفلام المحتملة لمشاهدتها من خلال الاتصال بجهاز كمبيوتر يعمل بنظام EC2. معلومات تفصيلية عن الفيديو الذي يستقبله جهازك هناك. يعمل كل شيء كما هو الحال في الخدمات السحابية الأخرى.

قواعد بيانات موزعة قابلة للتطوير


تستخدم Netflix DynamoDB و Cassandra كقواعد بيانات موزعة. يجب ألا تعني هذه الأسماء أي شيء بالنسبة لك - فهي مجرد قواعد بيانات عالية الجودة. يتم تخزين البيانات في قاعدة البيانات. معلومات عن ملفك الشخصي ، والحسابات ، وجميع الأفلام التي شاهدتها - كل هذا يتم تخزينه في قاعدة البيانات. لا تعمل قواعد البيانات الموزعة على جهاز كمبيوتر واحد كبير ، ولكن على العديد من أجهزة الكمبيوتر. يتم نسخ بياناتك إلى العديد من أجهزة الكمبيوتر ، حتى إذا فشل جهاز كمبيوتر أو جهازي تخزين بياناتك ، فإن بياناتك ستكون آمنة. في الواقع ، يتم نسخ جميع البيانات عبر المناطق الثلاث. ونتيجة لذلك ، في حالة فشل المنطقة ، ستكون بياناتك متاحة في منطقة أخرى سيتم التبديل إليها. ويعني التحجيم أن قاعدة البيانات ستكون قادرة على تخزين أكبر قدر من البيانات التي تضيفها إليها. هذه واحدة من المزايا الرئيسية لقواعد البيانات الموزعة. في حالة وصول المزيد من البيانات ، يمكن إضافة المزيد من أجهزة الكمبيوتر.

معالجة البيانات الضخمة والتحليلات


البيانات الضخمة هي مجرد الكثير من البيانات. يجمع Netflix الكثير من المعلومات. الشركة تعرف من شاهد ، ومتى وأين شاهدوها. تعرف الشركة مقاطع الفيديو التي شاهدها عملاؤها ، لكنها لم تطلبها. إنها تعرف عدد المرات التي تمت فيها مشاهدة كل مقطع فيديو - وأكثر من ذلك بكثير.

يسمى جمع جميع البيانات وتحويلها إلى تنسيق قياسي معالجة. واستخراج المعنى منها - التحليل. يتم تحليل البيانات للحصول على إجابات لأسئلة محددة.

يقوم Netflix بتخصيص الصور خصيصًا لك


في ما يلي مثال رائع على كيفية جذبك لـ Netflix لمشاهدة المزيد من الأفلام باستخدام إمكانيات تحليلات البيانات. عند تصفح القوائم ، واختيار ما تريد مشاهدته ، هل انتبهت إلى حقيقة أنه يتم إصدار صورة لكل فيلم؟ هذه هي صورة العنوان.

يجب أن تجذبك صورة العنوان وتجذب انتباهك وتجعلك تختار هذا الفيديو. الفكرة هي أنه كلما كانت الصورة أكثر إثارة للاهتمام ، زادت احتمالية مشاهدة الفيديو. وكلما زاد عدد مقاطع الفيديو التي تشاهدها ، قل احتمال إلغاء اشتراكك في Netflix.

فيما يلي مثال على صور العنوان المتنوعة لسلسلة Stranger Things:



قد تتفاجأ بأن كل صورة لكل فيديو يتم تحديدها خصيصًا لك. لا يرى الجميع نفس الصور.

سابقا ، رأى الجميع نفس صور العنوان. إليك كيف عملت. تم عرض صورة واحدة للعملاء بشكل عشوائي من مجموعة ، مثل تلك الموضحة في الرسم التوضيحي أعلاه. يحسب Netflix جميع مشاهدات الفيديو ، ويسجل الصورة التي تم عرضها للمستخدم عند تحديد مقطع فيديو. لنفترض ، على سبيل المثال مع المسلسل ، أنه عند عرض الصورة المركزية من الصورة المجمعة ، تمت مشاهدة الفيديو 1000 مرة. وعندما تظهر بقية الصور - مرة واحدة فقط.

نظرًا لأن صورة المجموعة كانت أفضل من غيرها لجذب المستخدمين للعرض ، كان على Netflix جعلها صورة عنوان المسلسل إلى الأبد. وهذا ما يسمى الاختيار المستند إلى البيانات. يعمل Netflix استنادًا إلى تحليل البيانات. يتم جمع البيانات - في هذه الحالة ، عدد المشاهدات المرتبطة بكل صورة - ويتم استخدامها لاتخاذ أفضل القرارات - في هذه الحالة ، لتحديد صورة العنوان.

ببراعة ، ولكن هل يمكن القيام بذلك بشكل أفضل؟ نعم ، باستخدام المزيد من البيانات. بالنسبة لهذا الموضوع ، يكمن المستقبل في حل المشكلات من خلال التعلم من البيانات. نحن أناس مختلفون. هل تعتقد أن نفس الصور يمكن أن تحفزنا؟ ربما لا. لدينا أذواق مختلفة وتفضيلات مختلفة. و Netflix يعرف ذلك - لذا يقوم الآن بتخصيص جميع الصور التي يعرضها لك. إنها تحاول اختيار صورة تبرز أهم جانب من جوانب الفيديو بالنسبة لك. كيف تفعل هذا؟

تذكر أن Netflix تسجل وتحسب كل ما تفعله على موقعها على الويب. إنها تعرف الأفلام التي تحبها ، والممثلين الذين تحبهم ، وما إلى ذلك. لنفترض أنه من بين توصياتك كان فيلم "Good Will Hunting". يجب أن تختار Netflix صورة رأس مناسبة. الهدف هو عرض صورة تخبرك أن هذا الفيلم قد يكون مفيدًا لك. ما الصورة التي تريد إظهارها؟

إذا كنت تحب الكوميديا ​​، فستعرض لك Netflix صورة مع Robin Williams. إذا كنت تفضل الميلودراما ، فستعرض لك Netflix صورة لـ Matt Damon و Minnie Driver على وشك التقبيل.



من خلال تقديم روبن ويليامز ، تخبرك الخدمة أن الفيلم من المحتمل أن يكون له روح الدعابة ، وبما أن Netflix تعرف أنك تحب الكوميديا ​​، فإن هذا الفيديو مناسب لك. Image يرسل مات دامون وميني درايفر رسالة مختلفة تمامًا. إذا كنت تحب الكوميديا ​​ورأيت هذه الصورة ، فستفقدها على الأرجح. لذلك ، من المهم جدًا اختيار الصورة الصحيحة. يرسل رسالة شخصية قوية تخبر عن موضوع الفيلم.

هنا مثال آخر - لب الخيال:



إذا شاهدت الكثير من الأفلام مع Uma Thurman ، فمن المحتمل أن ترى صورة العنوان مع Uma. إذا كنت قد شاهدت العديد من الأفلام مع Travolta ، فمن المحتمل أن ترى صورة العنوان مع John. انظر كيف يمكن أن يؤدي اختيار أفضل صورة شخصية ممكنة إلى زيادة احتمالية مشاهدة فيديو معين؟

تثير Netflix اهتمامك عند اختيار الصور ، لكن الخدمة لا تريد أن تكذب عليك. لا يريد أن يظهر لك بعض الصور الجذابة فقط لتجعلك تشاهد فيديو لا يعجبك. لا يوجد حافز. لا تتقاضى الخدمة مقابل عدد المشاهدات. تحاول الخدمة تقليل الندم وتريد منك أن تحب ما تشاهده ، لذلك تختار لك أفضل صورة عنوان ممكنة. وهذا مجرد مثال صغير لتحليل البيانات. تستخدم Netflix مثل هذه الاستراتيجيات في كل مكان.

التوصيات


يعرض لك Netflix عادةً 40-50 اختيارًا للفيديو ، لكن الخدمة تقدم الآلاف من مقاطع الفيديو. كيف يقرر Netflix ما يظهر؟ من خلال التعلم الآلي.

هذا جزء من معالجة البيانات الكبيرة والتحليلات التي تحدثنا عنها للتو. تفحص الخدمة البيانات وتتنبأ بما قد يعجبك. بشكل عام ، تم تحديد كل ما تراه على شاشة Netflix خصيصًا لاستخدام التعلم الآلي.

التحويل من ملف المصدر إلى التنسيق الذي تريده


وهكذا نصل إلى الطريقة التي يتعامل بها Netflix مع الفيديو. قبل أن تتمكن من بدء المشاهدة على جهازك المفضل ، يجب على Netflix تحويل الفيديو إلى التنسيق الأنسب لجهازك. تسمى هذه العملية تحويل الشفرة. يقوم بتحويل ملف فيديو من تنسيق إلى آخر ، بحيث يمكن مشاهدة الفيديو على منصات وأجهزة مختلفة. يقوم Netflix بترميز جميع مقاطع الفيديو الخاصة به على AWS على 300000 معالج في وقت واحد. هذا أكثر من أي حاسوب عملاق تقريبًا!

مصدر بيانات المصدر


من يقوم بتحميل مقاطع الفيديو على Netflix؟ الاستوديوهات وجمعيات الإنتاج. يطلق Netflix على هذه البيانات الأولية. يتم إرسال الفيديو الجديد إلى فريق المحتوى للمعالجة. يأتي بدقة عالية ، بحجم تيرابايت. لتخيل تيرابايت من المعلومات ، تخيل 60 عمودًا ورقيًا ، كل منها يساوي ارتفاع برج إيفل.

قبل أن تتمكن من مشاهدة الفيديو ، يعرضه Netflix لعملية قاسية متعددة الخطوات.



فحص الجودة


أولاً ، يقضي Netflix الكثير من الوقت في التحقق من جودة الفيديو. إنها تبحث عن القطع الأثرية الرقمية ، وتغيرات اللون ، والإطارات المسقطة التي قد تظهر بسبب محاولات تحويل الشفرة السابقة أو مشاكل نقل البيانات. إذا تم الكشف عن أي مشاكل ، يتم رفض الفيديو.

ناقل المعالجة


بعد التأكد من جودة الفيديو يتم إرسالها إلى خط أنابيب المعالجة. هذه سلسلة من الخطوات التي تمر بها البيانات قبل استخدامها - شيء من هذا القبيل مثل الحزام الناقل في المصنع. يتم استخدام أكثر من 70 برنامج معالجة مختلف لإنشاء كل فيديو.

معالجة ملف واحد من عدة تيرابايت أمر غير عملي ، لذا فإن الخطوة الأولى في خط الأنابيب ستكون تقسيم الفيديو إلى العديد من القطع الصغيرة. تمر القطع على طول الناقل بحيث يمكن ترميزها بالتوازي - أي يتم معالجتها في وقت واحد.

نظهر التوازي باستخدام مثال.



افترض أن لديك مئات الكلاب القذرة التي يجب غسلها. كيف سيكون من الأسرع القيام بذلك - إذا قام شخص ما بغسل كلب تلو الآخر ، أو إذا استأجرت مائة غسول للكلاب وغسلها جميعًا في نفس الوقت؟

من الواضح أن العملية ستكون أسرع إذا عملت مائة غسلة في نفس الوقت. هذا هو التوازي. هذا هو السبب في أن Netflix يستخدم العديد من خوادم EC2. يحتاجون إلى العديد من الخوادم لمعالجة ملفات الفيديو العملاقة هذه بالتوازي. وتعمل - تدعي الشركة أنه يمكن ترميز الملف المصدر وإرساله إلى شبكة CDN في 30 دقيقة فقط.

عندما يتم ترميز القطع ، يتم فحصها للتأكد من عدم وجود مشاكل جديدة. ثم يتم جمعها مرة أخرى في ملف واحد والتحقق منها مرة أخرى.

والنتيجة هي مجموعة من الملفات


تنشئ عملية الترميز العديد من الملفات. لماذا؟هدف Netflix النهائي هو دعم كل جهاز متصل بالإنترنت. بدأت الشركة العمل في عام 2007 على منصة Microsoft Windows. مع مرور الوقت ، تمت إضافة العديد من الأجهزة الأخرى - Roku و LG و Samsung Blu-ray و Apple Mac و Xbox 360 و LG DTV و Sony PS3 و Nintendo Wii و Apple iPad و Apple iPhone و Apple TV و Android و Kindle Fire و Comcast X1.

في المجمل ، يدعم Netflix 2200 جهاز مختلف. لكل منهم هناك تنسيق فيديو يبدو الأفضل عليه. إذا شاهدت Netflix على iPhone ، فسترى الفيديو الذي يبدو أفضل على iPhone. تدعو الشركة جميع صيغ الفيديو المختلفة إلى ملف ترميز. يقوم Netflix أيضًا بإنشاء ملفات محسنة لسرعات الشبكة المختلفة. إذا شاهدت ملفًا على شبكة عالية السرعة ، فسترى فيديو بجودة أفضل مما لو شاهدته على شبكة أبطأ.

هناك أيضًا ملفات لتنسيقات صوتية مختلفة. يتم ترميز الصوت بمستويات جودة مختلفة ولغات مختلفة. بالإضافة إلى ذلك ، هناك ملفات مع ترجمة. يمكن أن يحتوي الفيديو على ترجمات متعددة بلغات مختلفة. هناك العديد من خيارات العرض المختلفة لكل فيديو. يعتمد ما تراه على جهازك وجودة الاتصال وتعريفة الخدمة واختيار اللغة.

كم عدد الملفات الموجودة؟


للسلسلة ، يخزن The Crown Netflix حوالي 1200 ملف. يحتوي الموسم الثاني من Stranger Things على المزيد من الملفات. تم تصويره بدقة 8K ولديه تسعة حلقات. تستهلك ملفات المصدر الكثير من تيرابايت من البيانات. استغرق الأمر 190،000 ساعة معالج لترميز موسم واحد فقط. والنتيجة هي 9،570 ملفات فيديو وصوت ونص مختلفة.

الآن دعونا نرى كيف يلعب Netflix كل هذه الملفات.

ثلاث استراتيجيات مختلفة لبث الفيديو


لدى Netflix ثلاث استراتيجيات مختلفة لتشغيل دفق الفيديو - CDN الصغيرة الخاصة بها ، و CDN التابعة لجهة خارجية ، و Open Connect. لنبدأ بتعريف CDN. CDN هي شبكة توزيع محتوى. بالنسبة إلى Netflix ، يعد المحتوى بالطبع ملفات الفيديو التي ناقشناها في القسم السابق. تعني المشاركة نسخ الملفات من موقع مركزي عبر الشبكة وتخزينها على أجهزة الكمبيوتر الموزعة حول العالم. في Netflix ، يكون موقع التخزين المركزي للملفات هو S3.

لماذا إنشاء CDN؟


الفكرة بسيطة: تحتاج إلى وضع الفيديو بالقرب من المستخدمين وتوزيع أجهزة الكمبيوتر في جميع أنحاء العالم. عندما يرغب المستخدم في مشاهدة مقطع فيديو ، ابحث عن الكمبيوتر الأقرب إليه وقم بتنظيم دفق من هناك إلى جهازه. أعظم فوائد CDN هي السرعة والموثوقية.

تخيل أنك تشاهد مقطع فيديو في لندن ، ويتم نقله إليك من بورتلاند ، أوريغون. يحتاج دفق الفيديو إلى المرور عبر العديد من الشبكات ، بما في ذلك الكبل البحري ، بحيث يمكن أن يكون الاتصال بطيئًا وغير موثوق به. من خلال تقريب الفيديو إلى الأشخاص الذين يشاهدونه ، يمكنك جعل إثارة مشاهدة الفيديو أسرع وأكثر موثوقية.

يُطلق على كل موقع للكمبيوتر يخزن الفيديو نقطة التواجد (PoP). كل PoP هو موقع مادي مع الوصول إلى الإنترنت. هناك خوادم وموجهات ومعدات اتصالات أخرى. سنتحدث عن PoP لاحقًا.

كان CDN الأول صغيرًا جدًا


في عام 2007 ، عندما قدمت Netflix لأول مرة خدمة البث ، كان لديها 36 مليون مشترك في 50 دولة ، والذين شاهدوا أكثر من مليار ساعة من الفيديو كل شهر ، والذين تلقوا عدة تيرابايت من البيانات في الثانية. لدعم الخدمة ، قامت Netflix ببناء CDN بسيط خاص بها في خمسة مواقع مختلفة في الولايات المتحدة. كان كتالوج فيديو الشركة صغيرًا بما فيه الكفاية ، وتم تخزين جميع الملفات في جميع الأماكن.

كان CDN الثاني كبيرًا جدًا


في عام 2009 ، قررت Netflix استخدام شبكة CDN خارجية. في ذلك الوقت ، بدأت تكلفة CDN في الانخفاض. كان استخدام شبكات الجهات الخارجية خطوة ذكية لـ Netflix. لماذا تضيع الوقت والجهد في بناء شبكاتك إذا كان بإمكانك الوصول فورًا إلى أي مكان على كوكب الأرض باستخدام شبكات CDN الحالية؟

عملت Netflix على تقديم خدمات CDN مع شركات مثل Akamai و Limelight و Level 3. لا يوجد أي خطأ في استخدام CDNs التابعة لجهات خارجية. في الواقع ، تقوم جميع الشركات بذلك تقريبًا. على سبيل المثال ، استخدم اتحاد كرة القدم الأميركي خدمات Akamai لعرض مسابقات كرة القدم الأمريكية مباشرة. بدون إنشاء شبكات CDN الخاصة بها ، أتاحت Netflix الوقت للعمل في مشاريع أخرى ذات أولوية.

أمضت الشركة الكثير من الوقت والجهد في تطوير عملاء أكثر ذكاءً. أنشأت Netflix خوارزميات تتكيف مع ظروف الشبكة المتغيرة. حتى في حالة حدوث أخطاء ، أو زيادة التحميل على الشبكة أو الخادم ، تريد الشركة أن يحصل المستخدمون على أفضل صورة ممكنة. إحدى التقنيات التي طورتها الشركة - التحول إلى مصدر فيديو آخر - على سبيل المثال ، إلى CDN آخر أو إلى خادم آخر - لتحقيق أفضل نتيجة.

في الوقت نفسه ، تبذل Netflix الكثير من الجهد لدعم جميع خدمات AWS التي ذكرناها سابقًا. تستدعي Netflix خدمات AWS على مستوى مرجعي. مستوى التحكم هو مصطلح شبكي لجزء من النظام يتحكم في كل شيء آخر. في جسمك ، دماغك هو مستوى التحكم - إنه يتحكم في كل شيء آخر.

ثم قررت Netflix أنه يمكنهم تحسين الخدمة من خلال تطوير CDN الخاص بهم.

كان Open Connect مثاليًا


في عام 2011 ، أدركت Netflix أنهم بحاجة إلى حل CDN مخصص لزيادة حجم الشبكة إلى أقصى حد. يعد توزيع الفيديو من الكفاءات الأساسية للشركة ، ويمكن أن يكون ميزة تنافسية ضخمة. لذلك ، بدأت Netflix في تطوير Open Connect ، CDN الخاص بها. بدأ في عام 2012. يتميز Open Connect بالعديد من المزايا:

  • انها ليست باهظة الثمن. تكون شبكات CDN الخاصة بالجهات الخارجية أكثر تكلفة. القيام بذلك بنفسك يعني توفير الكثير من المال.
  • جودة أفضل. سبب Netflix أنه من خلال التحكم في المسار الكامل للفيديو - تحويل الشفرة ، CDN ، العملاء ، الأجهزة - يمكن أن يوفر جودة خدمة ممتازة.
  • . . , .

يجب أن تدعم شبكات CDN الخاصة بالجهات الخارجية المستخدمين الذين يحتاجون إلى الوصول إلى أي محتوى من أي مكان في العالم. كانت مهمة Netflix أكثر بساطة.

يعرف Netflix مستخدميه بالتأكيد عند تسجيلهم. هي تعرف مقاطع الفيديو التي تريد نقلها. فقط لأنك تحتاج فقط إلى نقل تدفقات الفيديو الكبيرة ، يمكنك اتخاذ العديد من الإجراءات لتحسين الشبكات التي لا تستطيع شبكات CDN الأخرى القيام بها بذكاء. تعرف Netflix أيضًا الكثير عن عملائها. تعرف الشركة مقاطع الفيديو التي تعجبهم ومتى يرغبون في مشاهدتها.

بفضل هذه المعرفة ، قامت Netflix ببناء شبكة CDN عالية السرعة. دعونا نلقي نظرة فاحصة على كيفية عمل Open Connect.

افتح توصيل الأجهزة


هل تتذكر كيف ناقشنا أن أجهزة كمبيوتر CDN موزعة حول العالم؟ قامت Netflix بتطوير نظام كمبيوتر تخزين الفيديو الخاص بها. يطلق عليه Netflix اسم Open Connect devices (Open Connect Devices، OCA). فيما يلي شكل إحدى عمليات تثبيت OCA المبكرة:



في الصورة - عدة OCA في وقت واحد. يتم تجميع OCA في مجموعات من عدة خوادم. كل OCA هو خادم سريع محسن لإخراج ملف كبير ، مع العديد من محركات الأقراص الثابتة أو محركات الأقراص المحمولة لتخزين الفيديو. إليك ما يبدو عليه أحد خوادم OCA:



لأغراض مختلفة ، هناك عدة أنواع مختلفة من OCA. هناك OCA كبير قادر على تخزين دليل الفيديو الكامل للشركة. هناك OSAs صغيرة يمكنها فقط تخزين جزء من دليل الفيديو. يتم تعبئة OCAs الصغيرة بملفات الفيديو يوميًا خلال ساعات الذروة أثناء التخزين المؤقت الاستباقي.

من حيث المعدات ، ليس لدى OSA أي شيء مميز. وهي تعتمد على مكونات الكمبيوتر التقليدية ، ويقوم العديد من الموردين بتجميعها في عبوات مختلفة. يمكنك شراء نفس أجهزة الكمبيوتر إذا أردت. يرجى ملاحظة أن جميع أجهزة كمبيوتر Netflix حمراء. تطلبها الشركة على وجه التحديد بحيث تتطابق مع لون الشعار.

من حيث البرامج ، تستخدم OSAs نظام التشغيل FreeBSD و nginx كخادم ويب. نعم ، كل OSA هو خادم ويب. تستخدم تدفقات الفيديو nginx. إذا لم تخبرك هذه الأسماء بأي شيء - فلا تثبط عزيمتك ، فأنا أدرجها فقط لإكمال الصورة.

يعتمد عدد OSAs المحلي على الموثوقية التي ترغب Netflix في تحقيقها في مكان معين ، وكمية الزيارات التي تخدمها والنسبة المئوية للزيارات التي يمكن لهذا المركز إرسالها كتدفق. عندما تنقر على "تشغيل" ، تشاهد دفق فيديو قادم من OSA محددة - مثل الموضحة أعلاه ، الموجودة بالقرب منك.

للحصول على أفضل تجربة مشاهدة ، تود Netflix تخزين الفيديو في منزلك مؤقتًا. لكن في الوقت الحالي ، هذا غير عملي. الخيار التالي الأكثر ملاءمة هو وضع mini-Netflix بالقرب من منزلك. كيف يمكن القيام بذلك؟

أين يستضيف Netflix OCA؟


توزع Netflix كميات هائلة من الفيديو من آلاف الخوادم الموجودة في أكثر من 1000 مركز بيانات حول العالم. ألق نظرة على خريطة موقع خادم الفيديو:



تقدم خدمات الفيديو الأخرى ، مثل YouTube و Amazon ، الفيديو عبر شبكاتها الخاصة. قامت هذه الشركات ببناء شبكاتها العالمية الخاصة لتقديم الفيديو للمستخدمين. إنها معقدة للغاية ومكلفة. يتخذ Netflix نهجًا مختلفًا تمامًا لإنشاء شبكة CDN.

لا يعمل Netflix على شبكته ، ولا يعمل من مراكز البيانات الخاصة به. بدلاً من ذلك ، يوافق مزودو خدمة الإنترنت (ISPs) على استضافة OCA. تقدم Netflix لموفري الخدمة مجانًا لدمج خوادمهم في شبكتهم ، بالإضافة إلى أنها تضع OSA بالقرب من نقاط تبادل الحركة (موقع تبادل الإنترنت ، IXP).

تسمح هذه الإستراتيجية لـ Netflix بعدم بناء مراكز بيانات خاصة بها ، ولكن الشركة تحصل على جميع مزايا التواجد في مثل هذا المركز - فهي تنتمي فقط إلى شخص آخر. عبقري! لنقم بتقسيم الفقرتين الأخيرتين إلى خطوات أبسط.

استخدام ISP لإنشاء CDN


ISP هو مزود خدمة الإنترنت الخاص بك. هذا هو الشخص الذي يوفر لك الإنترنت كخدمة. يمكن أن يكون Verizon أو Comcast أو Beeline أو واحدًا من آلاف الآخرين. الشيء الرئيسي هو أن مزودي خدمة الإنترنت موجودون في جميع أنحاء العالم وهم قريبون من العملاء. من خلال استضافة OCA في مراكز بيانات ISP ، يتم أيضًا توزيع Netflix حول العالم وقريبًا من عملائها.

استخدام IXP لإنشاء CDN


نقطة تبادل حركة المرور هي مركز بيانات حيث يتبادل ISP و CDN حركة المرور بين الشبكات. إنه مثل الذهاب إلى حفلة لتبادل هدايا عيد الميلاد مع الأصدقاء. المشاركة أسهل إذا اجتمع الجميع في مكان واحد.

IXP المنتشرة حول العالم:



إليك ما يبدو عليه IXP في لندن:



إذا اقتربت من كابلات الألياف الضوئية الصفراء ، فإليك ما ستراه (بناءً على نقطة تبادل AMS-IX في أمستردام):



يربط كل كبل شبكة بأخرى. هذه هي الطريقة التي تتبادل فيها الشبكات المختلفة حركة المرور مع بعضها البعض. يشبه IXP تبادل الطرق السريعة ، فقط مع الأسلاك:



بالنسبة إلى Netflix ، هذه ميزة أخرى. توجد IXPs في جميع أنحاء العالم. بوضع OSA في IXP ، قد لا يكون لدى الشركة مراكز بيانات خاصة بها.

تم تخزين الفيديو مؤقتًا بشكل استباقي على OSA


لدى Netflix مجموعة من مقاطع الفيديو الموجودة في S3. توجد أجهزة إرسال الفيديو حول العالم. شيء واحد فقط مفقود: الفيديو نفسه! تستخدم Netflix عملية تسمى التخزين المؤقت الاستباقي لنسخ الفيديو بكفاءة إلى OCA.



ما هي ذاكرة التخزين المؤقت مخبأ - مخبأ]؟ غالبًا ما يقع هذا المكان في الأرض حيث يتم تخزين الخراطيش السرية والطعام والكنوز سرًا. هل تعلم كيف يخفي السناجب المكسرات في الشتاء؟ كل مكان يختبئ فيه السنجاب وهو عبارة عن مخبأ. في الشتاء ، يمكن لأي سنجاب العثور على مخبأ من المكسرات ومضغه. يرسل المستكشفون في القطب الشمالي فرقًا صغيرة إلى الأمام تخبئ الطعام والوقود والإمدادات الأخرى على طول المسار الذي يتبعونه. يتوقف فريق أكبر يعمل خلف كل مخبأ ويستعيد. يعمل كل من البروتينات والباحثين في القطب الشمالي بشكل استباقي ؛ يفعلون شيئًا مقدمًا للاستعداد للمستقبل.

كل OCA عبارة عن ذاكرة تخزين مؤقت للفيديو ما تريد مشاهدته على الأرجح. يقوم Netflix بتخزين الفيديو مؤقتًا ، متنبئًا بما تريد مشاهدته. في جميع أنحاء العالم ، تعرف Netflix بكل يقين أن عملائها يحبون مشاهدتها. هل تذكر أننا قلنا أن Netflix هي شركة تعتمد على البيانات؟ تستخدم بيانات الشعبية للتنبؤ بمقاطع الفيديو التي من المرجح أن يرغب عملاؤها في مشاهدتها غدًا في أي مكان. يُقصد بالمكان هنا مجموعة OSA الموجودة في ISP أو IXP. تنسخ الشركة مقاطع الفيديو المتوقعة إلى واحد أو أكثر من OCA في كل مكان. وهذا ما يسمى بالتخطيط الأولي. يتم استضافة الفيديو على OSA قبل أن يطلبه أي شخص. نتيجة لذلك ، يتلقى العملاء خدمة ممتازة. الفيديو الذي يريدون مشاهدته قريب منهم بالفعل ، في شكل جاهز للعرض.



يعمل Netflix مع ما يسمى ب ذاكرة التخزين المؤقت المرتبطة. تتم استضافة OCAs الصغيرة من قبل ISP أو IXP. إنها صغيرة جدًا بحيث لا تتناسب مع كتالوج الفيديو بالكامل. في مكان آخر ، هناك OSAs التي تحتوي على دليل فيديو Netflix بالكامل تقريبًا. وفي مكان آخر هناك أماكن حيث OSA التي تحتوي على كتالوج Netflix بالكامل. يحصلون على فيديو من S3.

يستيقظ OSA كل ليلة ويستقصي خدمة AWS عن نوع مقاطع الفيديو التي يحتاجها. ترسل له الخدمة قائمة بمقاطع الفيديو التي كان يجب أن يكون لديها ، بناءً على التوقعات. كل OCA مسؤول عن وجود جميع مقاطع الفيديو في هذه القائمة. إذا كان أحد OCA في مكان واحد يحتوي على أحد مقاطع الفيديو اللازمة ، فسيعمل OCA المؤقت على نسخ هذا الفيديو منه. خلاف ذلك ، سيتم العثور على الفيديو والتقاطه من بعض OSA ، وتقع ليست بعيدة جدا.

نظرًا لتوقع Netflix أنه سيصبح شائعًا غدًا ، فهناك دائمًا عائق قبل يوم واحد من الحاجة إلى الفيديو على OSA. هذا يعني أنه يمكن نسخ الفيديو في وقت هادئ ، خارج ذروة الحمل ، مما يقلل بشكل كبير من استخدام عرض النطاق الترددي لموفر خدمة الإنترنت.

لا يوجد لدى Open Connect أي أخطاء في التخزين المؤقت. تخطئ عندما يتم طلب فيديو معين من OSA ، ويجيب أنه ليس لديه. يحدث خطأ على شبكات CDN الأخرى لأنها لا تستطيع تحمل نسخ كل المحتوى في كل مكان. نظرًا لأن Netflix تعرف جميع مقاطع الفيديو التي تحتاج إلى التخزين المؤقت ، فإنها تعرف بالضبط أين ومقاطع الفيديو الموجودة في أي نقطة. إذا لم يكن لدى OSA صغير الفيديو المطلوب ، فسيتم ضمانه بواسطة أحد OSA الرئيسية.

ولماذا لا تقوم Netflix بنسخ جميع مقاطع الفيديو الخاصة بها إلى جميع OCA في العالم؟ دليل الفيديو الخاص بها كبير جدًا لذلك. في عام 2013 ، تجاوز حجم الكتالوج 3 بيتابايت ؛ ما هو عليه اليوم ، لا أعرف ، يمكنني فقط أن أفترض أكثر من ذلك بكثير. هذا هو السبب في أن الشركة قد طورت طريقة لاختيار ملفات الفيديو التي يجب تخزينها على كل OSA ، باستخدام البيانات التي تتوقع أن المشتركين سيرغبون في مشاهدتها.

خذ مثال. "House of Cards" هو عرض شائع للغاية. إلى أي OSA يجب نسخه؟ على الأرجح ، في كل مكان ، حيث يرغب المشتركون من جميع أنحاء العالم في مشاهدته. ولكن ماذا لو لم يكن الفيديو مشهورًا مثل House of Cards؟ تقرر Netflix الأماكن التي يجب تخزين النسخ فيها من أجل تلبية احتياجات جميع العملاء المباشرين بشكل أفضل.

في مكان واحد ، يتم نسخ مقاطع الفيديو الأكثر شيوعًا إلى العديد من OSA. كلما كان الفيديو أكثر شيوعًا ، ستخزن المزيد من الخوادم نسخة منه. لماذا؟ إذا كان للفيديو المشهور نسخة واحدة فقط ، فإن دفق الفيديو لجميع العملاء سيحمل الخادم.

لا يُعتبر الفيديو معدًا للتوزيع إذا تم نسخه إلى OSA واحد فقط. تريد Netflix أن تتمكن من تشغيل نفس المحتوى في نفس الوقت حول العالم. فقط عندما يكون هناك عدد كاف من OSA مع عدد كاف من نسخ الفيديو من أجل توفيره بالجودة الصحيحة ، يعتبر الفيديو جاهزًا للعرض.

على سبيل المثال ، كان الموسم الثاني من عرض Daredevil في عام 2016 هو المرة الأولى التي أصدرت فيها Netflix جميع حلقات المسلسل على جميع الأجهزة في جميع البلدان في نفس الوقت.

موضع OSA: لماذا يحتاج مقدمو الخدمة إلى ذلك؟


لماذا يوافق مقدمو الخدمة على استضافة مجموعات OSA؟ للوهلة الأولى ، يعد هذا أمرًا سخيًا للغاية - ولكن سيكون من المثير للاهتمام أن تكتشف أن الربح الشخصي متضمن بالفعل هنا. لفهم هذا ، نحتاج إلى التحدث عن كيفية عمل الشبكات. ناقشنا في هذا الكتاب أن الوصول إلى الخدمات السحابية يتم عبر الإنترنت. في حالة Netflix ، الأمر ليس كذلك - عند عرض الفيديو من خلال تطبيق Netflix ، فإنه يتصل بـ AWS عبر الإنترنت. [ليس من الواضح ما هو الفرق الذي كان يفكر فيه المؤلف // تقريبًا. perev.]

الإنترنت هو الترابط بين الشبكات. لديك موفر يوفر الوصول إلى الإنترنت. أحصل على خدمة الإنترنت من Comcast. وهذا يعني أن منزلي متصل بشبكة Comcast عبر الألياف الضوئية. شبكة كومكاست ملك لهم - هذه ليست الإنترنت ، الإنترنت شيء آخر.

لنفترض أنني أريد إجراء بحث على Google ، وأكتب طلبًا في المتصفح واضغط على Enter. يذهب طلبي أولاً عبر شبكة Comcast. Google غير موجود على شبكة Comcast. في مرحلة ما ، يجب أن يذهب طلبي إلى شبكة Google. لهذا ، هناك الإنترنت. الإنترنت يربط شبكة Comcast بشبكة Google. توجد بروتوكولات توجيه تعمل بطريقة تحكم حركة مرور الشارع وحركة مرور الشبكة المباشرة. عندما يتم إرسال طلبي إلى الإنترنت ، فإنه يقع خارج شبكة Comcast وخارج شبكة Google. وهي تقع في العمود الفقري للإنترنت . الإنترنت متصل من العديد من الشبكات الخاصة التي تقرر التفاعل مع بعضها البعض. IXP هي إحدى طرق تواصل الشبكات مع بعضها البعض.

توجد في الولايات المتحدة الأمريكية خريطة لشبكات الألياف البعيدة:



قامت Netflix بما يلي مع Open Connect: استضافت مجموعات OSA داخل شبكات ISP. هذا يعني أنه إذا شاهدت فيديو Netflix ، فأنا أتحدث إلى OSA الموجود على شبكة Comcast. كل حركة الفيديو الخاصة بي تذهب على شبكتهم ، ولا تذهب عبر الإنترنت.

إن مفتاح تغيير حجم الفيديو هو أن تكون قريبًا من المستخدم قدر الإمكان. عند القيام بذلك ، فأنت لا تستخدم العمود الفقري للإنترنت. يتم تلبية الطلبات في الجزء المحلي من الشبكة. لماذا هذا جيد؟ تذكر ، قلنا أن Netflix تستهلك بالفعل أكثر من 37٪ من حركة الإنترنت في الولايات المتحدة. إذا لم يتعاون ISP مع الشركة ، فسيستخدم المزيد من الإنترنت. لا يمكن للإنترنت التعامل مع كل حركة المرور. سيحتاج مقدمو الخدمة إلى إضافة المزيد من السعة ، وهو أمر مكلف للغاية.

يتم الآن نقل ما يقرب من 100٪ من محتوى Netflix داخل شبكات المزود. هذا يقلل من تكلفة صيانة الشبكة ، لأنه لا يسد الإنترنت. في الوقت نفسه ، يتلقى المشتركون في Netflix فيديو عالي الجودة ، ويحسن أداء الشبكة للجميع. الجميع يفوز.

افتح Connect موثوق ومرن


لقد ناقشنا بالفعل كيف تزيد Netflix من موثوقية النظام من خلال العمل في ثلاث مناطق AWS. تحقق بنية Open Connect نفس الأهداف. قد لا يكون هذا واضحًا ، لكن OCA مستقلان عن بعضهما البعض. تعمل OCAs كأرخبيل تسليم فيديو مستقل. لا يعاني المشتركون الذين يتلقون فيديو من إحدى OSA من فشل OSA أخرى.

ماذا يحدث عندما تفشل OSA؟ يتحول برنامج العميل الذي تستخدمه على الفور إلى OSA آخر ويستأنف العرض. ماذا يحدث إذا كان الكثير من الناس يستخدمون OCA في مكان واحد؟ يجد برنامج العميل OSA أقل تحميلا. ماذا يحدث إذا كانت الشبكة المستخدمة لإرسال الفيديو محملة بشكل زائد؟ نفس الشيء - يجد البرنامج OSA آخر على الشبكة يعمل بشكل أفضل. Open Connect هو نظام موثوق به للغاية ومتسامح مع الأخطاء.

يتحكم Netflix في العميل


يعالج Netflix حالات الفشل بذكاء لأنه يتحكم في العميل على جميع الأجهزة. تقوم الشركة نفسها بتطوير تطبيقات لنظامي التشغيل Android و iOS ، لذا يمكننا أن نتوقع أنها تتحكم فيها. ولكن حتى على الأنظمة الأساسية مثل Smart TV ، حيث لم تقم Netflix بإنشاء عملاء ، فإنها لا تزال تتحكم فيها لأنها تتحكم في حزمة تطوير التطبيقات (SDK).

حزم SDK هي مجموعة من برامج التطوير التي تتيح لك إنشاء تطبيقات. يقوم كل تطبيق من تطبيقات Netflix بإجراء طلبات AWS وتشغيل الفيديو باستخدام SDK. من خلال التحكم في SDK ، يمكن لـ Netflix التكيف مع الشبكات البطيئة و OSA الفاشلة وغيرها من المشاكل المحتملة.

وأخيرًا: هذا ما يحدث عند النقر فوق "تشغيل"

لقد قطعنا شوطًا طويلاً نحو ذلك وتعلمنا الكثير. إليك ما نعرفه في الوقت الحالي:

  • يمكن تقسيم Netflix إلى ثلاثة أجزاء: الواجهة الخلفية والعميل و CDN.
  • تتم معالجة جميع طلبات العملاء بواسطة AWS.
  • يتم نقل جميع مقاطع الفيديو من أقرب جهاز Open Connect (OCA) إلى شبكة CDN.
  • يعمل Netflix مع ثلاث مناطق AWS ويمكنه عادةً التعامل مع الفشل في أي منطقة حتى لا يلاحظ أحد ذلك.
  • يتم تحويل المحتوى الجديد في الشركة إلى العديد من التنسيقات المختلفة ، بحيث يمكنك اختيار الخيار الأنسب بناءً على نوع الجهاز وجودة الشبكة والموقع الجغرافي ومعدل المشتركين.
  • كل يوم ، في Open Connect ، توزع الشركة مقاطع فيديو حول العالم دون توقع ما يريد المشتركون مشاهدته في أجزاء مختلفة من العالم.

فيما يلي الصورة التي يصفها Netflix باستخدام عملية التشغيل:



لننهيها:

  • حددت مقطع فيديو لمشاهدته باستخدام عميل يعمل على بعض الأجهزة. يرسل العميل طلب تشغيل ، يشير إلى الفيديو الذي تحتاجه ، إلى خدمة تطبيقات التشغيل التي تدعمها AWS.
  • لم نناقش هذا من قبل ، ولكن معظم ما يحدث عند النقر فوق "تشغيل" يتعلق بالترخيص. ليس كل جزء من العالم لديه ترخيص لعرض كل فيديو. يجب أن تحدد Netflix ما إذا كان لديك ترخيص لمشاهدة فيديو معين. لن نناقش هذا الموضوع الممل ، ولكن ضع في اعتبارك أن هذا يحدث طوال الوقت. أحد الأسباب التي دفعت Netflix إلى إنشاء المحتوى الخاص بها كان محاولة لتجنب مشاكل الترخيص [ولا تزال هناك مواقف سخيفة عندما لا تستطيع الشركة عرض سلسلة إنتاج Netflix لأنها باعت الحقوق لها إلى مزود محتوى محلي - ناهيك عن جميع الأراضي المحظورة لعمل الشركات الأمريكية // تقريبا. ترجم.]. تريد Netflix إصدار عروض لجميع الأشخاص حول العالم في نفس الوقت. إنشاء المحتوى الخاص بك هو أسهل طريقة لتجنب مشاكل الترخيص.
  • نظرًا لجميع المعلومات ذات الصلة ، تُرجع خدمة تطبيقات التشغيل عنوان URL إلى عدة خوادم OSA. هذه هي نفس عناوين URL التي يمكنك رؤيتها في متصفحك. تستخدم Netflix عنوان IP الخاص بك والمعلومات من مزود الخدمة الخاص بك لتحديد مجموعات OSA الأفضل بالنسبة لك.
  • يقوم العميل بتحليل الموقف واختيار OCA. يتحقق من جودة الاتصال مع كل منهم. سيتم توصيله بأقوى OSA وأكثرها موثوقية. يجري العميل هذه الفحوصات باستمرار أثناء تشغيل الفيديو.
  • يحاول العميل اختيار أفضل طريقة لتلقي المحتوى من OSA.
  • يتصل العميل بـ OSA ويبدأ في إخراج دفق الفيديو على جهازك.
  • عند مشاهدة مقطع فيديو ، هل لاحظت أن جودة الصورة تتغير؟ في بعض الأحيان يكون هناك بكسل ، وبعد مرور بعض الوقت تعود الصورة إلى الجودة العالية مرة أخرى؟ وذلك لأن العميل يتكيف مع جودة الشبكة. إذا انخفضت الجودة ، يقلل العميل من جودة الفيديو. إذا انخفضت الجودة كثيرًا ، فسيتم تحويل العميل إلى OSA آخر.

هذا ما يحدث عند النقر فوق "تشغيل" على Netflix. من كان يظن أن مثل هذا الشيء البسيط ، مثل مشاهدة مقطع فيديو ، يمكن أن يكون معقدًا للغاية؟

Source: https://habr.com/ru/post/ar409583/


All Articles