Python dan Netflix: Apa Yang Berlaku Semasa Anda Menstrim Filem?



Ketahui apa itu Netflix dan bagaimana gergasi penstriman ini menggunakan Python dalam pelbagai domainnya seperti Operasi, Pembelajaran mesin, Keselamatan Maklumat, dll.

Destinasi sehenti untuk setiap penggemar filem, tentu saja, adalah Netflix. Tetapi bagaimana jika anda menonton filem kegemaran anda dan terus-menerus menjadi penyangga? Anda hanya akan mematikan aplikasi dan memilih pilihan lain. Tetapi, bagaimana ia menguruskan lalu lintas berjuta-juta pengguna dengan pantas? Terima kasih kepada . Dalam artikel ini, mari kita teliti bagaimana Netflix menggunakan Python.

Mari kita mulakan dengan melihat tema yang mengisi artikel ini dengan cepat:





Jadi mari kita mulakan. :)

Pengenalan kepada Netflix

Logo Netflix-Bagaimana Netflix menggunakan Python-EdurekaNetflix adalah syarikat Amerika yang memberikan perkhidmatan Video on Demand (VOD). Beribu pejabat di Los Gatos, California, Netflix mempunyai sekitar 148 juta pelanggan di seluruh dunia dan jumlahnya, bagaimanapun, terus bertambah setiap hari. Dalam tempoh kira-kira dua dekad, Netflix telah muncul sebagai 'Raja klan' untuk Siri dan Filem Tv terbesar di seluruh dunia. Menjadi jenama Amerika yang paling pesat berkembang dan memperoleh pendapatan $ 20.5B pada tahun 2019, sudah cukup untuk menjadi ‘eye-catcher’, sehingga menarik semua ke dalam bidang teknologinya.



Berdasarkan bidang minat yang sama, Netflix telah mendedahkan bagaimana ia menggunakan bahasa yang paling popular, Python , untuk infrastrukturnya.

Jadi sekarang mari kita lihat bagaimana sebenarnya Netflix menggunakan Python?



Bagaimana Netflix menggunakan Python?

'Kami menggunakan Python melalui kitaran hidup kandungan penuh, dari menentukan kandungan mana yang akan dibiayai sehinggalah mengendalikan CDN yang menayangkan video terakhir hingga 148 juta ahli' - Jurutera di Netflix

Berkisar from Pentadbiran domain untuk Kebolehpercayaan dan Sains Data ke dll, Netflix menggunakan Python untuk hampir setiap bahagian perniagaan mereka.

Sekarang mari kita lihat bagaimana digunakan dalam pelbagai domain di Netflix:

Buka Sambungan:

CDN (Rangkaian Penghantaran Kandungan) yang digunakan oleh Netflix adalah, Open Connect. Buka sambung pada dasarnya muncul dalam gambar apabila anda mengklik butang 'main'. Semua kandungan yang dihantar kepada pengguna akhir dijaga oleh CDN ini.

Sambungan terbuka memerlukan pelbagai sistem perisian lain untuk merancang, membina dan mengoperasikannya yang seterusnya ditulis dalam Python. Bukan hanya ini, peranti rangkaian yang mendasari CDN ini adalah aplikasi Python kerana Python terkenal dalam menyelesaikan masalah rangkaian.

Pasukan Kejuruteraan Permintaan:

Pasukan Kejuruteraan Permintaan bertanggungjawab menangani Fail Fail, Pentadbiran Lalu Lintas, Pengurusan Operasi Kapasiti awan Netflix (menjaga had sehingga kandungan dapat diservis), dan Kecekapan Fleet. Unsur-unsur Python yang digunakan oleh pasukan ini adalah:

NumPy dan SciPy:

dan SciPy adalah perpustakaan yang digunakan untuk pengkomputeran saintifik. Netflix menggunakan perpustakaan Python ini untuk melakukan analisis berangka sehingga membolehkan pengurusan Failover Wilayah.

Boto3:

Boto3 adalah Kit Pembangunan Perisian (SDK) dari untuk Python. Ini membantu pembangun Python mengintegrasikan Python ke dalam AWS sehingga memungkinkan pengembangan infrastruktur.

RQ (Antrian Redis):

Ini adalah pustaka Python yang membantu menjejaki tugas yang ada dalam barisan dan membolehkan pelaksanaannya memungkinkan pengurusan beban kerja tidak segerak.

Kelalang:

Akhirnya, Netflix menggunakan API Flask (Python Web Development library) untuk menyatukan semua segmen sebelumnya.

Netflix menggunakan yang merupakan aplikasi web sumber terbuka, digunakan untuk pengembangan Python bersama mengasingkan (sambungan untuk Jupyter) dalam skala besar. Jupyter terkenal untuk analisis data. Ini berfungsi dengan sangat baik dalam analisis data dan visualisasi operasi yang seterusnya membantu dalam mengesan kemerosotan kapasiti.

Infrastruktur Pembelajaran Mesin:

bermula dari membuat algoritma Pemperibadian hingga mengetahui kes penggunaan. Algoritma pemperibadian membantu melatih model Pembelajaran Mesin mengikut standard Netflix. Ini memberikan cadangan yang diperibadikan, garis besar setiap hari, generasi label, dll.

