MySQL-Tools gehen Open Source

Pinterest veröffentlicht MySQL-Management-Tools
1 Kommentar

Nachdem Pinterest bereits in der Vergangenheit seine Liebe zum Datenbank-Klassiker MySQL erklärte, hat das soziale Netzwerk jetzt zahlreiche MySQL-Tools Open Source veröffentlicht.

Nach Netflix und Facebook zieht jetzt auch Pinterest nach und gibt mit rund zwanzig Datenbankwerkzeugen den Großteil seiner MySQL-Tools Open Source frei. Rob Wultsch, Entwickler der MySQL-Management-Tools, erklärt via Blogpost, wie der Webdienst MySQL einsetzt und wie Entwickler die Werkzeuge in ihrer eigenen MySQL-Infrastruktur nutzen können.

MySQL und Pinterest

Pinterest nutzt MySQL, um wichtige Daten von Pins, Boards, Bilder-Metadaten sowie Zugangsdaten der Nutzer zu speichern. Vor kurzer Zeit hat Pinterest Redis aufgrund von Kernel-Optimierungen durch MySQL ersetzt, gleichzeitig dient die Datenbank als HBase-Backend für die Graph-Storage-Engine. Wichtig ist zudem, dass die Umgebung aus administrativer Sicht für alle MySQL-Use-Cases identisch ist.

Die Entwickler hinter Pinterest haben versucht, die verwendeten Strukturen einfach zu gestalten: Ein System mit mehreren Instanzen hatte sich als fehleranfällig herausgestellt, weswegen die Konfigurationen mittlerweile aus einem Master mit einem oder zwei Slaves besteht. Die Verbindung zwischen den Administrationswerkzeugen und den MySQL-Applikationen ist der ZooKeeper: Er versorgt Clients mit Hostnames, Benutzernamen und Passwörtern der Datenbank.

Operational Buddhism

Pinterest vermeidet des Weiteren Kernel-Upgrades und Versionsupdates, die einen Neustart der Datenbank erfordern. Solche Änderungen werden vielmehr durch einen Server-Austausch ausgeführt:

MySQL servers at Pinterest are launched, live and die with only the rarest of configuration changes. […] We call this mindset “Operational Buddhism,” meaning we don’t get attached to our servers, because they might be gone tomorrow.

So erzeugt eines der Werkzeuge einen Ersatzserver auf Basis einer vorhandenen Konfiguration. Muss der Master-Server ausgetauscht werden, regelt ein anderes Skript die Beförderung des primären Slaves zum neuen Master. Weitere Tools steuern zum Beispiel Backup-Restore-Prozesse oder überprüfen die korrekte Zuordnung und Replikation.

Kein Patentrezept

Da die Tools straff in den Pinterest-Service-Discovery-Mechanismus integriert sind, bedarf es einer moderaten Anpassung des Codes. Zudem kommen sie mit einigen Beschränkungen daher, wie beispielsweise der fehlenden Unterstützung für mehr als zwei Slaves. Das Unternehmen hofft aber, dass die Werkzeuge anderen Entwicklern nützlich sind, die selbst eine Automatisierung für ihre MySQL-Infrastruktur erstellen wollen. Am Rande sei noch erwähnt, dass Pinterest seine MySQL-Umgebung mit Hunderten von Terabyte mit „less than two dedicated engineers“ instand hält.

Insgesamt hat Pinterest rund 20 Tools als Python-Skripte auf GitHub veröffentlicht. Zu allen Werkzeugen gibt es eine kurze Anwendungsbeschreibung. Admins, die sich für detaillierte Informationen zu den Setups interessieren, finden im Pinterest-Blog zahlreiche hilfreiche Artikel.

webinale – the holistic web conference

Diversity matters – Onlinemarketing 2020

mit Astrid Kramer (Astrid Kramer Consulting)

Das Recht auf Privatsphäre – eine Chance für UX

mit Lutz Schmitt (Lutz Schmitt Design & Consulting)

The Revenge of Structured Data

mit Stephan Cifka (Performics Germany GmbH)

IT Security Summit 2020

Zero Trust – why are we having this conversation?

mit Victoria Almazova (Microsoft)

Digitaler Ersthelfer

mit Martin Wundram (DigiTrace GmbH)

 

Aufmacherbild: Pinterest logotype printed on paper and pinned on cork bulletin board von Shutterstock / Urheberrecht: rvlsoft

Unsere Redaktion empfiehlt:

Relevante Beiträge

Hinterlasse einen Kommentar

1 Kommentar auf "Pinterest veröffentlicht MySQL-Management-Tools"

avatar
400
  Subscribe  
Benachrichtige mich zu:
trackback

[…] Pinterest gibt mit rund zwanzig Datenbankwerkzeugen den Großteil seiner MySQL-Tools Open Source frei.  […]

X
- Gib Deinen Standort ein -
- or -