Maschinelles Lernen treibt die Disaster Recovery bei Facebook voran
Hyperscaler haben Milliarden von Benutzern, die kostenlos auf ihre Dienste zugreifen, aber das Lustige ist, dass diese Benutzer so tun, als würden sie dafür bezahlen und erwarten, dass diese Dienste immer verfügbar sind, ohne Ausreden.
Organisationen und Verbraucher verlassen sich auch auf Facebook, Google, Microsoft, Amazon, Alibaba, Baidu und Tencent, wenn es um Dienste geht, für die sie ebenfalls bezahlen, und sie erwarten vernünftigerweise, dass ihre Daten immer sofort zugänglich und sicher sind, die Dienste immer verfügbar sind, ihre Suchergebnisse erscheinen immer Millisekunden nach der Eingabe ihrer Suchanfragen und die Empfehlungen, die sie erhalten, werden für sie personalisiert. Diese Hyperscaler haben Netzwerke aus riesigen Rechenzentren rund um den Globus aufgebaut, um sicherzustellen, dass die Daten und Dienste nah an ihren Kunden sind und die Latenz kein Problem darstellt.
Vor diesem Hintergrund wird die Notfallwiederherstellung zu einem entscheidenden Teil des Geschäfts. Hyperscale-Unternehmen müssen sicherstellen, dass der Betrieb auch dann wie gewohnt weiterlaufen kann, wenn ein Rechenzentrum ausfällt. Sie nutzen mehrere Verfügbarkeitszonen innerhalb geografischer Regionen, um sicherzustellen, dass auf Daten, Dienste und Arbeitslasten über andere Rechenzentren zugegriffen werden kann, wenn eines ausfällt. Hyperscaler wie Microsoft – das Azure in 140 Ländern verfügbar macht – verfügen auch über andere Disaster-Recovery-Pläne, von der Rollenverwaltung über Fehlerdomänen hinweg bis hin zum automatischen Failover des Benutzerdatenverkehrs in eine andere Region, wenn die Region des Benutzers ausfällt, bis hin zur Ermöglichung der Georeplikation von Azure durch Benutzer Speicherung in sekundären Regionen.
Für Facebook mit seinen 2,1 Milliarden Nutzern und globalen Rechenzentren an Orten von Santa Clara (Kalifornien) und Ashburn (Virginia) bis hin zu Lulea (Schweden) und Odense (Dänemark) ist die Notfallwiederherstellung nicht nur für den Betrieb von entscheidender Bedeutung, sondern auch für die riesigen Social-Networking-Unternehmen arbeitet ständig weiter.
„Die Fähigkeit, den Verlust eines Teils des globalen Rechen-, Speicher- und Netzwerk-Fußabdrucks von Facebook nahtlos zu bewältigen, ist ein langjähriges Ziel der Facebook-Infrastruktur“, schrieb eine Gruppe von Facebook-Ingenieuren in einem aktuellen Artikel über die Infrastruktur des Unternehmens. „Intern führt unser Disaster-Recovery-Team regelmäßig Übungen durch, um die schwächsten Glieder in unserer globalen Infrastruktur und unseren Software-Stacks zu identifizieren und zu beheben. Zu den Störmaßnahmen gehört es, ein ganzes Rechenzentrum ohne Vorankündigung außer Betrieb zu nehmen, um zu bestätigen, dass der Verlust eines unserer globalen Rechenzentren führen zu minimalen Betriebsunterbrechungen.“
Die Sicherstellung einer hohen Verfügbarkeit – obwohl sie für den Betrieb immer von entscheidender Bedeutung ist – ist umso wichtiger geworden, da die Rolle von künstlicher Intelligenz (KI) und maschinellem Lernen im Betrieb des Unternehmens immer wichtiger wird. Facebook nutzt maschinelles Lernen in einer breiten Palette von Diensten, von Rankings im Newsfeed und bei Suchanfragen über die Anzeige von Anzeigen für bestimmte Benutzer bis hin zu Facer für die Gesichtserkennung sowie Sprachübersetzung, Spracherkennung und internen Vorgängen wie Sigma zur Anomalieerkennung. Das Unternehmen nutzt außerdem mehrere Modelle des maschinellen Lernens, darunter tiefe neuronale Netze, logistische Regression und Support-Vektor-Maschinen. Es gibt Deep-Learning-Frameworks wie Caffe2 und PyTorch sowie interne Machine-Learning-as-a-Service-Funktionen wie FBLearner Feature Store, FBLearner Flow und FBLearner Prediction.
Wie wir in „The Next Platform“ festgestellt haben, basiert ein Großteil der verteilten und skalierbaren Infrastruktur für maschinelles Lernen von Facebook auf selbst entwickelten Systemen, wie dem Big Basin GPU-Server, und stützt sich für das Training stark auf CPUs von Intel und GPUs von Nvidia und Schlussfolgerung. Laut den Autoren des Papiers wird die Disaster Recovery durch die zunehmende Nutzung maschineller Lernfähigkeiten im gesamten Facebook-Betrieb noch stärker in den Vordergrund gerückt.
„Sowohl für den Trainings- als auch für den Inferenzteil des maschinellen Lernens darf die Bedeutung der Katastrophenbereitschaft nicht unterschätzt werden“, schrieben sie. „Während die Bedeutung von Schlussfolgerungen für die Förderung mehrerer Schlüsselprojekte nicht überraschend ist, besteht eine möglicherweise überraschende Abhängigkeit von häufigem Training, bevor eine messbare Verschlechterung bei mehreren Schlüsselprodukten festgestellt wird.“
Um diese Bedeutung zu messen, führten Facebook-Ingenieure Tests durch, um zu ermitteln, was mit drei Diensten – Newsfeed, Anzeigen und Community-Integrität – passieren würde, wenn sie ihre Modelle eine Woche, einen Monat und sechs Monate lang nicht trainieren könnten.
Die erste offensichtliche Auswirkung war die Effizienz der Ingenieure, da der Fortschritt des maschinellen Lernens oft mit häufigen Experimentierzyklen verbunden ist“, schrieben sie. „Während viele Modelle auf CPUs trainiert werden können, ermöglicht das Training auf GPUs für bestimmte Anwendungsfälle oft eine deutliche Leistungsverbesserung gegenüber CPUs.“ Diese Beschleunigungen bieten schnellere Iterationszeiten und die Möglichkeit, mehr Ideen zu erkunden. Daher würde der Verlust von GPUs zu einem Nettoproduktivitätsverlust für diese Ingenieure führen. Darüber hinaus haben wir erhebliche Auswirkungen auf Facebook-Produkte festgestellt, insbesondere bei Produkten, die stark auf häufige Aktualisierungen ihrer Modelle angewiesen sind.“
Im Community Integrity-Dienst, der auf die Identifizierung und Entfernung anstößiger Inhalte abzielt, würde es eine Verschlechterung der Inhalte bedeuten, wenn Modelle nicht kontinuierlich trainiert werden könnten, schreiben die Autoren. Der Inhalt im Newsfeed würde veraltet sein, und die Auswirkungen auf Anzeigen – im Wesentlichen die Unfähigkeit, weiterhin relevante Anzeigen an die richtigen Benutzer zu schalten – wenn keine Modelle trainiert werden können, können in Stunden gemessen werden. Die Verwendung eines einen Tag alten Modells ist deutlich schlechter als die Verwendung eines eine Stunde alten Modells.
„Insgesamt hat unsere Untersuchung dazu beigetragen, die Bedeutung des maschinellen Lerntrainings für viele Facebook-Produkte und -Dienste zu unterstreichen“, schreiben die Autoren. „Die Katastrophenbereitschaft dieser großen und wachsenden Arbeitsbelastung sollte nicht unterschätzt werden.“
Der Aufstieg von KI und maschinellem Lernen in den Geschäftsabläufen von Facebook zwang das Unternehmen auch dazu, die Art und Weise zu ändern, wie es seine GPU-Ressourcen unterbringt. Facebook verfügte in fast jeder Rechenzentrumsregion über Rechenserver mit CPUs für Training und Inferenz, um einen Ausgleich zu schaffen, falls die größte Region aus irgendeinem Grund ausfallen sollte. Allerdings stellten die Autoren fest, dass die Notwendigkeit einer ähnlichen Redundanz für GPU-Ressourcen für das Training zunächst unterschätzt wurde. Computer-Vision-Anwendungen waren die ersten Workloads, die GPUs zum Training nutzten, und die zum Training der Modelle verwendeten Daten wurden weltweit repliziert.
„Als GPUs neu in der Facebook-Infrastruktur waren, schien ihre Einführung in einer einzigen Region eine kluge Option für die Verwaltbarkeit zu sein, bis die Designs ausgereift waren und wir internes Fachwissen über ihre Service- und Wartungsanforderungen aufbauen konnten“, schrieben sie. „Diese beiden Faktoren führten zu der Entscheidung, alle Produktions-GPUs physisch in einer Rechenzentrumsregion zu isolieren.“
Neue Anforderungen an die GPUs änderten diese Denkweise jedoch.
„Aufgrund der zunehmenden Akzeptanz von Deep Learning in mehreren Produkten, einschließlich Ranking, Empfehlung und Inhaltsverständnis, gewann die Lokalität zwischen der GPU-Berechnung und Big Data an Bedeutung“, schreiben die Autoren. „Und die Erschwerung dieses Bedarfs an Rechendaten-Colocation war ein strategischer Dreh- und Angelpunkt hin zu einem Mega-Region-Ansatz für die Speicherung. Der Begriff einer Mega-Region bedeutet, dass eine kleine Anzahl von Rechenzentrumsregionen den Großteil der Facebook-Daten beherbergen wird. Übrigens: Die Region, in der die gesamte GPU-Flotte untergebracht ist, befand sich nicht in der Speicher-Megaregion.
Vor diesem Hintergrund – und über die Bedeutung der Lokalisierung von Rechenressourcen zusammen mit den Daten hinaus – sagt Facebook: „Es wurde schnell wichtig, darüber nachzudenken, was passieren könnte, wenn wir jemals die Region, in der sich die GPUs befinden, vollständig verlieren würden. Und das Ergebnis dieser Überlegungen war beeindruckend.“ die Notwendigkeit, die physischen Standorte der GPUs, die für das ML-Training verwendet werden, zu diversifizieren.“
Mit Highlights, Analysen und Geschichten der Woche direkt von uns in Ihren Posteingang, ohne dass etwas dazwischen liegt. Jetzt abonnieren