Perpustakaan yang diperlukan untuk belajar Rangkaian Neural Dalam adalah TensorFlow , Keras , dan Pytorch sedangkan XGBoost dan LightGBM untuk Pokok Keputusan Gradient Boosted.Mereka juga telah mengembangkan beberapa perpustakaan peringkat tinggi yang membantu menggabungkan dengan bidang kerja seperti log fakta, pengekstrakan ciri, penerbitan, dan lain-lain. Selain semua ini, Netflix juga menggunakan MetaFlow untuk membuat projek pembelajaran mesin.

'Metaflow mendorong had Python: Kami memanfaatkan kod Python yang diselaraskan dan dioptimumkan dengan baik untuk mengambil data pada 10Gbps, menangani ratusan juta titik data dalam memori, dan mengatur perhitungan lebih dari puluhan ribu teras CPU' - Netflix

Data besar:

The pasukan bertanggungjawab untuk melaksanakan saluran paip ETL (ekstrak, transformasi, beban) dan Adhoc. Sebahagian besar orkestrasi ini ditulis dalam Python. Pasukan ini menggunakan penjadual yang berjalan di Jupyter Notebook dengan kilang kertas untuk menghasilkan jenis pekerjaan dengan templat, misalnya, , Segera, dll.

Di samping itu, pasukan ini juga telah mencipta platform berdasarkan acara yang dibina sepenuhnya di Python. Mereka telah membuat sejumlah acara dan menggabungkannya menjadi satu acara yang membolehkan Netflix menyaring, bertindak balas dan merutekan acara. Pygenie juga merupakan bahagian dari infrastruktur ini yang berinteraksi dengan Genie (perkhidmatan pelaksanaan pekerjaan yang ditampilkan).

Eksperimen Ilmiah:

Ini adalah platform yang dibuat oleh pasukan eksperimen saintifik untuk membenarkan Ujian A / B bersama dengan beberapa eksperimen lain. Di sini, saintis dan jurutera dapat mengemukakan inovasi baru dalam data, statistik, dan visualisasi.

The Python yang dilaksanakan di sini adalah Repo Sukatan yang berdasarkan PyPika dan membenarkan penulisan pertanyaan parameter yang boleh digunakan semula. Untuk sektor perangkaan, PyArrow dan RPy2 digunakan untuk mengira statistik dalam Python atau R. Plotly menolong dalam visualisasi.

Pengekodan Video / Kejuruteraan Awan Media:

Pasukan ini bertanggungjawab untuk pengekodan dan pengekodan semula tugas untuk katalog Netflix. Python digunakan lebih kurang untuk 50 projek seperti VMAF (Video Pelbagai Kaedah Penilaian Gabungan) dan MezzFS (Sistem Fail Mezzanine), Penyelesaian Penglihatan Komputer (berurusan dengan imejan) menggunakan Pemanah , dan lain-lain.

Animasi Netflix dan NVFX:

Python menjadi asas untuk semua Animasi dan Kesan Visual (VFX) di Netflix. Semua kesatuan Maya dan Nuke dilakukan di Python.

IS (Keselamatan Maklumat):

Netflix menggunakan sistem IS berkuasa Python untuk pemulihan automatik, automasi keselamatan, klasifikasi risiko, dan lain-lain. Projek Python sumber terbuka yang paling aktif bagi pasukan ini ialah Monyet Keselamatan . Netflix juga menggunakan MEMBERKATI (Perkhidmatan SSH Lambda Ephemeral Bastion) untuk melindungi SSH Sumber (Secure Shell). RepoKid digunakan untuk memberi SELALU kebenaran dan sijil TLS diperuntukkan melalui Lemur. Kedua-dua tugas ini bergantung terutamanya pada Python.

Pemantauan dan Pemulihan Auto:

Pasukan ini dikenali sebagai pasukan Insight Engineering. Mereka membina dan melaksanakan alatuntuk pandangan operasi, diagnostik, pemulihan automatik, dan perubahan. Untuk sebahagian besar perkhidmatannya, pasukan ini menggunakan Python, misalnya, perpustakaan pelanggan Spectator Python. Perpustakaan ini digunakan untuk merakam siri masa dimensi. Bersama dengan perpustakaan ini, produk seperti Winston dan Bolt juga dibina di atas kerangka kerja Python yang , Gunicorn, dan Flask-RestPlus.

Menyimpulkan semuanya, seseorang boleh dengan mudah mendakwa Python sebagai pendorong kepada Netflix. Dengan ini, kita telah sampai ke akhir blog ini mengenai 'Bagaimana Netflix menggunakan Python?'. Saya harap anda jelas semua yang telah dibincangkan.

contoh kaedah panggilan java

Untuk mendapatkan pengetahuan mendalam tentang Python bersama dengan pelbagai aplikasinya, anda boleh mendaftar secara langsung dengan sokongan 24/7 dan akses seumur hidup.

Ada soalan untuk kami? Sila sebutkan di bahagian komen dari blog 'Bagaimana Python menggunakan Netflix' dan kami akan menghubungi anda secepat mungkin.