Was ist Starburst?
Starburst ist eine schnelle Abfrage-SQL-Engine, mit der riesige Datenmengen aus Data Warehouses, Data Lakes oder Data Mesh innerhalb kürzester Zeit verarbeitet und analysiert werden können.
Grundlage der Abfrage-SQL-Engine ist die Open Source-Software Trino, die vor dem Namenswechsel im Jahre 2021 unter dem Namen PrestoSQL bekannt war. Ursprünglich war Trino ein Projekt, das im Jahre 2012 von Eric Hwang, David Philipps, Martin Traverso und Dain Sundstorm gegründet wurde. Ziel war es, das Data Warehouse von Facebook durch eine bessere Technologie zu ersetzen. Zu den bekanntesten Firmen, die Trino einsetzen, gehören Slack, Netflix, LinkedIn und Comcast.
Die große Stärke von Starburst: Big-Data-Analysen
Starburst greift auf die ausgereifte und hocheffiziente Engine zurück, um eine maximale Geschwindigkeit bei der Datenabfrage und Analyse von unterschiedlichsten Datenquellen zu gewährleisten. Bei Big Data-Dateisystemen gehören dazu unter anderem das Hadoop Distributed File System (HDFS), das Azure Blob File System (ABFS), der AWS Simple Storage Service (S3) und der Google Cloud Storage. Neben diesen Datenquellen verarbeitet Trino auch Daten aus vielen relationalen Datenbanken.
Der Fokous von Starburst liegt darauf, ETL-Prozesse überflüssig zu machen. Die Notwendigkeit des Kopierens und Verschiebens von großen Datenmengen entfällt beim Einsatz von Starburst. Das ermöglicht problemlos Big Data-Analysen ohne Cubes, Extracts oder Aggregationstabellen. Somit geht die Engine über reine SQL-Abfragen hinaus.
Warum ist Starburst so schnell?
Als das Thema Big Data aufkam, verließ man sich auf verschiedene Kontrollknoten und Fehlertoleranzmethoden, um die riesigen Datenmengen zu verarbeiten. Es waren aber gerade die Fehlertoleranzmethoden, die den Nachteil hatten, dass sie sehr langsam bei der Datenspeicherung sind. Sie erhöhten zwar die Ausfallsicherheit, doch die Latenzzeit wuchs extrem an.
Die Entwickler von Trino verzichteten bewusst auf das System der Kontrollpunkte und die Fehlertoleranzmethode. Dadurch ist Starburst in der Lage, große Big Data-Mengen in kurzer Zeit bei gleichzeitig geringer Fehlerquote zu verarbeiten. Zudem lassen sich Abfragen direkt auf dem Quellsystem ausführen, auf dem bereits benutzerdefinierte Indizes für die Daten vorhanden sind. Dies sorgt für einen enormen Geschwindigkeitsvorteil gegenüber herkömmlichen SQL-Abfragen.
Aus welchen Elementen besteht Starburst?
Starburst basiert auf einer sogenannten MPP-Architektur (Massively Parallel Processing). Prozesse werden bei dieser Architektur von mehreren Prozesseinheiten parallel ausgeführt. Alle Prozesseinheiten laufen somit unabhängig voneinander. Dadurch sind MPP-Architekturen in der Lage, massive Datenmengen problemlos zu verarbeiten und Analysen wesentlich schneller zur Verfügung zu stellen.
Das zugrundeliegende Trino setzt sich aus zwei Bestandteilen zusammen: Koordinatoren und Worker Nodes. Die Koordinatoren sind dafür zuständig, die einzelnen Anweisungen zu parsen, Abfragen zu planen und die Worker-Knoten entsprechend ihren Aufgaben einzuteilen. Sie stellen also eine Art Steuerungszentrale dar. Clients verbinden sich mit dem Server, auf dem die Koordinatoren der jeweiligen Trino-Umgebung laufen. Erreicht eine Abfrage das System, baut der Koordinator zu dieser Abfrage ein entsprechendes Modell. So entstehen verschiedene Aufgaben, die der Koordinator an die Worker Nodes weiterleitet. Diese verarbeiten dann die Daten. Damit die Worker-Knoten mit den einzelnen Datenquellen kommunizieren können, werden sie durch Konnektoren verbunden.
Die Starburst-Highlights auf einen Blick
- Hohe Abfragegeschwindigkeit dank der schnellen Abfrage-Engine von Trino.
- Kein Kopieren oder Verschieben von Daten notwendig; die Abfrage der Daten erfolgt von einem zentralen Punkt aus.
- Große Auswahl von über 40 Enterprise-Konnektoren, mit denen verschiedenste Datenquellen verbunden werden können.
- Hohe Sicherheit dank ausgeklügeltem Rechte- und Rollenmanagement.
- Einfache Einrichtung und leichte Bedienbarkeit.
- Hoher Automatisierungsgrad und Überwachung der Daten.
Mit Trino setzt die Firma Starburst auf die beste SQL-Abfrage-Engine, die es im Bereich Big Data gibt. Damit ist die gleichzeitige Abfrage großer Datenmengen im Bereich Data Lake, Data Mesh und Data Warehouse in kurzer Zeit dank paralleler Verarbeitung kein Problem.
- Kurz erklärt