Python y Netflix: ¿Qué sucede cuando transmite una película?



Sepa qué es Netflix y cómo este gigante de la transmisión usa Python en sus diversos dominios, como Operaciones, Aprendizaje automático, Seguridad de la información, etc.

El destino único para todos los cinéfilos es, por supuesto, Netflix. Pero, ¿y si estuvieras viendo tu película favorita y se almacena en búfer de vez en cuando? Simplemente cerraría la aplicación y elegiría otra opción. Pero, ¿cómo gestiona el tráfico de millones de usuarios con rapidez? Gracias a . En este artículo, exploremos cómo Netflix usa Python.

Comencemos por echar un vistazo rápido a los temas que completan este artículo:





Entonces empecemos. :)

Introducción a Netflix

Logotipo de Netflix-Cómo Netflix ues Python-EdurekaNetflix es una empresa estadounidense que presta servicios de video a pedido (VOD). Netflix, con sede en Los Gatos, California, tiene alrededor de 148 millones de suscriptores en todo el mundo y, sin embargo, el número sigue creciendo cada día. En un período de aproximadamente dos décadas, Netflix se ha convertido en el 'Rey del clan' de las series de televisión y películas más importantes del mundo. Ser la marca de más rápido crecimiento en Estados Unidos y tener unos ingresos de 20.500 millones de dólares en 2019 es suficiente para que sea un 'punto de atracción' y, por lo tanto, interese a todos en sus esferas tecnológicas.



Basado en la misma área de interés, Netflix ha revelado cómo hace uso del lenguaje más tendencia, Pitón , por su infraestructura.

Entonces, pasemos ahora a ver cómo Netflix usa Python en realidad.



¿Cómo usa Netflix Python?

'Usamos Python durante todo el ciclo de vida del contenido, desde decidir qué contenido financiar hasta operar el CDN que ofrece el video final a 148 millones de miembros' - Ingenieros de Netflix

Rango from Dominios administrativos a la confiabilidad y Ciencia de los datos a etc, Netflix usa Python para casi todos los aspectos de su negocio.

Ahora, analicemos en profundidad cómo se utiliza en varios dominios en Netflix:

Conectar abierto:

La CDN (Content Delivery Network) que Netflix utiliza es Open Connect. La conexión abierta básicamente entra en escena cuando haces clic en el botón 'reproducir'. Todo el contenido entregado al usuario final es cuidado por este CDN.

Open connect requiere varios otros sistemas de software para diseñarlo, construirlo y operarlo, que a su vez están escritos en Python. No solo esto, los dispositivos de red subyacentes a esta CDN son aplicaciones de Python, ya que Python es prominente en la resolución de problemas de red.

Equipo de ingeniería de demanda:

El equipo de ingeniería de demanda es responsable de manejar las fallas regionales de la nube de Netflix, la administración del tráfico, la administración de operaciones de capacidad (cuidando el límite hasta el cual el contenido se puede hacer útil) y la eficiencia de la flota. Los elementos de Python utilizados por este equipo son:

NumPy y SciPy:

y Ciencia son las bibliotecas utilizadas para la informática científica. Netflix utiliza estas bibliotecas de Python para realizar análisis numéricos, lo que permite la gestión de conmutaciones por error regionales.

Boto3:

Boto3 es el kit de desarrollo de software (SDK) de para Python. Esto ayuda a los desarrolladores de Python a integrar Python en AWS, lo que permite el desarrollo en la infraestructura.

RQ (cola de Redis):

Esta es una biblioteca de Python que ayuda a realizar un seguimiento de las tareas que están presentes en la cola y permite su ejecución, lo que permite la gestión de cargas de trabajo asincrónicas.

Matraz:

Finalmente, Netflix utiliza las API de Flask (biblioteca de desarrollo web de Python) para unir todos los segmentos anteriores.

Netflix hace uso de que es una aplicación web de código abierto, utilizada para el desarrollo de Python junto con nteract (extensión para Jupyter) a gran escala. Se sabe que Jupyter es popular para el análisis de datos. Sirve muy bien en el análisis y visualización de datos operativos, lo que a su vez ayuda a detectar regresiones de capacidad.

Infraestructura de aprendizaje automático:

