Python és Netflix: Mi történik, ha filmet streamelsz?

Tudja meg, mi az a Netflix, és hogy ez a streaming óriás hogyan használja a Pythont a különböző doménjaiban, például az Operations, Machine Learning, Informtion Security stb.

Minden filmkedvelő egyablakos célja természetesen a Netflix. De mi lenne, ha kedvenc filmjét nézné, és ez hébe-hóba folyamatosan pufferol? Csak leállítaná az alkalmazást, és másik lehetőséget választana. De hogyan kezeli gyorsan a felhasználók millióinak forgalmát? Köszönet . Ebben a cikkben vizsgáljuk meg, hogyan használja a Netflix a Pythont.



Kezdjük azzal, hogy gyorsan áttekintjük a cikket kitöltő témákat:

Kezdjük tehát. :)

Bevezetés a Netflix-be

Netflix logó - Hogyan használja a Netflix a Python-Edureka alkalmazástA Netflix egy amerikai vállalat, amely Video On Demand (VOD) szolgáltatásokat nyújt. A kaliforniai Los Gatosban található Netflixnek körülbelül 148 millió előfizetője van az egész világon, és ez a szám azonban minden nap növekszik. Körülbelül két évtized alatt a Netflix a világ legnagyobb TV-sorozatainak és filmjeinek „klánkirályaként” jelent meg. Amerika leggyorsabban növekvő márkája és 20,5 milliárd dolláros bevétel 2019-ben elegendő ahhoz, hogy „szemet gyönyörködtető” legyen, és ezáltal mind érdekes technológiai szférájában.



Ugyanezen érdeklődési terület alapján a Netflix feltárta, hogyan használja a legfelkapottabb nyelvet, Piton , infrastruktúrája szempontjából.

Tehát most térjünk át arra, hogy a Netflix valójában hogyan használja a Pythont?



Hogyan használja a Netflix a Pythont?

'A Pythont a teljes tartalom életciklusán keresztül használjuk, a finanszírozandó tartalom eldöntésétől kezdve a végső videót kiszolgáló CDN működtetéséig 148 millió tagig' - mérnökök a Netflixnél

Kezdve fAz adminisztratív területeken a megbízhatóság és a Adattudomány nak nek stb., a Netflix a Python-t használja üzleti tevékenységének szinte minden területén.

Most nézzük meg mélyebben, hogyan a Netflix különféle domainjein használják:

Nyissa meg a Kapcsolatot:

A CDN (Content Delivery Network), amelyet a Netflix használ, az Open Connect. A nyitott kapcsolat alapvetően képbe kerül, amikor a „lejátszás” gombra kattint. Ez a CDN gondoskodik a végfelhasználóhoz eljuttatott összes tartalomról.

A nyílt csatlakozáshoz számos más szoftverrendszerre van szükség a tervezéséhez, felépítéséhez és üzemeltetéséhez, amelyek viszont Pythonban vannak megírva. Nem csak ez, a CDN alapjául szolgáló hálózati eszközök Python-alkalmazások, mivel a Python kiemelkedő szerepet játszik a hálózati problémák megoldásában.

Igénymérnöki csapat:

A Demand Engineering csapata felelős a Netflix felhő regionális hibaelhárításainak, a forgalom-adminisztrációnak, a kapacitásüzemeltetési menedzsmentnek (annak a határnak a figyelése, amelyig a tartalom használhatóvá tehető) és a flotta hatékonyságáért. A csapat által használt Python elemei a következők:

NumPy és SciPy:

és SciPy a tudományos számításhoz használt könyvtárak. A Netflix ezeket a Python könyvtárakat használja numerikus elemzésre, ezáltal lehetővé téve a regionális feladatátvételek kezelését.

Boto3:

A Boto3 a szoftverfejlesztő készlet (SDK) a Python számára. Ez segíti a Python fejlesztőit a Python integrálásában az AWS-be, ezáltal lehetővé téve az infrastruktúra fejlesztését.

RQ (Redis Queue):

Ez egy Python könyvtár, amely segít nyomon követni a sorban lévő feladatokat, és lehetővé teszi azok végrehajtását, ezáltal lehetővé téve az aszinkron munkaterhelések kezelését.

Lombik:

Végül a Netflix a Flask (Python Web Development library) API-kat használja az összes előző szegmens összekapcsolására.

A Netflix használja amely egy nyílt forráskódú webalkalmazás, amelyet a Python fejlesztésére használnak nteract (a Jupyter kiterjesztése) nagy léptékben. A Jupyterről ismert, hogy népszerű az adatok elemzésében. Nagyon jól szolgálja az operatív adatok elemzését és vizualizálását, ami viszont segít a kapacitás regresszióinak detektálásában.

Gépi tanulási infrastruktúra:

a személyre szabási algoritmusok létrehozásától a felhasználási esetek kitalálásáig terjed. A személyre szabási algoritmusok segítenek a Netflix szabványoknak megfelelő gépi tanulási modellek betanításában. Személyre szabott ajánlásokat, napi körvonalazást, generációk címkézését stb.

