Python i Netflix: què passa quan reprodueixes una pel·lícula en directe?

Conegueu què és Netflix i com aquest gegant de streaming utilitza Python en els seus diversos dominis, com ara Operacions, Aprenentatge automàtic, Seguretat de la informació, etc.

La destinació única per a tots els aficionats al cinema és, per descomptat, Netflix. Però, i si veieu la vostra pel·lícula preferida i de tant en tant es manté en memòria intermèdia? Només haureu d'apagar l'aplicació i escollir una altra opció. Però, com gestiona el trànsit de milions d’usuaris ràpidament? Gràcies a . En aquest article, expliquem com Netflix utilitza Python.



Comencem donant una ullada ràpida als temes que omplen aquest article:



Comencem doncs. :)

com establir classpath a Java a Windows 10

Introducció a Netflix

Logotip de Netflix: com Netflix fa servir Python-EdurekaNetflix és una empresa nord-americana que presta serveis de vídeo sota demanda (VOD). Amb seu a Los Gatos, Califòrnia, Netflix té uns 148 milions de subscriptors a tot el món i, però, el nombre continua creixent cada dia. En un període d'aproximadament dues dècades, Netflix s'ha convertit en el 'rei del clan' de les sèries i pel·lícules de televisió més grans del món. Ser la marca nord-americana de més ràpid creixement i tenir uns ingressos de 20,5 milions de dòlars el 2019, és suficient perquè sigui un “atractiu”, per la qual cosa és interessant en tots els seus àmbits tecnològics.



Basat en la mateixa àrea d’interès, Netflix ha revelat com fa ús del llenguatge més tendent, Python , per la seva infraestructura.

Ara, anem a veure com Netflix utilitza Python?



Com Netflix utilitza Python?

'Utilitzem Python durant tot el cicle de vida del contingut, des de decidir quin contingut voleu finançar fins a operar el CDN que serveix el vídeo final fins a 148 milions de membres' - Enginyers de Netflix

Des de fdominis administratius a Fiabilitat i Ciència de les dades a etc, Netflix utilitza Python per a gairebé tots els límits del seu negoci.

Ara analitzem més a fons com s'utilitza en diversos dominis de Netflix:

Obriu Connect:

El CDN (Content Delivery Network) que fa servir Netflix és Open Connect. Obrir connect bàsicament apareix quan feu clic al botó 'reproduir'. Aquesta CDN atén tot el contingut lliurat a l'usuari final.

La connexió oberta requereix altres sistemes de programari per dissenyar-lo, construir-lo i operar-lo, que al seu torn estan escrits en Python. No només això, els dispositius de xarxa subjacents a aquesta CDN són aplicacions Python, ja que Python és important per resoldre problemes de xarxa.

Equip d'enginyeria de demanda:

L’equip de Demand Engineering s’encarrega de gestionar les falles regionals del núvol de Netflix, l’administració del trànsit, la gestió d’operacions de capacitat (vetllar pel límit fins al qual es pot fer servir el contingut) i l’eficiència de la flota. Els elements de Python utilitzats per aquest equip són:

NumPy i SciPy:

i SciPy són les biblioteques utilitzades per a la informàtica científica. Netflix utilitza aquestes biblioteques Python per realitzar anàlisis numèriques i permetre així la gestió de les falles regionals.

Boto3:

Boto3 és el kit de desenvolupament de programari (SDK) de per a Python. Això ajuda els desenvolupadors de Python a integrar Python a AWS, permetent així el desenvolupament de la infraestructura.

RQ (Redis Queue):

Es tracta d’una biblioteca Python que ajuda a fer un seguiment de les tasques presents a la cua i permet la seva execució, permetent així la gestió de càrregues de treball asíncrones.

Flascó:

Finalment, Netflix utilitza les API de Flask (Python Web Development Library) per unir tots els segments anteriors.

Netflix en fa ús que és una aplicació web de codi obert, que s’utilitza per al desenvolupament de Python juntament amb nteract (extensió per Jupyter) a gran escala. Se sap que Jupyter és popular per a l'anàlisi de dades. Serveix molt bé en l'anàlisi i visualització de dades operatives que al seu torn ajuden a detectar regressions de capacitat.

Infraestructura d'aprenentatge automàtic:

abasta des de la creació d'algorismes de personalització fins a esbrinar els casos d'ús. Els algoritmes de personalització ajuden a entrenar els models d’aprenentatge automàtic segons els estàndards de Netflix. Proporciona recomanacions personalitzades, esquemes en el dia a dia, etiquetes de generacions, etc.