abarca desde la creación de algoritmos de personalización hasta la determinación de los casos de uso. Los algoritmos de personalización ayudan a entrenar los modelos de Machine Learning según los estándares de Netflix. Proporciona recomendaciones personalizadas, esquemas del día a día, generación de etiquetas, etc.

Las bibliotecas necesarias para aprender Redes neuronales profundas son TensorFlow , Difícil y Pytorch mientras XGBoost y LightGBM para árboles de decisión potenciados por degradados.También han desarrollado bastantes bibliotecas de nivel superior que ayudan a combinar con las áreas de trabajo como el registro de hechos, extracción de características, publicación, etc. Aparte de todo esto, Netflix también utiliza MetaFlow para crear proyectos de aprendizaje automático.

'Metaflow sobrepasa los límites de Python: aprovechamos el código Python optimizado y en paralelo para obtener datos a 10 Gbps, manejar cientos de millones de puntos de datos en la memoria y orquestar el cálculo en decenas de miles de núcleos de CPU' - Netflix

Big Data:

los El equipo es responsable de ejecutar ETL (extraer, transformar, cargar) y canalizaciones Adhoc. La mayor parte de esta orquestación está escrita en Python. Este equipo utiliza un programador que se ejecuta en Jupyter Notebooks con papermill para producir tipos de trabajo con plantillas, por ejemplo, , Pronto, etc.

Además de esto, el equipo también ha creado una plataforma impulsada por eventos que se basa completamente en Python. Han creado una serie de eventos y los han combinado en uno solo, lo que permite a Netflix filtrar, reaccionar y enrutar eventos. Pygenie también es parte de esta infraestructura que interactúa con Genie (servicio destacado de ejecución de trabajos).

manejo de excepciones en pl sql

Experimentación científica:

Esta es una plataforma creada por el equipo de experimentación científica para permitir Pruebas A / B junto con algunas otras experimentaciones. Aquí, los científicos e ingenieros pueden presentar nuevas innovaciones en datos, estadísticas y visualización.

El pitón que se implementa aquí es Repo de métricas que se basa en PyPika y permite escribir consultas parametrizadas reutilizables. Para el sector de las estadísticas, PyArrow y RPy2 se utilizan para calcular estadísticas en Python o R. Plotly ayuda en visualizaciones.

Codificación de video / Ingeniería de nube de medios:

Este equipo es responsable de las tareas de codificación y recodificación del catálogo de Netflix. Python se usa aproximadamente para 50 proyectos como VMAF (Fusión de evaluación de múltiples métodos de video) y MezzFS (Sistema de archivos Mezzanine), Soluciones de visión artificial (se ocupa de las imágenes) usando Arquero , etc.

Animación de Netflix y NVFX:

Python forma la base de todas las animaciones y efectos visuales (VFX) en Netflix. Todas las uniones Maya y Nuke se realizan en Python.

IS (seguridad de la información):

Netflix utiliza sistemas IS con tecnología Python para la corrección automática, automatización de la seguridad, clasificación de riesgos, etc. El proyecto Python de código abierto más activo de este equipo es Mono de seguridad . Netflix también usa BENDECIR (Servicio SSH efímero Lambda de Bastion) proteger SSH (Secure Shell) recursos. RepoKid se usa para otorgar YA los permisos y certificados TLS se asignan a través de Lemur. Ambas tareas se basan principalmente en Python.

Monitoreo y corrección automática:

Este equipo se conoce como el equipo de Insight Engineering. Construyen y ejecutan herramientaspara obtener información operativa, diagnósticos, corrección automática y alteración. Para la mayoría de sus servicios, este equipo hace uso de Python, por ejemplo, la biblioteca cliente Spectator Python. Esta biblioteca se utiliza para registrar series temporales dimensionales. Junto con estas bibliotecas, productos como Winston y Bolt también se basan en marcos de Python que son , Gunicorn y Flask-RestPlus.

Resumiendo todo, uno puede fácilmente afirmar que Python es la fuerza impulsora de Netflix. Con esto, llegamos al final de este blog sobre “¿Cómo usa Netflix Python?”. Espero que tenga claro todo lo que se ha hablado.

Para obtener un conocimiento profundo de Python junto con sus diversas aplicaciones, puede inscribirse en Live con soporte 24/7 y acceso de por vida.

Tienes una pregunta para nosotros? Menciónelo en la sección de comentarios de este blog 'Cómo Python usa Netflix' y nos comunicaremos con usted lo antes posible.