Freely Moving Between the OLTP and OLAP Worlds: Hermes - A High-Performance OLAP Accelerator for MySQL

|—––|—––| | Paper | Freely Moving Between the OLTP and OLAP Worlds: Hermes - A High-Performance OLAP Accelerator for MySQL (PDF) | | Konferenz | VLDB 2025 |

Zusammenfassung

Nutzerinnen und Nutzer möchten oft Analytik auf ihren OLTP-Datenbanken ausführen, um kostspielige und umständliche Extract-Transform-Load-Prozesse (ETL) zu vermeiden. Typischerweise laufen analytische Anfragen auf OLTP-DBMS eher langsam, weshalb Lösungen für Hybrid Transaction/Analytic Processing (HTAP) beliebt sind. Ein möglicher Ansatz ist, dem bestehenden OLTP-DBMS einen Beschleuniger (für Analytik) hinzuzufügen.

Typischerweise konzentrieren sich analytische Systeme, besonders in der Cloud, auf extrem große Datensätze („Exa-Scale“) und verteilte Anfrageausführung (über mehrere Maschinen). Wir argumentieren, dass viele Kundinnen und Kunden keine ausreichend großen Datensätze haben, um teure Multi-Node-DBMS zu rechtfertigen. Im Vergleich zu Single-Node-Systemen bringen solche Multi-Node-Systeme typischerweise einen grundlegenden Leistungsabfall mit (können aber skalieren), weil sie Datenübertragungen über das Netz einführen müssen.

Deshalb schlagen wir Hermes als cloud-nativen, aber Single-Node-Beschleuniger für MySQL vor. Hermes beschleunigt analytische Anfragen oft um 2–3 Größenordnungen und übertrifft konkurrierende Systeme um bis zu das 5-Fache (einschließlich Multi-Node-Systemen). Wir erreichen das, indem wir Hermes vergleichsweise schlank halten und uns auf die nötigen Kernfunktionen konzentrieren. Im Beitrag beschreiben wir Architektur, Datenspeicherung und Integration von Hermes mit MySQL sowie die Anfrage-Engine. Wichtig: Hermes bietet den höchsten Grad an Datenaktualität. Sind Daten noch nicht repliziert, wartet Hermes. Die Wartezeiten sind jedoch praktisch vernachlässigbar (einstellige gegenüber dreistelligen Millisekunden).

Wir werten Hermes auf TPC-H sowie in Mikrobenchmarks aus. Neben den genannten Verbesserungen erreichten unsere Replikationsmechanismen hohe, stabile Durchsatzraten von bis zu 60.000 Änderungen pro Sekunde und damit geringe Wartezeiten.

Zusammengefasst ist Hermes ein schlanker Beschleuniger für MySQL. Sein Single-Node-Entwurf hält die Kosten für Nutzerinnen und Nutzer niedrig und die Leistung hoch. Zusätzlich garantiert Hermes Datenaktualität und Kompatibilität mit MySQL (Hermes und MySQL liefern dasselbe Ergebnis).