Les biblioteques necessàries per aprendre Xarxes neuronals profundes són TensorFlow , Difícil , i Pytorch mentre que XGBoost i LightGBM per a arbres de decisió impulsats per gradient.També han desenvolupat algunes biblioteques de nivell superior que ajuden a combinar amb àrees de treball com el registre de fets, l'extracció de funcions, la publicació, etc. A part de tot això, Netflix també utilitza MetaFlow per crear projectes d’aprenentatge automàtic.

tutorial informàtica per a principiants pdf

'Metaflow supera els límits de Python: aprofitem el codi Python ben paral·lelitzat i optimitzat per obtenir dades a 10 Gbps, gestionar centenars de milions de punts de dades a la memòria i orquestrar el càlcul en desenes de milers de nuclis de CPU' - Netflix

Dades massives:

El L'equip és responsable d'executar les canonades ETL (extracció, transformació, càrrega) i Adhoc. Una part important d'aquesta orquestració està escrita en Python. Aquest equip utilitza un planificador que s’executa en quaderns Jupyter amb molí de paper per produir tipus de treballs amb plantilles, per exemple, , Aviat, etc.

A més, l'equip també ha creat una plataforma basada en esdeveniments que es construeix completament a Python. Han creat diversos esdeveniments i els han combinat en un de sol, cosa que permet a Netflix filtrar, reaccionar i encaminar esdeveniments. Pygenie també és una part d’aquesta infraestructura que té interfície amb Genie (servei d’execució de treballs destacat).

Experimentació científica:

Aquesta és una plataforma creada per l'equip d'experimentació científica per permetre-la Proves A / B juntament amb algunes altres experimentacions. Aquí, científics i enginyers poden presentar noves innovacions en dades, estadístiques i visualització.

El Python que s’implementa aquí és Repositori de mètriques que es basa en PyPika i permet escriure consultes parametritzades reutilitzables. Per al sector estadístic, PyArrow i RPy2 s’utilitzen per calcular estadístiques en Python o R. Complotament ajuda en visualitzacions.

Codificació de vídeo / Enginyeria de núvol multimèdia:

Aquest equip s’encarrega de codificar i tornar a codificar tasques per al catàleg de Netflix. Python s'utilitza aproximadament per a 50 projectes com ara VMAF (Video Multi-Method Assessment Fusion) i MezzFS (Sistema de fitxers altell), Solucions de Visió per Computador (tracta d'imatges) utilitzant Archer , Etc.

Animació Netflix i NVFX:

Python és la base de totes les animacions i efectes visuals (VFX) de Netflix. Tots els sindicats Maya i Nuke es fan a Python.

IS (seguretat de la informació):

Netflix utilitza sistemes IS alimentats per Python per a la remediació automàtica, automatització de seguretat, classificació de riscos, etc. El projecte Python de codi obert més actiu d’aquest equip és Mico de seguretat . Netflix també utilitza BENAU (Servei SSH efímer Lambda de Bastion) protegir SSH (Secure Shell) recursos. RepoKid s’utilitza per concedir JA els permisos i els certificats TLS s’assignen a través de Lemur. Ambdues tasques es basen principalment en Python.

Supervisió i remei automàtic:

Aquest equip es coneix com l’equip d’enginyeria Insight. Construeixen i executen einesper a informació operativa, diagnòstic, auto-reparació i alteració. Per a la majoria dels seus serveis, aquest equip fa ús de Python, per exemple, la biblioteca client Spectator Python. Aquesta biblioteca s'utilitza per enregistrar sèries temporals dimensionals. Juntament amb aquestes biblioteques, productes com Winston i Bolt també es construeixen en frameworks Python que sí , Gunicorn i Flask-RestPlus.

En resum, es pot afirmar fàcilment que Python és la força motriu de Netflix. Amb això, hem arribat al final d'aquest bloc sobre 'Com Netflix utilitza Python?'. Espero que tingueu clar tot el que s’ha comentat.

diferència entre c c ++ i java

Per obtenir coneixements en profunditat sobre Python juntament amb les seves diverses aplicacions, podeu inscriure-us a la publicació amb assistència les 24 hores del dia, els 7 dies de la setmana i accés permanent.

Tens alguna pregunta? Si us plau, mencioneu-lo a la secció de comentaris d’aquest bloc “Com Python utilitza Netflix” i us respondrem el més aviat possible.