A tanuláshoz szükséges könyvtárak Mély neurális hálózatok vannak TensorFlow , Kemény , és Pytorch mivel XGBoost és LightGBM a Gradient Boosted Decision Fákhoz.Emellett kifejlesztettek jó néhány magasabb szintű könyvtárat, amelyek segítenek az olyan munkaterületekkel való összekapcsolásban, mint a tények naplózása, a funkciók kibontása, a publikálás stb. Mindezek mellett a Netflix is ​​használ MetaFlow gépi tanulási projektek létrehozására.

'A metaflow kihúzza a Python határait: A jól párhuzamos és optimalizált Python-kódot kihasználjuk az adatok 10Gbps sebességgel történő lekérésére, a memória százmillió adatpontjának kezelésére és a számítások több tízezer CPU-magra történő irányítására' - Netflix

Nagy adat:

Az a csapat felelős az ETL (kivonat, átalakítás, betöltés) és az Adhoc csővezetékek végrehajtásáért. Ennek a hangszerelésnek a nagy része Pythonban íródott. Ez a csapat egy olyan ütemezőt használ, amely a Jupyter Notebookokon fut, papírgyártóval, sablonokkal, például , Hamarosan stb.

Emellett a csapat egy eseményvezérelt platformot is létrehozott, amely teljesen Pythonra épül. Számos eseményt hoztak létre, és egyetlen eseményre egyesítették, lehetővé téve a Netflix számára az események szűrését, reagálását és irányítását. Pygenie szintén ennek az infrastruktúrának a része, amely kapcsolódik a Genie-hez (kiemelt feladat-végrehajtási szolgáltatás).

Tudományos kísérletezés:

Ezt a platformot a tudományos kísérleti csoport hozta létre A / B tesztelés néhány más kísérlettel együtt. Itt tudósok és mérnökök mutathatnak be új újdonságokat az adatok, a statisztikák és a vizualizáció terén.

A Python hogy itt valósul meg az Metrics Repo amelynek alapja a PyPika és lehetővé teszi újrafelhasználható paraméterezett lekérdezések írását. A statisztikai ágazat PyArrow és RPy2 a statisztikák kiszámításához Pythonban vagy R-ben használják. Teljességgel segít a vizualizációkban.

Videokódolás / Media Cloud Engineering:

Ez a csapat felelős a Netflix katalógus feladatok kódolásáért és újrakódolásáért. A Python hozzávetőlegesen 50 projekthez használható, mint pl VMAF (Video Multi-Method Assessment Fusion) és MezzFS (Mezzanine File System), Computer Vision Solutions (képekkel foglalkozik) felhasználásával Íjász stb.

egyesítés rendezési program Java-ban

Netflix Animation és NVFX:

A Python képezi az összes animáció és vizuális effektus (VFX) alapját a Netflixnél. A Maya és a Nuke összes szakszervezet a Pythonon készült.

IS (információbiztonság):

A Netflix Python-alapú IS-rendszereket használ az automatikus helyreállításhoz, a biztonsági automatizáláshoz, a kockázatok osztályozásához stb. A csapat legaktívabb nyílt forráskódú Python-projektje: Biztonsági majom . A Netflix is ​​használja ÁLDJA (A Bastion Lambda efemer SSH szolgáltatása) megvédeni SSH (Secure Shell) erőforrások. RepoKid adományozására használják MÁR az engedélyeket és a TLS tanúsítványokat a Lemuron keresztül osztják ki. Mindkét feladat főként a Pythonra támaszkodik.

Monitorozás és automatikus helyreállítás:

Ez a csapat Insight Engineering csapat néven ismert. Eszközöket építenek és hajtanak végreaz operatív betekintésre, a diagnosztikára, az automatikus helyreállításra és az átalakításra. A legtöbb szolgáltatásához ez a csapat a Python-ot használja, például a Spectator Python kliens könyvtárat. Ezt a könyvtárat dimenziós idősorok rögzítésére használják. Ezekkel a könyvtárakkal együtt olyan termékek, mint a Winston és a Bolt, szintén a Python keretrendszerekre épülnek , A Gunicorn és a Flask-RestPlus.

Összefoglalva, könnyen azt állíthatjuk, hogy a Python a Netflix mozgatórugója. Ezzel elérkeztünk a blog „Hogyan használja a Netflix a Pythont?” Végéhez. Remélem tisztázza mindazt, amit megbeszéltek.

Ha mélyreható ismereteket szeretne szerezni a Pythonról és a különböző alkalmazásokról, regisztrálhat élőben 24/7 támogatással és élethosszig tartó hozzáféréssel.

Van egy kérdésünk? Kérjük, említse meg ennek a „Hogyan használja a Python a Netflix-t” blog megjegyzéseinek szakaszában, és amint lehetséges, kapcsolatba lépünk Önnel.