Datenbank: Facebook braucht schon Jahre für MySQL-Update

Das Update von MySQL 5.6 auf das aktuelle 8.0 laufe bei Facebook wegen vieler Probleme schon seit "einigen Jahren" und ist noch nicht fertig.

Artikel veröffentlicht am ,
Das MySQL-Update dauert bei Facebook Jahre.
Das MySQL-Update dauert bei Facebook Jahre. (Bild: Dado Ruvic/File Photo/Reuters)

Software-Updates von Abhängigkeiten können bei besonders großen Anwendungen und vor allem bei eigenen Anpassungen einige Zeit dauern. Das beschreibt nun auch der Betreiber von sozialen Netzwerken Facebook in seinem Engineering-Blog. Demnach habe das letzte große Update von MySQL auf Version 5.6 "länger als ein Jahr" gedauert. Darüber hinaus laufe ein Update auf Version 8.0 seit "einigen Jahren".

Stellenmarkt
  1. SAP HCM Senior Berater (m/w/x)
    über duerenhoff GmbH, Haßfurt
  2. Security Manager Analyse und Konzeption (w/m/d)
    EnBW Energie Baden-Württemberg AG, Karlsruhe
Detailsuche

Das Problem dabei für Facebook ist, dass die Version 5.6 nicht nur bereits acht Jahre alt ist, sondern seit Februar 2021 offiziell von Hersteller Oracle auch nicht mehr unterstützt wird. Hinzu kommt, dass Facebook das Update auf Version 5.7 ausgelassen hat. MySQL 8.0 ist erstmals vor mehr als drei Jahren erschienen, im Frühjahr 2018.

Dass das MySQL-Update bei Facebook so lange braucht, liegt wohl vor allem daran, dass das Unternehmen zahlreiche Anpassungen an dem Code vorgenommen hat. Für MySQL 5.6 seien das rund 1.700 Patches. Diese mussten alle auf Version 8.0 portiert werden. Zusätzlich dazu haben die Entwickler bei Facebook aber auch noch neue Funktionen für die alte Version geschrieben, da sie ja noch im Produktivbetrieb ist. Auch diese müssen letztlich portiert werden.

Darüber hinaus lief anderer Facebook-Code nicht mehr mit der neuen Version 8.0, so dass auch dieser Code angepasst und dafür ein Update-Pfad erarbeitet werden muss. Ein ähnliches Problem bezieht sich möglicherweise auf APIs, die mit MySQL 8.0 entfernt worden sind, aber in MySQL 5.6 noch vorhanden sind. Auch hier muss Facebook Lösungen finden. Hinzu kommt, dass Facebook mit Myrocks ein eigenes Storage-Backend für MySQL erstellt hat, das auf RocksDB basiert. Auch dieser Code musste auf die neue MySQL-Version vorbereitet werden.

Langer Upgrade-Pfad

Golem Akademie
  1. Linux-Shellprogrammierung
    2.-5. November 2021, online
  2. Einführung in die Programmierung mit Rust
    21.-24. September 2021, online
  3. IT-Sicherheit für Webentwickler
    2.-3. November 2021, online
Weitere IT-Trainings

Für das eigentliche Upgrade setzt Facebook auf Replikations-Cluster (Replika-Set), die alle die gleichen Daten vorhalten und aus Primär- und Sekundär-Instanzen bestehen. Ziel ist es, die Sekundär-Instanzen auf Version 8.0 zu migrieren, diese später als Primär-Instanz zum Lesen der Daten zu verwenden und letztlich die Instanzen mit der alten Version 5.6 zu löschen.

Auch wegen der bereits aufgezählten zahlreichen Probleme mit dem Code ist dies aber für Facebook alles andere als leicht umzusetzen. Denn um die Migration zu automatisieren, habe Facebook "neue Infrastruktur" erstellen müssen. Ebenso muss die Migration eines Clusters überprüft und validiert werden.

Inzwischen sei der größte Teil der Datenbank-Instanzen migriert und der Rest befinde sich bereits in der Migration. Und trotz all der Probleme zeige die Nutzung von MySQL 8.0 einige Vorteile für Anwendungen. Außerdem erweitere das Update, was Facebook mit MySQL machen könne.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed


Smolo 31. Jul 2021 / Themenstart

Das Rahmenwerk wird aber als "der Standard" verkauft und genau hier setzt das Problem...

desaboya 24. Jul 2021 / Themenstart

Wikipedia sagt zu Postgres Erscheinungsjahr 8. Juli 1996

486dx4-160 24. Jul 2021 / Themenstart

Wenn die Änderung/Erweiterung gut ist, sollte man sie immer Upstream geben. Dann erfährt...

mhstar 24. Jul 2021 / Themenstart

Wenn man Open Source Sachen (OSS) nimmt, herbe herumpatcht im Code, und es dann - wider...

DragonSGA 24. Jul 2021 / Themenstart

Von mir aus können sie es abschalten und sich Jahre Zeit lassen fürs Upgrade.

Kommentieren



Aktuell auf der Startseite von Golem.de
Venturi-Tunnel
Elektro-Motorrad mit Riesenloch auf der Teststrecke

White Motorcycle Concepts testet sein Elektromotorrad WMC250EV, bei dem der Fahrer auf einem riesigen Tunnel sitzt. Später soll es 400 km/h erreichen.

Venturi-Tunnel: Elektro-Motorrad mit Riesenloch auf der Teststrecke
Artikel
  1. Elektroauto: Cadillac Lyriq nach 19 Minuten weg
    Elektroauto
    Cadillac Lyriq nach 19 Minuten weg

    Einen der ersten Cadillac Lyriq zu reservieren, glich mehr einer Lotterie als einem Autokauf. In wenigen Minuten waren alle Luxus-Elektroautos vergriffen.

  2. Autos, Scooter und Fahrräder: Berlin reguliert Sharing-Mobilitätsangebote
    Autos, Scooter und Fahrräder
    Berlin reguliert Sharing-Mobilitätsangebote

    Die Nutzung des öffentlichen Raums durch Autos, Scooter und Fahrräder von Sharing-Unternehmen wird in Berlin reguliert.

  3. Abonnenten verunsichert: Apple hat Hörbücher aus Apple Music entfernt
    Abonnenten verunsichert
    Apple hat Hörbücher aus Apple Music entfernt

    Wer mit einem Musikstreamingabo Hörbücher hören will, muss von Apple Music zu Deezer, Spotify oder einem anderen Anbieter wechseln.

Du willst dich mit Golem.de beruflich verändern oder weiterbilden?
Zum Stellenmarkt
Zur Akademie
Zum Coaching
  • Schnäppchen, Rabatte und Top-Angebote
    Die besten Deals des Tages
    Daily Deals • Nur noch heute: MM-Club-Tage (u. a. SanDisk Ultra 3D 2 TB 142,15€) • Corsair Vengeance RGB PRO 16-GB-Kit DDR4-3200 71,39€ • Corsair RM750x 750 W 105,89€ • WD Elements Desktop 12 TB 211,65€ • Alternate (u. a. Creative SB Z SE 71,98€) • ASUS ROG Crosshair VIII Hero WiFi 269,99€ [Werbung]
    •  /