Phase 1: Rettung der Netflix-Protokolle
2015 hatte Netflix bereits 60 Millionen Abonnenten und expandierte aggressiv auf internationaler Ebene. Wir wussten alle, dass der Schlüssel zur Aufrechterhaltung des rasanten Abonnentenwachstums in der schnellen Skalierung der Plattformnutzung lag.
Randnotiz: Wer mit der Thematik nicht so vertraut ist, sollte wissen, dass das Plattformteam für die Nutzung die grundlegenden Infrastrukturkomponenten zentral verwaltet, damit sich das Produktteam auf die Geschäftslogik konzentrieren kann. Unser Team musste herausfinden, wie sich die Protokollierungsverfahren bei Netflix skalieren ließen. Zu dem Zeitpunkt gab es bei Netflix etwa 500 Mikroservices, die jeden Tag mehr als 10 Petabyte Daten in der Umgebung generierten.
Die Erfassung dieser Daten dient bei Netflix in erster Linie zwei Zwecken:
- dem Erfassen geschäftlicher Analyseinformationen (beispielsweise Nutzerbindung, durchschnittliche Sitzungslänge, Trends).
- de, Erfassen operativer Informationen (beispielsweise Messung von Streamingwiedergaben pro Sekunde, um den Zustand der Netflix-Systeme schnell und einfach zu überprüfen), damit Entwickler Alarm schlagen oder Probleme entschärfen können.
Nun kann man sich fragen, warum die Protokolle überhaupt vom Rand des Netzwerks in das Data Warehouse verschoben werden müssen. Aufgrund des enormen Umfangs war es nicht machbar, Analysen der Online-Transaktionsdatenbanken bei Bedarf im richtigen Maßstab umzusetzen.
Der Grund dafür ist, dass OLTP (Online Transactional Processing) und OLAP (Online Analytical Processing) auf verschiedenen Annahmen basieren. OLTP wurde für zeilenorientierte und OLAP für spaltenorientierte Zugriffsmuster entwickelt. Intern werden jeweils unterschiedliche Datenstrukturen für Optimierungen eingesetzt.
Angenommen, wir möchten wissen, wie die durchschnittliche Sitzungslänge bei Hunderten Millionen Netflix-Nutzern aussieht. Wenn wir diese analytische Abfrage in einem zeilenorientierten OLTP-System auf Abruf stellen, erhalten wir komplette Tabellenabfragen mit der Granularität auf Zeilenebene und sperren dadurch eventuell die Datenbank. So sind die Anwendungen nicht mehr erreichbar, was sich negativ auf die Benutzerzufriedenheit auswirkt.
Diese Art der Analyse oder Meldung der Auslastung funktioniert deutlich besser in einem OLAP-System. Deshalb müssen die Protokolle zuverlässig und mit niedriger Latenz verschoben werden.
Bis 2015 hat sich der Umfang der Protokolldaten auf 500 Milliarden Ereignisse pro Tag (1 Petabyte Datenaufnahme) erhöht, während er 2011 noch bei 45 Millionen Ereignissen pro Tag lag. Die bestehende Infrastruktur für die Protokollierung (eine einfache Plattform für Batch-Pipelines, die auf Chukwa, Hadoop und Hive aufbaut) funktionierte bei den wöchentlich steigenden Abonnentenzahlen immer weniger.
Schätzungsweise hatten wir etwa sechs Monate Zeit, eine Lösung zu entwickeln, bei der das Streaming höchste Priorität hatte. Die nachstehenden Diagramme zeigen die Entwicklung von der fehleranfälligen Batch-Architektur hin zur neuen streamingbasierten Architektur.
Wir beschlossen, diese fehleranfällige Infrastruktur durch Keystone zu ersetzen.
Außerdem lässt sich vermutlich die Frage stellen, warum überhaupt eine Architektur in Betracht kommt, bei der Streaming die höchste Priorität hat. Zu dem Zeitpunkt überwog der Mehrwert einer gut aufgestellten Streamingarchitektur die potenziellen Risiken. Netflix ist ein datengesteuertes Unternehmen. Somit zeigt sich die Bedeutung einer Streamingarchitektur sofort in folgenden Punkten:
- Kürzere Feedback-Schleife zwischen Entwickler und Betrieb: Entwickler basieren operative Entscheidungen klar auf Protokollen. Der Zugriff auf neuere, bedarfsgenerierte Protokolle bietet Entwicklern die Möglichkeit, Probleme früher zu erkennen, und sorgt so für höhere Produktivität.
- Bessere Produkterfahrungen: Viele Produktfunktionen, beispielsweise personalisierte Empfehlungen und die Suchfunktion, profitieren von neueren Daten und verbessern so die Benutzererfahrungen. Das führt zu einer höheren Kundenbindung und -treue.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
- ohne Werbung
- mit ausgeschaltetem Javascript
- mit RSS-Volltext-Feed
| Daten: Die vier Innovationsphasen von Netflix | Herausforderungen in Phase 1 |










Ich hatte den Artikel in meinem RSS feed gespeichert, weil ich die Thematik sehr...
Ich finde den Artikel auch furchtbar "sperrig". Und ja, ist mir auch schon desöfteren...
kwt.