jak Netflix wykorzystuje duże zbiory danych
biorąc pod uwagę, jak długo Netflix działa w branży streamingu, zebrał mnóstwo danych o swoich widzach, takich jak ich wiek, płeć, lokalizacja, ich smak mediów, aby wymienić tylko kilka.
dzięki gromadzeniu informacji na temat każdej interakcji z klientem, Netflix może zanurzyć się w umysłach widzów i dowiedzieć się, co chcieliby obejrzeć jeszcze przed zakończeniem programu lub filmu.
mamy dane, które sugerują, że istnieje różne zachowanie oglądania w zależności od dnia tygodnia, pory dnia, urządzenia, a czasami nawet lokalizacji.
– Reed Hastings
Netflix ma ogromną bazę użytkowników ponad 140 milionów subskrybentów. Oto niektóre wskaźniki, które śledzi Netflix, aby nadać każdemu indywidualny smak—
- Na co dzień oglądasz zawartość
- W jakim czasie oglądania treści
- Urządzenie, na którym widoczne treści
- Jak charakter treści
- Wyszukaj na platformie
- Części treści, które były oglądane ponowne
- czy zawartość jest zawieszony, перемотан temu lub перемотан do przodu
- Dane o lokalizacji użytkownika
- Kiedy jesteś zostaw treści
- Z ocenami użytkowników
- Zachowanie podczas wyświetlania i przewijania
Więcej czas firma Netflix wdrożyła kilka algorytmów i mechanizmów, które wykorzystują te dane i generują krytyczne informacje, które pomagają ukierunkować firmę we właściwym kierunku. Niektóre z tych narzędzi i funkcji to:
● silnik rekomendacji w czasie zbliżonym do rzeczywistego
dzięki morzu użytkowników każdy użytkownik generuje setki ocen dziennie w oparciu o to, co ogląda, wyszukuje i dodaje do swojej listy obserwowanych, dane te ostatecznie stają się częścią Big Data. Netflix przechowuje wszystkie te informacje i korzystając z kluczowych algorytmów uczenia maszynowego, buduje wzorzec wskazujący na gust widza. Ten wzór może nigdy nie pasować do innego widza, ponieważ każdy gust jest wyjątkowy.
na podstawie ocen Netflix kategoryzuje swoje media i sugeruje widzowi, co system rekomendacji sądzi, że może chcieć oglądać dalej.
Netflix będzie wiedział wszystko. Netflix będzie wiedział, kiedy dana osoba przestanie go oglądać. Mają wszystkie swoje algorytmy i będą wiedzieć, że ta osoba oglądała pięć minut programu, a następnie zatrzymała się. Mogą stwierdzić po zachowaniu i porze dnia, że do niego wrócą, w oparciu o ich historię.
– Mitchell Hurwitz
● grafika & wybór zdjęć
zastanawiałeś się kiedyś, dlaczego Netflix pokazuje wiele dzieł sztuki w jednym programie telewizyjnym lub filmie?
narzędzie to nazywa się AVA, który jest zasadniczo algorytmem, który wybiera, jakie dzieła sztuki i obrazy pokazać komu. Skrót od estetycznej analizy wizualnej, AVA przegląda każdy dostępny film i identyfikuje klatki, które najlepiej nadają się do wykorzystania jako dzieła sztuki.
AVA bierze pod uwagę wiele wskaźników przed sfinalizowaniem zdjęć, takich jak mimika aktorów, oświetlenie sceny, obszary zainteresowania, pozycjonowanie obiektów na ekranie. Nawet kategoryzuje i sortuje dzieła sztuki, aby pokazać użytkownikom podzielonym na kilka grup smakowych.
Netflix to coś, co Oglądam.
– Famke Janssen
● Planowanie produkcji
dane odgrywają integralną część, gdy twórcy wpadają na pomysł nowego serialu lub filmu. Wiele burzy mózgów ma miejsce, zanim cokolwiek trafi na papier, i tam pojawiają się dane.
dzięki wcześniejszemu doświadczeniu w tworzeniu nowych i oryginalnych treści oraz mnóstwu danych o tym, jak widzowie postrzegali poprzednie treści, Big Data pomaga znaleźć możliwe rozwiązania wielu wyzwań stojących przed fazą planowania.
te wyzwania mogą obejmować określenie lokalizacji sesji, godziny i dnia sesji i wiele innych. Nawet dzięki prostym modelom przewidywania Netflix może zaoszczędzić znaczną ilość wysiłku włożonego w planowanie, dodatkowo zmniejszając wydatki.
Netflix zleca oryginalne treści, ponieważ wie, czego ludzie chcą, zanim to zrobią.
● Metaflow
Netflix ma otwartą platformę Metaflow, natywną w chmurze, skoncentrowaną na człowieku, mającą na celu zwiększenie produktywności analityków danych.
ideą metaflow było przeniesienie zainteresowania naukowców danych z martwienia się o infrastrukturę modeli na rozwiązywanie problemów. Metaflow pozwolił im eksperymentować ze swoimi pomysłami, oferując zestaw dopracowanych funkcji, które niemal sprawiają, że Metaflow czuje się jak Framework typu plug-and-play. Kilka godnych uwagi cech Metaflow to:
● możliwość pracy na rozproszonej platformie obliczeniowej
● możliwość migawki kodu i danych w celu wersjonowania i eksperymentowania
● szybki i wydajny klient S3
● Obsługa większości frameworków uczenia maszynowego
● Polinote
opracowany i open-source przez Netflix, Polinote jest poliglotą notebook z obsługą Scali i różnych innych funkcji. Polynote umożliwia płynną integrację platformy uczenia maszynowego opartej na JVM z Pythonem dla analityków danych i badaczy uczenia maszynowego. Kilka najważniejszych cech tego notebooka to:
● zapewnia wgląd w stan jądra i zadania podczas wykonywania
● oferuje uproszczone zarządzanie zależnościami i konfiguracją
● zapewnia funkcje podobne do IDE, takie jak automatyczne uzupełnianie, podświetlanie błędów, odtwarzalność, edycja, ulepszenia, widoczność, wizualizacja danych i wiele innych.
● Metacat
ogromna pula danych, na których działa Netflix, jest rozproszona na wielu platformach, takich jak Amazon S3, Druid, Redshift i MySql. Aby zachować bezproblemową interoperacyjność między tymi magazynami danych, firma Netflix potrzebowała usługi.
ta potrzeba prostoty zrodziła Metacat, którego jedynym celem było zapewnienie scentralizowanego dostępu do metadanych dla wszystkich magazynów danych. Firma Netflix stworzyła Metaflow z myślą o realizacji następujących podstawowych celów:
● ujednolicenie i zapewnienie scentralizowanych widoków systemów metadanych
● oferowanie pojedynczego interfejsu API dla metadanych zbiorów danych dla platform
● zapewnienie rozwiązania do przechowywania metadanych dla firm i użytkowników zbiorów danych
● Druid
„Apache Druid to wydajna baza danych analitycznych w czasie rzeczywistym. Jest przeznaczony do przepływów pracy, w których szybkie zapytania i spożywanie naprawdę mają znaczenie. Druid wyróżnia się natychmiastową widocznością danych, zapytaniami ad-hoc, analizą operacyjną i obsługą wysokiej współbieżności.”
— druid.io
Netflix korzysta z Apache Druid, aby zapewnić użytkownikom wysoką jakość obsługi za każdym razem. Zapewnienie najwyższej jakości obsługi za każdym razem nie jest prostym zadaniem. Wymaga stałej analizy kilku zdarzeń, gromadzenia niezbędnych danych i ich analizy. Dane te mogą być dowolne, od informacji o odtwarzaniu, przez Informacje o urządzeniu,po wydajność platformy pomiarowej i kilka innych. Wszystkie te wskaźniki zdarzeń sprawiają, że surowe dane są skomplikowane i w tym właśnie momencie pojawia się Druid.
zadaniem druida jest dostarczanie analiz w czasie rzeczywistym w bazach danych, w których zapytania są wykonywane regularnie i w niepewnych okresach czasu. Jest wysoce skalowalny i oferuje doskonałą wydajność dla każdego obciążenia.
● użycie Pythona
Netflix uwielbia Pythona ze względu na to, jak potężny jest i jak doskonały staje się w połączeniu z bibliotekami, nie wspominając o tym, jak płynnie integruje się z innymi platformami. Netflix używa Pythona do zarządzania wieloma krytycznymi aspektami, takimi jak:
● Aplikacje zarządzające infrastrukturą CDN
● Analiza danych operacyjnych, dystrybucji ruchu i wydajności operacyjnej
● Prototypowanie narzędzi wizualizacji
● zdobywanie wglądu za pomocą narzędzi statystycznych, eksploracji danych i czyszczenia
● utrzymanie bezpieczeństwa informacji
● zarządzanie kilkoma podstawowymi zadaniami za pomocą notebooków Jupyter
● do eksperymentów z wykorzystaniem testów A/B